Files
Work/proto/source/DeviceEnumerator.hpp
2024-08-07 09:16:27 -04:00

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