#ifndef __COMMAND_OBJECT__ #define __COMMAND_OBJECT__ //------------------------------------------------------------------------------------------------------------ // Includes //------------------------------------------------------------------------------------------------------------ #include #include class CommandObject{ //------------------------------------------------------------------------------------------------------------ // Constructors & Destructors //------------------------------------------------------------------------------------------------------------ public: /* * Creates a command with the given text * @return Returns the created commandObject pointer */ CommandObject( ); /* * Destroys the command */ virtual ~CommandObject( ); //------------------------------------------------------------------------------------------------------------ // Methods //------------------------------------------------------------------------------------------------------------ /* * Includes the command into the given queue for execution * @param executionQueue Is the queue in which is included the command */ virtual void includeToExecute(std::deque &executionQueue)=0; /* * Counts the command(s) * @return The value of commands that represents this */ virtual int count() = 0; /* * Method that clears the command */ virtual void clear() = 0; //------------------------------------------------------------------------------------------------------------ // Constants //------------------------------------------------------------------------------------------------------------ private: //------------------------------------------------------------------------------------------------------------ // Attributes //------------------------------------------------------------------------------------------------------------ int accum; }; #endif