robot arm demo team / Mbed 2 deprecated RobotArmDemo Featured

Dependencies:   AX-12A Dynamixel mbed iothub_client EthernetInterface NTPClient ConfigFile SDFileSystem iothub_amqp_transport mbed-rtos proton-c-mbed wolfSSL

Utils/ActionBuf.h

Committer:
henryrawas
Date:
2016-01-23
Revision:
18:224289104fc0
Child:
19:2f0ec9ac1238

File content as of revision 18:224289104fc0:

/* 
Copyright (c) 2015 Jonathan Pickett & Microsoft. Some appropriate open source license.
*/

#ifndef __ACTIONBUF_H__
#define __ACTIONBUF_H__

#include "mbed.h"
#include "SafeCircBuf.h"
#include "RobotArmCfg.h"


enum SequenceAction
{
    SA_SetGoal          = 0x1,
    SA_Delay            = 0x2,
    SA_LoopBegin        = 0x3,
    SA_LoopEnd          = 0x4
};

class ActionSequence
{
public:
    ActionSequence();
    
    ActionSequence(SequenceAction aType);
    
 
    ActionSequence(SequenceAction aType, int parts, const float vals[], int param);
    
    void SetGoal(int parts, const float vals[]);
    
    void SetParam(int param);
    
    void SetAction(SequenceAction aType);
    
    SequenceAction ActionType;
    
    float GoalVals[NUMJOINTS];
    
    int NumParts;
    
    int Param;
    
};


#endif