ARGoS  3
A parallel, multi-engine simulator for swarm robotics
core/simulator/actuator.h
Go to the documentation of this file.
00001 
00007 #ifndef ACTUATOR_H
00008 #define ACTUATOR_H
00009 
00010 namespace argos {
00011    class CComposableEntity;
00012 }
00013 
00014 namespace argos {
00015 
00022    class CSimulatedActuator {
00023 
00024    public:
00025 
00029       virtual ~CSimulatedActuator() {}
00030 
00041       virtual void SetRobot(CComposableEntity& c_entity) = 0;
00042 
00046       virtual void Update() = 0;
00047 
00048    };
00049 
00050 }
00051 
00057 #define REGISTER_ACTUATOR(CLASSNAME,                        \
00058                           LABEL,                            \
00059                           IMPLEMENTATION,                   \
00060                           AUTHOR,                           \
00061                           VERSION,                          \
00062                           BRIEF_DESCRIPTION,                \
00063                           LONG_DESCRIPTION,                 \
00064                           STATUS)                           \
00065    REGISTER_SYMBOL(CSimulatedActuator,                      \
00066                    CLASSNAME,                               \
00067                    LABEL " (" IMPLEMENTATION ")",           \
00068                    AUTHOR,                                  \
00069                    VERSION,                                 \
00070                    BRIEF_DESCRIPTION,                       \
00071                    LONG_DESCRIPTION,                        \
00072                    STATUS)
00073 
00074 #endif