本文整理汇总了C++中Datagram::bdata方法的典型用法代码示例。如果您正苦于以下问题:C++ Datagram::bdata方法的具体用法?C++ Datagram::bdata怎么用?C++ Datagram::bdata使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Datagram
的用法示例。
在下文中一共展示了Datagram::bdata方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getFocusMode
bool CanonDriver::getFocusMode(FocusMode * fm, ManualFocusMode * mfm)
{
Datagram dgm;
if (!sendRequestAndWait(0x40,0x8000,dgm))
return false;
*fm = (FocusMode)(dgm.bdata()[0]);
if (*fm == FMManual) {
if (!sendRequestAndWait(0x43,0x8000,dgm))
return false;
*mfm = (ManualFocusMode)(dgm.bdata()[0]);
}
return true;
}
示例2: getAutoExposure
bool CanonDriver::getAutoExposure(bool * autoexp, AutoExposureMode * aem)
{
Datagram dgm;
if (!sendRequestAndWait(0x82,0x8000,dgm))
return false;
//dgm.print();
*autoexp = (dgm.bdata()[0] == 0x00);
if (!*autoexp) {
*aem = AXPundef;
return true;
}
if (!sendRequestAndWait(0x87,0x8000,dgm))
return false;
unsigned short us = dgm.bdata()[0];
us = (us << 8) | dgm.bdata()[1];
*aem = (AutoExposureMode)(us);
//dgm.print();
return true;
}
示例3: getSpeeds
bool CanonDriver::getSpeeds(unsigned short * pan,
unsigned short * tilt, unsigned short * zoom)
{
Datagram dgm;
if (!sendRequestAndWait(0x3B,0x8000,dgm))
return false;
const unsigned char * data = dgm.bdata();
*pan = data[0];
*pan = (*pan << 8) | data[1];
*tilt = data[2];
*tilt = (*tilt << 8) | data[3];
*zoom = data[4];
*zoom = (*zoom << 8) | data[5];
return true;
}