DPsim
Loading...
Searching...
No Matches
DPsim::InterfaceVillasQueueless Class Reference

Interface type that can be used to import and export simulation attributes over any node type supported by VILLASnode. More...

#include <InterfaceVillasQueueless.h>

Inheritance diagram for DPsim::InterfaceVillasQueueless:
[legend]
Collaboration diagram for DPsim::InterfaceVillasQueueless:
[legend]

Classes

class  PostStep
 
class  PreStep
 

Public Types

typedef std::shared_ptr< InterfaceVillasQueuelessPtr
 
- Public Types inherited from DPsim::Interface
typedef std::shared_ptr< InterfacePtr
 

Public Member Functions

 InterfaceVillasQueueless (const String &nodeConfig, const String &name="", spdlog::level::level_enum logLevel=spdlog::level::level_enum::info)
 create a new InterfaceVillasQueueless instance
 
virtual void open () override
 
virtual void close () override
 
virtual void syncExports () override
 
virtual void syncImports () override
 Function called by the Simulation to perform interface synchronization.
 
virtual CPS::Task::List getTasks () override
 
virtual void printVillasSignals () const
 
- Public Member Functions inherited from DPsim::Interface
 Interface (const String &name="", spdlog::level::level_enum logLevel=spdlog::level::level_enum::info)
 
virtual void setLogger (CPS::Logger::Log log)
 
virtual String & getName ()
 
virtual void addImport (CPS::AttributeBase::Ptr attr, bool blockOnRead=false, bool syncOnSimulationStart=true)
 
virtual void addExport (CPS::AttributeBase::Ptr attr)
 

Protected Member Functions

virtual void writeToVillas ()
 
virtual Int readFromVillas ()
 
void createNode ()
 
void createSignals ()
 

Protected Attributes

const String mNodeConfig
 
node::Node * mNode
 
node::Pool mSamplePool
 
Int mSequenceToDpsim
 
Int mSequenceFromDpsim
 
- Protected Attributes inherited from DPsim::Interface
CPS::Logger::Log mLog
 
String mName
 
bool mSyncOnSimulationStart
 
UInt mCurrentSequenceDpsimToInterface = 1
 
UInt mNextSequenceInterfaceToDpsim = 1
 
std::atomic< bool > mOpened
 

Additional Inherited Members

- Static Public Member Functions inherited from SharedFactory< Interface >
static std::shared_ptr< Interface > make (Args &&...args)
 
- Static Public Member Functions inherited from SharedFactory< InterfaceVillasQueueless >
static std::shared_ptr< InterfaceVillasQueueless > make (Args &&...args)
 
- Public Attributes inherited from DPsim::Interface
std::vector< std::tuple< CPS::AttributeBase::Ptr, UInt, bool, bool > > mImportAttrsDpsim
 
std::vector< std::tuple< CPS::AttributeBase::Ptr, UInt > > mExportAttrsDpsim
 

Detailed Description

Interface type that can be used to import and export simulation attributes over any node type supported by VILLASnode.

Definition at line 31 of file InterfaceVillasQueueless.h.

Member Typedef Documentation

◆ Ptr

typedef std::shared_ptr<InterfaceVillasQueueless> DPsim::InterfaceVillasQueueless::Ptr

Definition at line 36 of file InterfaceVillasQueueless.h.

Constructor & Destructor Documentation

◆ InterfaceVillasQueueless()

DPsim::InterfaceVillasQueueless::InterfaceVillasQueueless ( const String & nodeConfig,
const String & name = "",
spdlog::level::level_enum logLevel = spdlog::level::level_enum::info )

create a new InterfaceVillasQueueless instance

Parameters
nodeConfigVILLASnode node configuration in JSON format
nameName of this interface. Currently only used for naming the simulation tasks

Definition at line 22 of file InterfaceVillasQueueless.cpp.

◆ ~InterfaceVillasQueueless()

virtual DPsim::InterfaceVillasQueueless::~InterfaceVillasQueueless ( )
inlinevirtual

Definition at line 57 of file InterfaceVillasQueueless.h.

Member Function Documentation

◆ close()

void DPsim::InterfaceVillasQueueless::close ( )
overridevirtual

Implements DPsim::Interface.

Definition at line 161 of file InterfaceVillasQueueless.cpp.

◆ createNode()

void DPsim::InterfaceVillasQueueless::createNode ( )
protected

Definition at line 28 of file InterfaceVillasQueueless.cpp.

◆ createSignals()

void DPsim::InterfaceVillasQueueless::createSignals ( )
protected

Definition at line 103 of file InterfaceVillasQueueless.cpp.

◆ getTasks()

CPS::Task::List DPsim::InterfaceVillasQueueless::getTasks ( )
overridevirtual

Implements DPsim::Interface.

Definition at line 187 of file InterfaceVillasQueueless.cpp.

◆ open()

void DPsim::InterfaceVillasQueueless::open ( )
overridevirtual

Implements DPsim::Interface.

Definition at line 140 of file InterfaceVillasQueueless.cpp.

◆ printVillasSignals()

void DPsim::InterfaceVillasQueueless::printVillasSignals ( ) const
virtual

Definition at line 367 of file InterfaceVillasQueueless.cpp.

◆ readFromVillas()

Int DPsim::InterfaceVillasQueueless::readFromVillas ( )
protectedvirtual

Definition at line 212 of file InterfaceVillasQueueless.cpp.

◆ syncExports()

void DPsim::InterfaceVillasQueueless::syncExports ( )
overridevirtual

Implements DPsim::Interface.

Definition at line 362 of file InterfaceVillasQueueless.cpp.

◆ syncImports()

void DPsim::InterfaceVillasQueueless::syncImports ( )
overridevirtual

Function called by the Simulation to perform interface synchronization.

Implements DPsim::Interface.

Definition at line 357 of file InterfaceVillasQueueless.cpp.

◆ writeToVillas()

void DPsim::InterfaceVillasQueueless::writeToVillas ( )
protectedvirtual

Definition at line 287 of file InterfaceVillasQueueless.cpp.

Member Data Documentation

◆ mNode

node::Node* DPsim::InterfaceVillasQueueless::mNode
protected

Definition at line 69 of file InterfaceVillasQueueless.h.

◆ mNodeConfig

const String DPsim::InterfaceVillasQueueless::mNodeConfig
protected

Definition at line 68 of file InterfaceVillasQueueless.h.

◆ mSamplePool

node::Pool DPsim::InterfaceVillasQueueless::mSamplePool
protected

Definition at line 70 of file InterfaceVillasQueueless.h.

◆ mSequenceFromDpsim

Int DPsim::InterfaceVillasQueueless::mSequenceFromDpsim
protected

Definition at line 77 of file InterfaceVillasQueueless.h.

◆ mSequenceToDpsim

Int DPsim::InterfaceVillasQueueless::mSequenceToDpsim
protected

Definition at line 76 of file InterfaceVillasQueueless.h.


The documentation for this class was generated from the following files: