Generic hardware access library
/home/cschwick/hal/generic/include/hal/GotoCommand.hh
Go to the documentation of this file.
00001 #ifndef __GotoCommand
00002 #define __GotoCommand
00003 
00004 #include <string>
00005 
00006 #include "hal/SequencerCommand.hh"
00007 #include "hal/CommandSequence.hh"
00008 #include "hal/HardwareDeviceInterface.hh"
00009 
00010 namespace HAL {
00011 
00030 class GotoCommand : public SequencerCommand {
00031 public:
00032   GotoCommand( std::string labelName,
00033                std::string condition,
00034                CommandSequence& sequence )
00035     throw (SequencerSyntaxError);
00036   
00037   virtual ~GotoCommand() {};
00038   
00042   void setOp1( uint32_t op1 );
00043 
00047   void setOp2( uint32_t op2 );
00048 
00052   void setOp1Pointer( uint32_t* op1Ptr );
00053 
00057   void setOp2Pointer( uint32_t* op2Ptr );
00058 
00059   void excecute( const HardwareDeviceInterface& device ) const
00060     throw( SequencerSyntaxError );
00061 
00062 private:
00063   std::string labelName;
00064   std::string condition;
00065   CommandSequence& sequence;
00066   uint32_t op1, op2;
00067   uint32_t* op1Ptr;
00068   uint32_t* op2Ptr;
00069 };
00070 
00071 } /* namespace HAL */
00072 
00073 #endif /* __GotoCommand */