38 #ifndef DOXYGEN_SHOULD_SKIP_THIS 41 #include <visp3/core/vpConfig.h> 42 #if ( defined(VISP_HAVE_DIRECTSHOW) ) 44 #include <visp3/sensor/vpDirectShowDevice.h> 52 bool vpDirectShowDevice::init(
const CComPtr<IMoniker>& pMoniker)
57 CComPtr<IPropertyBag> pPropBag;
58 hr = pMoniker->BindToStorage(0, 0, IID_IPropertyBag,
65 VariantInit(&varName);
66 VariantInit(&varDesc);
67 VariantInit(&varDevPath);
68 char tmp[FILENAME_MAX];
70 hr = pPropBag->Read(L
"FriendlyName", &varName, 0);
75 sprintf(tmp,
"%S", varName.bstrVal);
79 VariantClear(&varName);
81 hr = pPropBag->Read(L
"Description", &varDesc, 0);
86 sprintf(tmp,
"%S", varDesc.bstrVal);
90 VariantClear(&varDesc);
92 hr = pPropBag->Read(L
"DevicePath", &varDevPath, 0);
97 sprintf(tmp,
"%S",varDevPath.bstrVal);
101 VariantClear(&varDevPath);
112 bool vpDirectShowDevice::operator==(vpDirectShowDevice& dev)
114 return name==dev.name
116 && devPath==dev.devPath;
119 VISP_EXPORT std::ostream&
operator<<(std::ostream& os, vpDirectShowDevice& dev)
121 return os<<dev.name<<std::endl<<dev.desc<<std::endl<<dev.devPath;
124 #elif !defined(VISP_BUILD_SHARED_LIBS) 126 void dummy_vpDirectShowDevice() {};
friend std::ostream & operator<<(std::ostream &s, const vpArray2D< Type > &A)