// ================================================ // OnPacketReceived // vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv void PluginMotionTrackerRecvr::ComponentCtrlP::OnPacketReceived(CigiBasePacket *packet) { CigiCompCtrlV3 *ccp = (CigiCompCtrlV3 *)packet; // check the 'class' for this component ctrl; we're only interested in // 'view' component controls if( ccp->GetCompClassV3() == CigiBaseCompCtrl::ViewV3 ) { int viewID = (int)ccp->GetInstanceID(); int componentID = ccp->GetCompID(); int trackerID = ccp->GetCompState(); // we're using component 0 for motion tracker info if( componentID == 0 ) { motionTrackerRecvrPlugin->updateMotionTracker( trackerID, viewID, osg::Quat( ccp->GetFloatCompData( 0 ), ccp->GetFloatCompData( 1 ), ccp->GetFloatCompData( 2 ), ccp->GetFloatCompData( 3 ) ) ); } } }
void XCompCtrl::OnPacketReceived(CigiBasePacket *Packet) { CigiCompCtrlV3 *InPckt = (CigiCompCtrlV3 *)Packet; bool ok = true; printf("===> CompCtrl <===\n"); printf("CompID ==> %d\n",InPckt->GetCompID()); printf("InstanceID ==> %d\n",InPckt->GetInstanceID()); printf("CompClassV3 ==> %d\n",InPckt->GetCompClassV3()); printf("CompState ==> %d\n",InPckt->GetCompState()); printf("CompData ==> %d\n",InPckt->GetLongCompData(0)); printf("CompData ==> %d\n",InPckt->GetLongCompData(1)); printf("CompData ==> %d\n",InPckt->GetLongCompData(2)); printf("CompData ==> %d\n",InPckt->GetLongCompData(3)); printf("CompData ==> %d\n",InPckt->GetLongCompData(4)); printf("CompData ==> %d\n",InPckt->GetLongCompData(5)); }