INOS
|
INOS McRobot command to move one axis endlessly towards a certain direction with a specific speed set. More...
#include <cinosmcrobot.h>
Public Member Functions | |
CINOSMcRobotCmdEndless (CINOSTaskExMsg *apMsg, tMcAxisName apAxis, bool abPositive, const char *apParam, void *apCallBack=NULL, real64 arSlowMotion=REAL64(0.0)) | |
constructor | |
CINOSMcRobotCmdEndless (CINOSTaskExMsg *apMsg, tMcAxisName apAxis, bool abPositive, const char *apParam, void *apCallBack, void *apCallBackObject, real64 arSlowMotion=REAL64(0.0)) | |
virtual | ~CINOSMcRobotCmdEndless () |
destructor | |
virtual uint32 | Check () |
check command | |
virtual uint32 | Trigger () |
prepare command | |
virtual uint32 | Run () |
run command | |
virtual uint32 | Stop (uint32 auReply) |
stop command | |
virtual uint32 | EmgStop () |
emergency stop command | |
virtual void | Done (uintid auPartId) |
done command | |
virtual void | SetSlowMotion (real64 arSlowMotion) |
set slowmotion | |
virtual void | GetCmdPosition (real64 &arPosition) |
get cmd position | |
virtual void | GetActPosition (real64 &arPosition) |
get act position | |
virtual void | GetActVelocity (real64 &arVelocity) |
get act velocity | |
![]() | |
CINOSMcRobotCmd (CINOSTaskExMsg *apMsg, void *apCallBack=NULL, void *apCallBackObject=NULL) | |
constructor | |
virtual | ~CINOSMcRobotCmd () |
destructor | |
virtual uint32 | Break () |
break command | |
virtual uint32 | Continue () |
continue command | |
eCmdState | GetState () const |
get command state | |
const char * | GetName () |
get command name | |
CINOSMcRobot * | GetModule () |
get pointer to module this command belongs to | |
uint32 | GetReply () const |
get command reply | |
uint32 | SetReply (uint32 auReply) |
set command reply | |
uint32 | GetResult () const |
get command result | |
uint32 | SetResult (uint32 auResult) |
set command result | |
CINOSTaskExMsg * | GetMsg () |
get command message | |
CINOSTask * | GetSender () |
get command sender | |
void | SetId (tMsgId auId) |
set command id | |
tMsgId | GetId () |
get command id | |
virtual void | AddEvent (const char *apName, real64 arValue, eEventType aeEventType, bool abFireEvent=true, uint32 auFlags=0) |
add event to command | |
virtual bool | GetEventTicks (const char *apName, uint64 &auBusTicks, uint8 &auBusId) |
get event ticks | |
void | SetCallBack (void *apCallBack) |
set callback | |
Additional Inherited Members | |
![]() | |
enum | eCmdState { eStaIdle , eStaReady , eStaRunning , eStaDone , eStaError } |
command states More... | |
enum | eMoveType { eTypAbsolute , eTypRelative } |
move types | |
enum | eEventType { eEvtBgnUnit =0 , eEvtEndUnit =1 , eEvtBgnMs =2 , eEvtEndMs =3 , eEvtBgnCmd =4 , eEvtEndCmd =5 , eEvtBrkUnit =6 , eEvtBrkMs =7 , eEvtBgnMsFix =8 , eEvtEndMsFix =9 } |
event types | |
![]() | |
enum | eFlags { eFlgBegin = 0x00000001 , eFlgEnd = 0x00000002 , eFlgMoveTime = 0x00000004 , eFlgSlowMotion = 0x00000008 , eFlgFireEvent = 0x00000010 , eFlgLength = 0x00000020 , eFlgDepart = 0x00000040 , eFlgMultipleEvent = 0x00000080 , eFlgEmgStop = 0x40000000 , eFlgDone = 0x80000000 } |
validity | |
![]() | |
void * | GetCallBack () |
get callback | |
void * | GetCallBackObject () |
int32 | GetBusTicks (uint8 auBusId, real64 arMs) |
get bus ticks | |
void | InstallHandler () |
install cyclic handler | |
void | RemoveHandler () |
remove cyclic handler | |
virtual void | Handle () |
command handler | |
DECLARE_DYNAMIC (CINOSMcRobotCmd) | |
dynamic object handling | |
![]() | |
eCmdState | m_eState |
command state | |
uint32 | m_uReply |
command reply | |
uint32 | m_uReplySave |
saved command reply | |
uint32 | m_uResult |
command result | |
tMsgId | m_uId |
command id overwrite | |
bool | m_bEndEvent |
command has 'eEvtEndCmd' event | |
bool | m_bCyclicHandling |
command needs cyclic handling | |
char | m_cEndEvent [32] |
end event name | |
void * | m_pCallBack |
pointer to callback method if any | |
void * | m_pCallBackObject |
pointer to callback object if any | |
CINOSTaskExMsg * | m_pMsg |
pointer to according message | |
CINOSMcRobot * | m_pModule |
pointer to my module | |
CINOSMcRobotCmd * | m_pNext |
pointer to next command in list | |
INOS McRobot command to move one axis endlessly towards a certain direction with a specific speed set.
If the axis is limit checked (which is usually the case), then the axis will move at most to its axis software limits. Otherwise (e.g. in the case of a rotating axis), the axis will really move endlessly until the command will be stopped.
CINOSMcRobotCmdEndless::CINOSMcRobotCmdEndless | ( | CINOSTaskExMsg * | apMsg, |
tMcAxisName | apAxis, | ||
bool | abPositive, | ||
const char * | apParam, | ||
void * | apCallBack, | ||
void * | apCallBackObject, | ||
real64 | arSlowMotion = REAL64(0.0) |
||
) |
constructor. Overloaded version that accepts a callback with a non- default callback object. Use this version if you e.g. have extraced some McRobot functionality into separate classes (classes other than those derived from CINOSMcModule & Co)
|
virtual |
check command
Implements CINOSMcRobotCmd.
done command
Implements CINOSMcRobotCmd.
|
virtual |
emergency stop command
Implements CINOSMcRobotCmd.
get act position
Implements CINOSMcRobotCmd.
get act velocity
Implements CINOSMcRobotCmd.
get cmd position
Implements CINOSMcRobotCmd.
|
virtual |
run command
Implements CINOSMcRobotCmd.
set slowmotion
Implements CINOSMcRobotCmd.
|
virtual |
stop command
Implements CINOSMcRobotCmd.
|
virtual |
prepare command
Implements CINOSMcRobotCmd.