opendnp3  3.1.0
Reference implementation of DNP3 (IEEE-1815)
opendnp3::IChannel Class Referenceabstract

Represents a communication channel upon which masters and outstations can be bound. More...

#include <opendnp3/channel/IChannel.h>

Public Member Functions

virtual ~IChannel ()
 
virtual std::shared_ptr< IMasterAddMaster (const std::string &id, std::shared_ptr< ISOEHandler > SOEHandler, std::shared_ptr< IMasterApplication > application, const MasterStackConfig &config)=0
 Add a master to the channel. More...
 
virtual std::shared_ptr< IOutstationAddOutstation (const std::string &id, std::shared_ptr< ICommandHandler > commandHandler, std::shared_ptr< IOutstationApplication > application, const OutstationStackConfig &config)=0
 Add an outstation to the channel. More...
 
virtual opendnp3::LogLevels GetLogFilters () const =0
 
virtual LinkStatistics GetStatistics ()=0
 Synchronously read the channel statistics. More...
 
virtual void SetLogFilters (const opendnp3::LogLevels &filters)=0
 
- Public Member Functions inherited from opendnp3::IResource
virtual ~IResource ()=default
 
virtual void Shutdown ()=0
 

Detailed Description

Represents a communication channel upon which masters and outstations can be bound.

Definition at line 44 of file IChannel.h.

Constructor & Destructor Documentation

◆ ~IChannel()

virtual opendnp3::IChannel::~IChannel ( )
inlinevirtual

Definition at line 47 of file IChannel.h.

Member Function Documentation

◆ AddMaster()

virtual std::shared_ptr<IMaster> opendnp3::IChannel::AddMaster ( const std::string &  id,
std::shared_ptr< ISOEHandler SOEHandler,
std::shared_ptr< IMasterApplication application,
const MasterStackConfig config 
)
pure virtual

Add a master to the channel.

Parameters
idAn ID that gets used for logging
SOEHandlerCallback object for all received measurements
applicationThe master application bound to the master session
configConfiguration object that controls how the master behaves
Returns
shared_ptr to the running master

◆ AddOutstation()

virtual std::shared_ptr<IOutstation> opendnp3::IChannel::AddOutstation ( const std::string &  id,
std::shared_ptr< ICommandHandler commandHandler,
std::shared_ptr< IOutstationApplication application,
const OutstationStackConfig config 
)
pure virtual

Add an outstation to the channel.

Parameters
idAn ID that gets used for logging
commandHandlerCallback object for handling command requests
applicationCallback object for user code
configConfiguration object that controls how the outstation behaves
Returns
shared_ptr to the running outstation

◆ GetLogFilters()

virtual opendnp3::LogLevels opendnp3::IChannel::GetLogFilters ( ) const
pure virtual
Returns
The current logger settings for this channel

◆ GetStatistics()

virtual LinkStatistics opendnp3::IChannel::GetStatistics ( )
pure virtual

Synchronously read the channel statistics.

◆ SetLogFilters()

virtual void opendnp3::IChannel::SetLogFilters ( const opendnp3::LogLevels filters)
pure virtual
Parameters
filtersAdjust the filters to this value

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