11 #include <vlpi/simulationAddress.h>
37 const DtSimulationAddress& simAddress,
38 std::unique_ptr<DtVrfDatabaseConnection> conn);
41 virtual bool isEnabled()
const = 0;
59 virtual std::unique_ptr<DtVrfDatabaseEvent> popEvent() = 0;
62 virtual void setScenarioLoadInformation(
int runId,
const DtFilename& scenarioName,
67 virtual void setScenarioRunInformation(
const DtFilename& scenarioName,
71 virtual void tick(
double simTime);
133 static void setDatabaseLoggerCreatorFcn(
const DtString& dbLoggerType,
134 DatabaseLoggerCreatorFcn fcn);
137 static void setDatabaseConnectionCreatorFcn(
const DtString& dbConnType,
138 DatabaseConnectionCreatorFcn fcn);
142 static std::map<DtString, DatabaseLoggerCreatorFcn>& loggerCreators();
143 static std::map<DtString, DatabaseConnectionCreatorFcn>& connectionCreators();
166 virtual bool isEnabled()
const override {
return false; };
178 virtual std::unique_ptr<DtVrfDatabaseEvent>
popEvent()
override {
return std::unique_ptr<DtVrfDatabaseEvent>(); };
virtual void setResourceThresholdPercentage(double p)
Definition: vrfDatabaseLoggerInterface.h:88
int myRunId
Definition: vrfDatabaseLoggerInterface.h:111
DtVrfDatabaseLoggerInterface & operator=(const DtVrfDatabaseLoggerInterface &other)
Assignment Operator not implemented – Do Not copy.
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, const DtVrfDatabaseEvent &event) override
No-op.
Definition: vrfDatabaseLoggerInterface.h:173
double mySimTime
Definition: vrfDatabaseLoggerInterface.h:107
virtual bool isEnabled() const override
Logging is not enabled if using this logger.
Definition: vrfDatabaseLoggerInterface.h:166
virtual bool isEventEnabled(DtVrfDatabaseEvent::EventType eventType) const override
Logging is not enabled if using this logger.
Definition: vrfDatabaseLoggerInterface.h:169
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, std::function< DtVrfDatabaseEvent()> f) override
No-op.
Definition: vrfDatabaseLoggerInterface.h:176
std::unique_ptr< DtVrfDatabaseConnection > myDatabaseConnection
Definition: vrfDatabaseLoggerInterface.h:116
The database logger which is used when no logger is configured. It does nothing with logged events...
Definition: vrfDatabaseLoggerInterface.h:155
Static creator class which creates the database logger and database connection to be used...
Definition: vrfDatabaseLoggerInterface.h:121
EventType
The unique event types for different types of data that will be logged by VRF. Each event type will g...
Definition: vrfDatabaseEvent.h:28
double myLogPeriod
Definition: vrfDatabaseLoggerInterface.h:113
Contains the configuration options for the database logger.
Definition: rwDatabaseLoggerConfig.h:22
The base class for database loggers. A database logger is responsible for logging database events int...
Definition: vrfDatabaseLoggerInterface.h:29
double myResourceThresholdPercentage
Definition: vrfDatabaseLoggerInterface.h:105
DtString myScenarioName
Definition: vrfDatabaseLoggerInterface.h:112
virtual ~DtNullDatabaseLogger() override
Destructor.
Definition: vrfDatabaseLoggerInterface.h:163
double myRealWorldTimeStart
Definition: vrfDatabaseLoggerInterface.h:109
static DtVrfDatabaseLoggerInterface * create()
Creator function for this class.
Definition: vrfDatabaseLoggerInterface.h:182
static DtString type()
Type of this database logger.
Definition: vrfDatabaseLoggerInterface.h:185
DtNullDatabaseLogger()
Constructor.
Definition: vrfDatabaseLoggerInterface.h:160
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, DtVrfDatabaseEvent &&event) override
No-op.
Definition: vrfDatabaseLoggerInterface.h:175
virtual std::unique_ptr< DtVrfDatabaseEvent > popEvent() override
No-op.
Definition: vrfDatabaseLoggerInterface.h:178
virtual double resourceThresholdPercentage() const
The percentage of full by which a resource value must change before an update is logged.
Definition: vrfDatabaseLoggerInterface.h:87
virtual void forceDatabaseUpdate()
Forces all pending events to be written to the database. Normally it is not necessary to call this...
Definition: vrfDatabaseLoggerInterface.h:78
The base class for all database connections. The database connection is responsible for reading queue...
Definition: vrfDatabaseConnection.h:26
bool myScenarioRunInfoSet
Definition: vrfDatabaseLoggerInterface.h:110
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:137
double myNextLogTime
Definition: vrfDatabaseLoggerInterface.h:114
Represents a single event to be recorded in the database. Anytime something occurs that requires data...
Definition: vrfDatabaseEvent.h:22
virtual unsigned queueSize()
The number of events currently queued to be logged to the database.
Definition: vrfDatabaseLoggerInterface.h:74
#define DT_DLL_vrfMsgTransport
This file is used to determine how to build Disable inconsistent dll linkage warning Visual Studio 6...
Definition: vrfCommunicationManagerDefines.h:26
double myDateAndTimeStart
Definition: vrfDatabaseLoggerInterface.h:108
DtSimulationAddress mySimAddress
Definition: vrfDatabaseLoggerInterface.h:106