00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef DSCONTROLMANAGER_H_
00026 #define DSCONTROLMANAGER_H_
00027
00028 #include <string>
00029 #include <list>
00030
00031 #include "ControlManager.h"
00032 #include "DS_Control.h"
00033 #include "avcap-export.h"
00034
00035 namespace avcap
00036 {
00037 class DS_DeviceDescriptor;
00038
00040
00056 class AVCAP_Export DS_ControlManager : public ControlManager
00057 {
00058 private:
00059 DS_DeviceDescriptor* mDSDeviceDescriptor;
00060
00061 public:
00062 DS_ControlManager(DS_DeviceDescriptor *dd);
00063
00064 virtual ~DS_ControlManager();
00065
00066 Control* getControl(const std::string& name);
00067
00068 Control* getControl(int id);
00069
00070 const ListType& getControlList()
00071 { return (const ListType&) mControls; }
00072
00073 void query();
00074
00075 private:
00076 void query(int start_id, int end_id);
00077 };
00078 }
00079
00080 #endif