// ============================================================================
// $Id$
// $Name$
// ============================================================================
#ifndef __TSOFTWARETIMERMODULE_HH
#define __TSOFTWARETIMERMODULE_HH
#include "TGlobals.hh"
#include "TSoftwareModule.hh"
class TDataSegment;
class TDataElement;
class TSoftwareTimerModule
: public TSoftwareModule
{
public:
enum {
tIntervalTime,
tCurrentTime,
tPreviousTime,
tUnit,
tNumberOfChannels
};
private:
Tdouble theIntervalTime;
Tdouble theCurrentTime;
Tdouble thePreviousTime;
Tstring theUnit;
public:
TSoftwareClockModule( const Tstring& unit = Tmsec,
Tint nchannel = tNumberOfChannels,
Tint id = tIDunknown );
~TSoftwareClockModule();
public:
Tint Clear();
Tint Update();
Tint Initialize();
Tvoid FillData( TDataSegment* seg );
Tvoid FillData( TDataElement* ele );
Tvoid Print( Tostream& tos = Tstd::Tcout ) const;
public:
inline Tdouble GetIntervalTime() const;
inline Tdouble GetCurrentTime() const;
inline Tdouble GetPreviousTime() const;
inline const Tstring& GetUnit() const;
inline Tvoid SetIntervalTime( Tdouble interval );
inline Tvoid SetCurrentTime( Tdouble current );
inline Tvoid SetPreviousTime( Tdouble previous );
inline Tvoid SetUnit( const Tstring& unit );
private:
Tvoid setCurrentTime();
};
inline Tdouble TSoftwareTimerModule::GetIntervalTime() const
{
return( theIntervalTime );
}
inline Tdouble TSoftwareTimerModule::GetCurrentTime() const
{
return( theCurrentTime );
}
inline Tdouble TSoftwareTimerModule::GetPreviousTime() const
{
return( thePreviousTime );
}
inline const Tstring& TSoftwareTimerModule::GetUnit() const
{
return( theUnit );
}
inline Tvoid TSoftwareTimerModule::SetIntervalTime( Tdouble interval )
{
theIntervaleTime = interval;
return;
}
inline Tvoid TSoftwareTimerModule::SetCurrentTime( Tdouble current )
{
theCurrentTime = current;
return;
}
inline Tvoid TSoftwareTimerModule::SetPreviousTime( Tdouble previous )
{
thePreviousTime = previous;
return;
}
inline Tvoid TSoftwareTimerModule::SetUnit( const Tstring& unit )
{
theUnit = unit;
return;
}
#endif
|