19#ifndef _mtsCollectorState_h
20#define _mtsCollectorState_h
55 typedef std::vector<SignalElement> RegisteredSignalElementType;
56 RegisteredSignalElementType RegisteredSignalElements;
59 size_t OffsetForNextRead;
62 ptrdiff_t LastReadIndex;
65 size_t TableHistoryLength;
68 size_t SamplingInterval;
75 void Run(
void)
override;
78 void Initialize(
void);
81 virtual std::string GetDefaultOutputName(
void)
override;
88 bool IsRegisteredSignal(
const std::string & signalName)
const;
91 bool AddSignalElement(
const std::string & signalName,
const unsigned int signalID);
95 const size_t startIdx,
99 void PrintHeader(
const CollectorFileFormat & fileFormat);
102 void MarkHeaderEnd(std::ostream & logFile);
105 static bool IsHeaderEndMark(
const char * buffer);
114 void CollectionStartedHandler(
void);
119 void CollectionStoppedHandler(
const size_t & count);
124 void ProgressHandler(
const size_t & count);
135 const std::string & targetStateTableName,
145 const std::string & stateTableName =
"");
154 SamplingInterval = (samplingInterval > 0 ? samplingInterval : 1);
169 const std::string targetPlainTextLogFileName,
170 const char delimiter =
',');
mtsCollectorBase(const std::string &collectorName, const CollectorFileFormat fileFormat)
CollectorFileFormat
Definition mtsCollectorBase.h:51
Definition mtsCollectorState.h:42
void StopCollection(const double &delayInSeconds) override
mtsCollectorState(const std::string &targetComponentName, const std::string &targetStateTableName, const CollectorFileFormat fileFormat)
mtsCollectorState(const std::string &collectorName)
void SetSamplingInterval(const size_t samplingInterval)
Definition mtsCollectorState.h:153
bool SetStateTable(const std::string &componentName, const std::string &stateTableName="")
friend class mtsCollectorStateTest
Definition mtsCollectorState.h:43
void StartCollection(const double &delayInSeconds) override
bool AddSignal(const std::string &signalName="")
static bool ConvertBinaryToText(const std::string sourceBinaryLogFileName, const std::string targetPlainTextLogFileName, const char delimiter=',')
friend class mtsStateTable
Definition mtsCollectorState.h:44
bool Connect(void) override
Definition mtsComponent.h:150
std::string Name
Definition mtsComponent.h:159
Definition mtsFunctionWrite.h:37
Definition mtsStateTable.h:81
Definition mtsStateTable.h:67
#define CMN_DECLARE_SERVICES_INSTANTIATION(className)
Definition cmnClassRegisterMacros.h:199
const int CMN_NO_DYNAMIC_CREATION
Definition cmnClassRegisterMacros.h:325
#define CISST_EXPORT
Definition cmnExportMacros.h:50
#define CMN_LOG_ALLOW_DEFAULT
Definition cmnLogLoD.h:76
Defines a command with no argument.
Defines the state data table.