void KeyPTU::status(void) { ArLog::log(ArLog::Normal, "\r\nStatus:\r\n_________________________\r\n"); ArLog::log(ArLog::Normal, "Pan Position = %d deg", myPTU.getPan()); ArLog::log(ArLog::Normal, "Tilt Position = %d deg", myPTU.getTilt()); ArLog::log(ArLog::Normal, "Zoom Position = %d", myPTU.getZoom()); ArLog::log(ArLog::Normal, "Pan Slew = %d deg/s", myPTU.getPanSlew()); ArLog::log(ArLog::Normal, "Tilt Slew = %d deg/s", myPTU.getTiltSlew()); ArLog::log(ArLog::Normal, "Position Increment = %d deg", myPosIncrement); if (myPTU.getPower()) ArLog::log(ArLog::Normal, "Power is ON"); else ArLog::log(ArLog::Normal, "Power is OFF"); ArLog::log(ArLog::Normal, "\r\n"); }
virtual ArActionDesired *fire (ArActionDesired currentDesired) { Bottle CAMBottle; NewData = Mycopyofmodule->GetBottleData("CAMin",&CAMBottle,SamgarModule::NoStep); if(NewData){WhereInList=0;PrecBottle=CAMBottle;} // if theres new data reset the system // if its reached the desired tilt/pan get the next lot of data if there is more data in the list if(ptz.getPan()==pan && ptz.getTilt() == tilt && WhereInList<PrecBottle.size()) { pan = PrecBottle.get(WhereInList).asDouble();WhereInList++; tilt = PrecBottle.get(WhereInList).asDouble();WhereInList++; } else // if its not reached the desired pan/tilt send the command again. { ptz.pan(pan); ptz.tilt(tilt); } return &myDesired; }