ACADO Toolkit  1.2.0beta
Toolkit for Automatic Control and Dynamic Optimization
Public Member Functions | Protected Attributes

Simulates real time measurements for simulations. More...

#include <simulation_clock.hpp>

Inheritance diagram for SimulationClock:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 SimulationClock ()
 Default constructor.
 SimulationClock (const SimulationClock &rhs)
 Copy constructor (deep copy).
virtual ~SimulationClock ()
 Destructor.
SimulationClockoperator= (const SimulationClock &rhs)
 Assignment Operator (deep copy).
virtual Clockclone () const
 Clone constructor (deep copy).
virtual returnValue start ()
 Starts time measurement.
virtual returnValue step (double _timeShift)
 Shifts measured time by a given offset.
virtual returnValue stop ()
 Stops time measurement.
virtual returnValue init (double _initialTime)
 Initializes the clock with given initial time.
virtual returnValue reset ()
 Initializes the clock with initial time zero.
virtual returnValue getTime (double &_elapsedTime)
 Returns elapsed time.
virtual double getTime ()
 Returns elapsed time.
ClockStatus getStatus () const
 Returns current status of clock, see documentation of ClockStatus for details.

Protected Attributes

double elapsedTime
 Elapsed time since last reset.
ClockStatus status
 Status of clock.

Detailed Description

The class SimulationClock simulates real time measurements for simulations within the SimulationEnvironment.

Author:
Hans Joachim Ferreau, Boris Houska

Constructor & Destructor Documentation

Referenced by clone().

Parameters:
[in]rhsRight-hand side object.

Member Function Documentation

Clock * SimulationClock::clone ( ) const [virtual]
Returns:
Pointer to deep copy of base class type

Implements Clock.

References SimulationClock().

BEGIN_NAMESPACE_ACADO ClockStatus Clock::getStatus ( ) const [inline, inherited]
Returns:
Current status of clock

References Clock::status.

returnValue Clock::getTime ( double &  _elapsedTime) [virtual, inherited]
double Clock::getTime ( ) [virtual, inherited]
Returns:
>= 0: elapsed time,
-INFTY: internal error

References INFTY, and SUCCESSFUL_RETURN.

returnValue Clock::init ( double  _initialTime) [virtual, inherited]
Parameters:
[in]_initialTimeInitial time.
Returns:
SUCCESSFUL_RETURN

References CS_STOPPED, Clock::elapsedTime, Clock::status, and SUCCESSFUL_RETURN.

Referenced by SimulationEnvironment::init(), Clock::reset(), and SimulationEnvironment::step().

SimulationClock & SimulationClock::operator= ( const SimulationClock rhs)
Parameters:
[in]rhsRight-hand side object.
returnValue Clock::reset ( ) [virtual, inherited]
Returns:
SUCCESSFUL_RETURN,
RET_CLOCK_NOT_READY

Implements Clock.

References ACADOERROR, CS_RUNNING, CS_STOPPED, RET_CLOCK_NOT_READY, Clock::status, and SUCCESSFUL_RETURN.

Referenced by step().

returnValue SimulationClock::step ( double  _timeShift) [virtual]
Parameters:
[in]_timeShiftTime offset.
Returns:
SUCCESSFUL_RETURN,
RET_CLOCK_NOT_READY

Implements Clock.

References Clock::elapsedTime, start(), stop(), and SUCCESSFUL_RETURN.

Returns:
SUCCESSFUL_RETURN,
RET_CLOCK_NOT_READY

Implements Clock.

References ACADOERROR, CS_NOT_INITIALIZED, CS_STOPPED, RET_CLOCK_NOT_READY, Clock::status, and SUCCESSFUL_RETURN.

Referenced by step().


Member Data Documentation

double Clock::elapsedTime [protected, inherited]
ClockStatus Clock::status [protected, inherited]

The documentation for this class was generated from the following files:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines