VISR  0.11.8
Versatile Interactive Scene Renderer
visr::PolymorphicParameterOutput Class Reference

#include <polymorphic_parameter_output.hpp>

Inheritance diagram for visr::PolymorphicParameterOutput:
visr::ParameterOutputBase visr::ParameterPortBase

Public Member Functions

 PolymorphicParameterOutput (char const *name, Component &parent, ParameterType const &parameterType, CommunicationProtocolType const &protocolType, ParameterConfigBase const &paramConfig)
 
 PolymorphicParameterOutput (char const *name, Component &parent, ParameterType const &parameterType, CommunicationProtocolType const &protocolType)
 
virtual ~PolymorphicParameterOutput () override
 
void setProtocol (CommunicationProtocolBase *protocol) override
 
CommunicationProtocolBase::OutputprotocolOutput () override
 
CommunicationProtocolBase::Output const & protocolOutput () const
 
- Public Member Functions inherited from visr::ParameterOutputBase
 ParameterOutputBase (char const *name, Component &parent, ParameterType const &parameterType, CommunicationProtocolType const &protocolType, ParameterConfigBase const &paramConfig)
 
 ParameterOutputBase (char const *name, Component &parent, ParameterType const &parameterType, CommunicationProtocolType const &protocolType)
 
virtual ~ParameterOutputBase () override
 
- Public Member Functions inherited from visr::ParameterPortBase
 ParameterPortBase (char const *name, Component &parent, PortBase::Direction direction, ParameterType const &parameterType, CommunicationProtocolType const &protocolType, ParameterConfigBase const &parameterConfig)
 
 ParameterPortBase (char const *name, Component &parent, PortBase::Direction direction, ParameterType const &parameterType, CommunicationProtocolType const &protocolType)
 
 ParameterPortBase (ParameterPortBase const &)=delete
 
 ParameterPortBase (ParameterPortBase &&)=delete
 
ParameterPortBaseoperator= (ParameterPortBase const &)=delete
 
ParameterPortBaseoperator= (ParameterPortBase &&)=delete
 
virtual ~ParameterPortBase ()
 
void setParameterConfig (ParameterConfigBase const &parameterConfig)
 
ParameterType parameterType () const
 
CommunicationProtocolType protocolType () const
 
ParameterConfigBase const & parameterConfig () const
 
impl::ParameterPortBaseImplementationimplementation ()
 
impl::ParameterPortBaseImplementation const & implementation () const
 

Additional Inherited Members

- Public Types inherited from visr::ParameterPortBase
using Direction = PortBase::Direction
 

Detailed Description

Parameter input port without predefined parameter and port types. In contrast to the templated ParameterOutput classes, these types are set by parameter and protocol type ids that are passed as constructor arguments.

Constructor & Destructor Documentation

visr::PolymorphicParameterOutput::PolymorphicParameterOutput ( char const *  name,
Component parent,
ParameterType const &  parameterType,
CommunicationProtocolType const &  protocolType,
ParameterConfigBase const &  paramConfig 
)
explicit

Constructor with a parameter config argument.

Parameters
nameThe name of the port, must be unique within the parameter ports of the containing components.
parentthe containing component (atomic or composite)
parameterTypeThe parameter type id for this port.
protocolTypeThe protocol type id for this port.
paramConfigA parameter configuration object. Must be compatible with the parameter type specified by parameterType.
visr::PolymorphicParameterOutput::PolymorphicParameterOutput ( char const *  name,
Component parent,
ParameterType const &  parameterType,
CommunicationProtocolType const &  protocolType 
)
explicit

Constructor without a parameter config argument. The parameter type must be set during the initalisation set.

Parameters
nameThe name of the port, must be unique within the parameter ports of the containing components.
parentthe containing component (atomic or composite)
parameterTypeThe parameter type id for this port.
protocolTypeThe protocol type id for this port.
visr::PolymorphicParameterOutput::~PolymorphicParameterOutput ( )
overridevirtualdefault

Virtual destructor. Overrides the base class destructor (of ParameterOutputBase).

Member Function Documentation

CommunicationProtocolBase::Output & visr::PolymorphicParameterOutput::protocolOutput ( )
overridevirtual

Return the protocol input of this port. Must be called only after initialisation. Defines the pure virtual method of the ParameterOutputBase protocol.

Exceptions
std::exceptionIf the method is called while this object is not connected.

Implements visr::ParameterOutputBase.

CommunicationProtocolBase::Output const & visr::PolymorphicParameterOutput::protocolOutput ( ) const

Return the protocol input of this port, const version Must be called only after initialisation. Defines the pure virtual method of the ParameterOutputBase protocol.

Exceptions
std::exceptionIf the method is called while this object is not connected.
void visr::PolymorphicParameterOutput::setProtocol ( CommunicationProtocolBase protocol)
overridevirtual

Set the communication protocol for the protocol input contained in this port. Defines the pure virtual method of the parameterOutputBase protocol.

Implements visr::ParameterPortBase.


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