Inviwo  0.9.10.1
Inviwo documentation
inviwo::Port Class Referenceabstract

A abstract base class for all ports. A port can be connected to other ports and is owned by a processor. More...

#include <port.h>

+ Inheritance diagram for inviwo::Port:

Public Member Functions

std::string getIdentifier () const
 
void setIdentifier (const std::string &name)
 
ProcessorgetProcessor () const
 
virtual std::string getClassIdentifier () const =0
 
virtual uvec3 getColorCode () const =0
 
virtual Document getInfo () const =0
 
virtual bool isConnected () const =0
 
virtual bool isReady () const =0
 
virtual void serialize (Serializer &s) const override
 
virtual void deserialize (Deserializer &d) override
 

Protected Member Functions

 Port (std::string identifier="")
 
void setProcessor (Processor *processor)
 

Protected Attributes

std::string identifier_
 
Processorprocessor_
 

Friends

class Processor
 

Detailed Description

A abstract base class for all ports. A port can be connected to other ports and is owned by a processor.

Constructor & Destructor Documentation

◆ Port()

inviwo::Port::Port ( std::string  identifier = "")
protected

Constructor for creating port instances. As this class is abstract, the constructor is not called directly. Instead, constructors of the derived classes call this constructor.

Parameters
identifierPort identifier used for serialization. Has to be unique within the scope of a processor. Port identifiers should only contain alpha numeric characters, "-" and "_".
See also
Processor::addPort()

Member Function Documentation

◆ getColorCode()

virtual uvec3 inviwo::Port::getColorCode ( ) const
pure virtual

Returns the RGB color code used to colorize all ports of this type. This color code is for instance used in the NetworkEditor. To distinguish different port types through their color, this method should be overloaded in derived classes.

Implemented in inviwo::DataInport< T, N, Flat >, inviwo::DataInport< std::vector< vec4 > >, inviwo::DataInport< Eigen::MatrixXf >, inviwo::DataInport< Volume >, inviwo::DataInport< inviwo::LightSource >, inviwo::DataInport< BufferBase >, inviwo::DataInport< std::vector< std::shared_ptr< Image > > >, inviwo::DataInport< std::vector< std::shared_ptr< inviwo::Volume > > >, inviwo::DataInport< std::vector< std::shared_ptr< T > > >, inviwo::DataInport< IntegralLineSet >, inviwo::DataInport< T >, inviwo::DataInport< Handle >, inviwo::DataInport< inviwo::Volume, 0, true >, inviwo::DataInport< 3 >, inviwo::DataInport< inviwo::Spatial4DSampler< 3, double > >, inviwo::DataInport< Image, N >, inviwo::DataInport< inviwo::SpatialSampler< 3, 3, double > >, inviwo::DataInport< typename Tracer::Sampler, 0 >, inviwo::DataInport< inviwo::DataFrame >, inviwo::DataInport< inviwo::Volume >, inviwo::DataInport< SeedPoint3DVector, 0 >, inviwo::DataInport< Mesh, 0, true >, inviwo::DataInport< BrushingAndLinkingManager >, inviwo::DataInport< std::vector< std::shared_ptr< Mesh > > >, inviwo::DataInport< VolumeSequence >, inviwo::DataInport< Mesh >, inviwo::DataInport< std::vector< std::shared_ptr< Volume > > >, inviwo::DataInport< Tracer::Sampler::SpatialDimensions >, inviwo::DataInport< typename Tracer::Sampler >, inviwo::DataInport< DataFrame >, inviwo::DataInport< inviwo::Volume, 0 >, inviwo::DataOutport< T >, inviwo::DataOutport< std::vector< vec4 > >, inviwo::DataOutport< Eigen::MatrixXf >, inviwo::DataOutport< Volume >, inviwo::DataOutport< inviwo::LightSource >, inviwo::DataOutport< inviwo::SpatialSampler< 2, 2, double > >, inviwo::DataOutport< BufferBase >, inviwo::DataOutport< std::vector< std::shared_ptr< inviwo::Mesh > > >, inviwo::DataOutport< IntegralLineSet >, inviwo::DataOutport< Handle >, inviwo::DataOutport< inviwo::Spatial4DSampler< 3, double > >, inviwo::DataOutport< SeedPoint3DVector >, inviwo::DataOutport< Image >, inviwo::DataOutport< SeedPoint2DVector >, inviwo::DataOutport< container >, inviwo::DataOutport< inviwo::SpatialSampler< 3, 3, double > >, inviwo::DataOutport< inviwo::DataFrame >, inviwo::DataOutport< BrushingAndLinkingManager >, inviwo::DataOutport< inviwo::Plane >, inviwo::DataOutport< VolumeSequence >, inviwo::DataOutport< SeedPoint4DVector >, inviwo::DataOutport< Mesh >, and inviwo::DataOutport< DataFrame >.


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