32 lines
1.2 KiB
C++
32 lines
1.2 KiB
C++
#ifndef _PROTO_DEVICEENUMERATOR_HPP_
|
|
#define _PROTO_DEVICEENUMERATOR_HPP_
|
|
#ifndef _COMMON_BLOCK_HPP_
|
|
#include <common/block.hpp>
|
|
#endif
|
|
#ifndef _COMMON_STRING_HPP_
|
|
#include <common/string.hpp>
|
|
#endif
|
|
#ifndef _COMMON_DXSDK_HPP_
|
|
#include <common/dxsdk.hpp>
|
|
#endif
|
|
#ifndef _PROTO_DEVICEDESCRIPTOR_HPP_
|
|
#include <proto/DeviceDescriptor.hpp>
|
|
#endif
|
|
|
|
class DeviceEnumerator
|
|
{
|
|
public:
|
|
typedef enum DevCat{AudioCaptureSources,AudioCompressors,AudioRenderers,DeviceControlFilters,
|
|
DirectShowFilters,ExternalRenderers,MidiRenderers,VideoCaptureSources,VideoCompressors,
|
|
VideoEffects1,VideoEffects2,WDMStreamingDecompressionDevices,WDMStreamingCaptureDevices,
|
|
WDMStreamingCommunicationTransforms,WDMStreamingCrossbarDevices,WDMStreamingDataTransforms,
|
|
WDMStreamingInterfaceTransforms,WDMStreamingMixerDevices,WDMRenderingDevices,
|
|
WDMStreamingSystemAudioDevices,WDMStreamingTeeSplitterDevices,WDMStreamingTVAudioDevices,
|
|
WDMStreamingTVTunerDevices,WDMStreamingVBICodes,ActiveMovieFilterCategories};
|
|
static bool enumerateCategory(DeviceDescriptors &descriptors,DevCat devCat);
|
|
private:
|
|
static bool enumerateCategory(DeviceDescriptors &descriptors,GUID classID);
|
|
};
|
|
#endif
|
|
|