DQCsim
Typedefs
dqcsim::wrap::callback Namespace Reference

Namespace containing all necessarily specializations of Callback as typedefs. More...

Typedefs

typedef Callback< void, PluginState &, ArbCmdQueue && > Initialize
 Callback wrapper specialized for the initialize callback.
 
typedef Callback< void, PluginState & > Drop
 Callback wrapper specialized for the drop callback.
 
typedef Callback< ArbData, RunningPluginState &, ArbData && > Run
 Callback wrapper specialized for the run callback.
 
typedef Callback< void, PluginState &, QubitSet &&, ArbCmdQueue && > Allocate
 Callback wrapper specialized for the allocate callback.
 
typedef Callback< void, PluginState &, QubitSet && > Free
 Callback wrapper specialized for the allocate callback.
 
typedef Callback< MeasurementSet, PluginState &, Gate && > Gate
 Callback wrapper specialized for the gate callback.
 
typedef Callback< MeasurementSet, UpstreamPluginState &, Measurement && > ModifyMeasurement
 Callback wrapper specialized for the modify_measurement callback.
 
typedef Callback< void, PluginState &, CycleAdvance
 Callback wrapper specialized for the advance callback.
 
typedef Callback< ArbData, PluginState &, ArbCmdArb
 Callback wrapper specialized for the *_arb callbacks.
 
typedef Callback< void, std::string && > SpawnPlugin
 Callback wrapper specialized for the manual plugin spawning callback.
 
typedef Callback< void, std::string &&, std::string &&, Loglevel, std::string &&, std::string &&, uint32_t, std::chrono::system_clock::time_point &&, uint32_t, uint64_t > Log
 Callback wrapper specialized for the simulation logging callback. More...
 

Detailed Description

Namespace containing all necessarily specializations of Callback as typedefs.

Typedef Documentation

◆ Log

typedef Callback< void, std::string&&, std::string&&, Loglevel, std::string&&, std::string&&, uint32_t, std::chrono::system_clock::time_point&&, uint32_t, uint64_t > dqcsim::wrap::callback::Log

Callback wrapper specialized for the simulation logging callback.

This callback takes the following arguments:

  • std::string&&: log message string, excluding metadata.
  • std::string&&: name assigned to the logger that was used to produce the message (= "dqcsim" or a plugin name).
  • Loglevel: the severity of the log message.
  • std::string&&: string representing the source of the log message, or empty when no source is known.
  • std::string&&: string containing the filename of the source that generated the message, or empty when no source is known.
  • uint32_t: line number within the aforementioned file, or 0 if not known.
  • std::chrono::system_clock::time_point&&: timestamp for the message.
  • uint32_t: PID of the generating process.
  • uint64_t: TID of the generating thread.

If an internal log record is particularly malformed and cannot be coerced into the C equivalents of the above (nul bytes in the strings, invalid timestamp, whatever) the message is silently ignored.

Definition at line 6985 of file dqcsim.