17 this->
pPort = inpPort;
28 this->InternalMove(RIGHT, inDuration, inSpeed);
30 this->InternalMove(LEFT, inDuration, inSpeed);
35 ACC_STATE AccessoryMotor::InternalMove(ACC_STATE inStateToReach,
unsigned long inDuration,
int inSpeed)
40 unsigned long duration = inDuration == 0 ? this->
GetDuration() : inDuration;
46 if (inStateToReach == RIGHT)
48 #ifdef ACCESSORIES_DEBUG_MODE 49 Serial.println(F(
"AccessoryMotor InternalMove() RIGHT"));
56 #ifdef ACCESSORIES_DEBUG_MODE 57 Serial.println(F(
"AccessoryMotor InternalMove() LEFT"));
72 case ACCESSORIES_EVENT_TOGGLE:
76 case ACCESSORIES_EVENT_MOVE:
79 case ACCESSORIES_MOVE_STRAIGHT:
80 case ACCESSORIES_MOVE_TOP:
81 case ACCESSORIES_MOVE_LEFT:
84 case ACCESSORIES_MOVE_DIVERGE:
85 case ACCESSORIES_MOVE_BOTTOM:
86 case ACCESSORIES_MOVE_RIGHT:
89 case ACCESSORIES_MOVE_OFF:
90 case ACCESSORIES_MOVE_STOP:
97 case ACCESSORIES_EVENT_MOVEPOSITION:
101 case ACCESSORIES_EVENT_MOVEPOSITIONID:
106 case ACCESSORIES_EVENT_MOVEPOSITIONINDEX:
111 case ACCESSORIES_EVENT_SETSPEED:
115 case ACCESSORIES_EVENT_SETDURATION:
119 case ACCESSORIES_EVENT_EXTERNALMOVE:
161 this->
SetState((ACC_STATE)position);
int EEPROMLoad(int inPos)
void Move(unsigned long inId)
void ExternalMove(ACC_STATE inNewState)
int GetMovingPositionValueByIndex(uint8_t inIndex) const
uint8_t IndexOfMovingPositionById(unsigned long inId) const
void SetState(ACC_STATE instate)
void SetLastMovingPosition(uint8_t inLastPositionIndex)
virtual void ResetAction()
virtual int EEPROMLoad(int inPos)
virtual void MoveRight(unsigned long inDuration = 0, int inSpeed = 0)
virtual void MoveLeft(unsigned long inDuration = 0, int inSpeed = 0)
void Event(unsigned long inId, ACCESSORIES_EVENT_TYPE inEvent = ACCESSORIES_EVENT_MOVEPOSITIONID, int inData = 0)
virtual void MoveRightDir(unsigned long inDuration = 0)
virtual void MoveLeftDir(unsigned long inDuration = 0)
virtual void StartAction()
unsigned long GetDuration() const
bool IsActionDelayPending() const
ACC_STATE GetState() const
uint8_t AddMovingPosition(unsigned long inId, int inPosition)
virtual bool ActionEnded()
void SetDuration(unsigned long inDuration)
virtual int SetSpeed(int inSpeed)
int GetMovingPositionValueById(unsigned long inId) const
void begin(ACC_STATE inStartingState = STATE_NONE)
void SetStateRaw(ACC_STATE inNewState)
virtual ACC_STATE MoveToggle(unsigned long inDuration = 0, int inSpeed = 0) = 0
void begin(Port *inpPort, unsigned long inId, int inSpeed, unsigned long inDurationMilli = 0)
const uint8_t GetMovingPositionSize() const