11 #include <vlpi/simulationAddress.h>
35 const DtSimulationAddress& simAddress,
36 std::unique_ptr<DtVrfDatabaseConnection> conn);
39 virtual bool isEnabled()
const = 0;
57 virtual std::unique_ptr<DtVrfDatabaseEvent> popEvent() = 0;
60 virtual void setScenarioLoadInformation(
int runId,
const DtFilename& scenarioName,
65 virtual void setScenarioRunInformation(
const DtFilename& scenarioName,
69 virtual void setSimTime(
double simTime);
129 static void setDatabaseLoggerCreatorFcn(
const DtString& dbLoggerType,
130 DatabaseLoggerCreatorFcn fcn);
133 static void setDatabaseConnectionCreatorFcn(
const DtString& dbConnType,
134 DatabaseConnectionCreatorFcn fcn);
138 static std::map<DtString, DatabaseLoggerCreatorFcn>& loggerCreators();
139 static std::map<DtString, DatabaseConnectionCreatorFcn>& connectionCreators();
172 virtual std::unique_ptr<DtVrfDatabaseEvent>
popEvent() {
return std::unique_ptr<DtVrfDatabaseEvent>(); };
virtual void setResourceThresholdPercentage(double p)
Definition: vrfDatabaseLoggerInterface.h:86
int myRunId
Definition: vrfDatabaseLoggerInterface.h:109
DtVrfDatabaseLoggerInterface & operator=(const DtVrfDatabaseLoggerInterface &other)
Assignment Operator not implemented – Do Not copy.
double mySimTime
Definition: vrfDatabaseLoggerInterface.h:105
virtual ~DtNullDatabaseLogger()
Destructor.
Definition: vrfDatabaseLoggerInterface.h:159
virtual std::unique_ptr< DtVrfDatabaseEvent > popEvent()
No-op.
Definition: vrfDatabaseLoggerInterface.h:172
virtual bool isEnabled() const
Logging is not enabled if using this logger.
Definition: vrfDatabaseLoggerInterface.h:162
std::unique_ptr< DtVrfDatabaseConnection > myDatabaseConnection
Definition: vrfDatabaseLoggerInterface.h:112
The database logger which is used when no logger is configured. It does nothing with logged events...
Definition: vrfDatabaseLoggerInterface.h:151
Static creator class which creates the database logger and database connection to be used...
Definition: vrfDatabaseLoggerInterface.h:117
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
Contains the configuration options for the database logger.
Definition: rwDatabaseLoggerConfig.h:21
The base class for database loggers. A database logger is responsible for logging database events int...
Definition: vrfDatabaseLoggerInterface.h:27
double myResourceThresholdPercentage
Definition: vrfDatabaseLoggerInterface.h:103
DtString myScenarioName
Definition: vrfDatabaseLoggerInterface.h:110
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, DtVrfDatabaseEvent &&event)
No-op.
Definition: vrfDatabaseLoggerInterface.h:170
double myRealWorldTimeStart
Definition: vrfDatabaseLoggerInterface.h:107
static DtVrfDatabaseLoggerInterface * create()
Creator function for this class.
Definition: vrfDatabaseLoggerInterface.h:176
static DtString type()
Type of this database logger.
Definition: vrfDatabaseLoggerInterface.h:179
DtNullDatabaseLogger()
Constructor.
Definition: vrfDatabaseLoggerInterface.h:156
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, std::function< DtVrfDatabaseEvent()> f)
No-op.
Definition: vrfDatabaseLoggerInterface.h:171
virtual bool isEventEnabled(DtVrfDatabaseEvent::EventType eventType) const
Logging is not enabled if using this logger.
Definition: vrfDatabaseLoggerInterface.h:165
virtual double resourceThresholdPercentage() const
The percentage of full by which a resource value must change before an update is logged.
Definition: vrfDatabaseLoggerInterface.h:85
virtual bool logEvent(DtVrfDatabaseEvent::EventType eventType, const DtVrfDatabaseEvent &event)
No-op.
Definition: vrfDatabaseLoggerInterface.h:169
virtual void forceDatabaseUpdate()
Forces all pending events to be written to the database. Normally it is not necessary to call this...
Definition: vrfDatabaseLoggerInterface.h:76
The base class for all database connections. The database connection is responsible for reading queue...
Definition: vrfDatabaseConnection.h:24
bool myScenarioRunInfoSet
Definition: vrfDatabaseLoggerInterface.h:108
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:124
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:72
#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:106
DtSimulationAddress mySimAddress
Definition: vrfDatabaseLoggerInterface.h:104