#include <ChimeraTK/ApplicationCore/ApplicationCore.h>
#include <ChimeraTK/ApplicationCore/EnableXMLGenerator.h>
#include <ChimeraTK/ApplicationCore/ModuleGroup.h>
#include <ChimeraTK/ApplicationCore/PeriodicTrigger.h>
#include <ChimeraTK/ApplicationCore/ScalarAccessor.h>
#include <ChimeraTK/ApplicationCore/StatusMonitor.h>
using ctk::ApplicationModule::ApplicationModule;
double direction = 1;
while(true) {
direction = -1;
}
direction = 1;
}
}
}
};
using ctk::ModuleGroup::ModuleGroup;
"/TemperatureMonitor/temperatureStatus", "/Config/TemperatureMonitor", "monitor for the simulated temperature",
} simulationGroup{this, "Simulation", ""};
};
void shutdown() override
This will remove the global pointer to the instance and allows creating another instance afterwards.
Generic module to read an XML config file and provide the defined values as constant variables.
bool write(ChimeraTK::VersionNumber versionNumber)=delete
Convenience class for output scalar accessors (always UpdateMode::push)
[Snippet: Class Definition Start]
~ExampleApp() override
[Snippet: Destructor]
ctk::PeriodicTrigger temperatureTimer
ctk::RangeMonitor< double > temperatureMonitor
SimulationModule simulation
InvalidityTracer application module.
const std::unordered_set< std::string > TAGS
Convenience type definition which can optionally be used as a shortcut for the type which defines a l...
Simple periodic trigger that fires a variable once per second.
Module for status monitoring depending on range of threshold values.
Example to simulate the working and usage of StatusMonitor.
ctk::ScalarOutput< double > temperature
The value to be monitored.
ctk::ScalarPushInput< uint64_t > trigger
Create trigger for blocking mock read.
void mainLoop() override
To be implemented by the user: function called in a separate thread executing the main loop of the mo...