#include <acsexmplSlowMountImpl.h>
Inheritance diagram for SlowMount:
Public Member Functions | |
SlowMount (ACE_CString name, maci::ContainerServices *containerServices) | |
virtual | ~SlowMount () |
virtual baci::ActionRequest | invokeAction (int function, baci::BACIComponent *component_p, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value_p, Completion &completion, CBDescOut &descOut) |
virtual baci::ActionRequest | obstarAction (baci::BACIComponent *component_p, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value_p, Completion &completion, CBDescOut &descOut) |
virtual baci::ActionRequest | objfixAction (baci::BACIComponent *component_p, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value_p, Completion &completion, CBDescOut &descOut) |
virtual void | obstar (CORBA::Double ra, CORBA::Double dec, CORBA::Double pmRa, CORBA::Double pmDec, CORBA::Double radVel, CORBA::Double par, MOUNT_ACS::Mount::coordType type, ACS::CBvoid_ptr callBack, const ACS::CBDescIn &desc) |
virtual void | objfix (CORBA::Double az, CORBA::Double elev, ACS::CBvoid_ptr callBack, const ACS::CBDescIn &desc) |
virtual ACS::ROdouble_ptr | cmdAz () |
virtual ACS::ROdouble_ptr | cmdEl () |
virtual ACS::ROdouble_ptr | actAz () |
virtual ACS::ROdouble_ptr | actEl () |
Private Types | |
typedef baci::ActionRequest(SlowMount::* | ActionFunction )(baci::BACIComponent *component_p, const int &callbackID, const CBDescIn &descIn, baci::BACIValue *value_p, Completion &completion, CBDescOut &descOut) |
Private Member Functions | |
void | operator= (const SlowMount &) |
Private Attributes | |
ActionFunction | m_actions [2] |
baci::SmartPropertyPointer< baci::ROdouble > | m_cmdAz_sp |
baci::SmartPropertyPointer< baci::ROdouble > | m_cmdEl_sp |
baci::SmartPropertyPointer< baci::ROdouble > | m_actAz_sp |
baci::SmartPropertyPointer< baci::ROdouble > | m_actEl_sp |
|
Definition of ActionFunction (member function of Mount class) ActionFunction is used to run the asynchronous methods from within invokeAction(...) without actually having to specify calls to each ...Action(...) method. This is easily accomplished since all ...Action(...) methods return an baci::ActionRequest.
|
|
Constructor
|
|
Destructor |
|
Returns a reference to the actAz property Implementation of IDL interface for the property.
|
|
Returns a reference to the actEl property Implementation of IDL interface for the property.
|
|
Returns a reference to the cmdAz property Implementation of IDL interface for the property.
|
|
Returns a reference to the cmdEl property Implementation of IDL interface for the property.
|
|
Action dispatcher function This function is called whenever an asynchronous request has to be handled. It receives (as parameters) the description of the function and selects the proper implementation to call.
Implements baci::ActionImplementator.
|
|
(Pre)sets a new non-moving position for the antenna. The position coordinates are given in azimuth and elevation. The actual az and elev values are written to the properties cmdAz, cmdEl, actAz and actEl. This method just registers the request in the asyncronous queue, together with the associated callback and returns control immediatly. The actual action will be invoked asyncronously by the asynchonous call manager by calling Mount::objfixAction(...). The given callback is used to inform the caller when the action is performed.
|
|
Implementation of asynchronous MOUNT_ACS::Mount::objfix() method This is the function that actually runs objfix(...) and, when completed, invokes the callback installed by the client when it requested the action.
|
|
(Pre)sets a new equatorial source for the antenna to track. The source position is given in geocentric equatorial J2000 coordinates. The actual ra and dec coordinates are written to the properties cmdAz, cmdEl, actAz and actEl. This method just registers the request in the asyncronous queue, together with the associated callback and returns control immediatly. The actual action will be invoked asyncronously by the asynchonous call manager by calling Mount::obstarAction(...). The given callback is used to inform the caller when the action is performed.
|
|
Implementation of asynchronous MOUNT_ACS::Mount::obstar() method This is the function that actually runs obstar(...) and, when completed, invokes the callback installed by the client when it requested the action.
|
|
ALMA C++ coding standards state copy operators should be disabled. |
|
m_actAz_sp is the antenna's actual azimuth |
|
m_actEl_sp is the antenna's actual elevation |
|
Please see ActionFunction. m_actions[0] = obstarAction(...) m_actions[1] = objfixAction(...) |
|
m_cmdAz_sp is the antenna's commanded azimuth |
|
m_cmdEl_sp is the antenna's commanded elevation |