2 #ifndef __accessoryMotor_H__ 3 #define __accessoryMotor_H__ 6 #include "Accessory.hpp" 16 #define LEFT STATE_FIRST 18 #define RIGHT STATE_SECOND 20 #define STOP STATE_NONE 66 void begin(
Port *inpPort,
unsigned long inId,
int inSpeed,
unsigned long inDurationMilli = 0);
73 void Event(
unsigned long inId, ACCESSORIES_EVENT_TYPE inEvent = ACCESSORIES_EVENT_MOVEPOSITIONID,
int inData = 0);
85 void Move(
unsigned long inId);
91 inline virtual void MoveLeft(
unsigned long inDuration = 0,
int inSpeed = 0) { this->InternalMove(LEFT, inDuration, inSpeed); }
97 inline virtual void MoveRight(
unsigned long inDuration = 0,
int inSpeed = 0) { this->InternalMove(RIGHT, inDuration, inSpeed); }
104 virtual ACC_STATE
MoveToggle(
unsigned long inDuration = 0,
int inSpeed = 0) = 0;
118 ACC_STATE InternalMove(ACC_STATE inStateToReach,
unsigned long inDuration = 0,
int inSpeed = 0);
void SetState(ACC_STATE instate)
void SetStateRaw(ACC_STATE inNewState)
void ExternalMove(ACC_STATE inNewState)
virtual ACC_STATE MoveToggle(unsigned long inDuration = 0, int inSpeed = 0) = 0
virtual void MoveLeft(unsigned long inDuration = 0, int inSpeed = 0)
void Move(unsigned long inId)
void Event(unsigned long inId, ACCESSORIES_EVENT_TYPE inEvent = ACCESSORIES_EVENT_MOVEPOSITIONID, int inData = 0)
void begin(Port *inpPort, unsigned long inId, int inSpeed, unsigned long inDurationMilli = 0)
int EEPROMLoad(int inPos)
virtual void MoveRight(unsigned long inDuration = 0, int inSpeed = 0)