Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::DataInport< T, N, Flat > Class Template Reference

#include <inviwo/core/ports/datainport.h>

+ Inheritance diagram for inviwo::DataInport< T, N, Flat >:

Public Types

using iterator = std::conditional_t<Flat, FlatInportIterator<T>, RegularInportIterator<T>>
 
using type = T
 
using value_type = std::shared_ptr<const T>
 

Public Member Functions

iterator begin () const noexcept
 
virtual bool canConnectTo (const Port *port) const override
 
virtual void connectTo (Outport *port) override
 
 DataInport (const DataInport &)=delete
 
 DataInport (DataInport &&)=delete
 
 DataInport (std::string_view identifier, Document help={})
 
virtual void disconnectFrom (Outport *outport) override
 
iterator end () const noexcept
 
virtual std::string_view getClassIdentifier () const override
 
virtual uvec3 getColorCode () const override
 
OutportgetConnectedOutport () const
 
virtual OutportgetConnectedOutport (size_t i) const override
 
virtual OutportgetConnectedOutport (size_t i) const=0
 
virtual std::shared_ptr< const T > getData () const
 
virtual DataInfo getDataInfo () const override
 
virtual Document getInfo () const override
 
virtual size_t getMaxNumberOfConnections () const override
 
virtual size_t getNumberOfConnections () const override
 
virtual std::vector< std::pair< Outport *, std::shared_ptr< const T > > > getSourceVectorData () const
 
virtual std::vector< std::shared_ptr< const T > > getVectorData () const
 
virtual bool hasData () const
 
virtual bool isConnected () const override
 
DataInportoperator= (const DataInport &)=delete
 
DataInportoperator= (DataInport &&)=delete
 
- Public Member Functions inherited from inviwo::Inport
OutportgetConnectedOutport () const
 
auto getConnectedOutports () const
 
virtual bool isChanged () const
 
virtual bool isConnectedTo (const Outport *outport) const
 
bool isOptional () const
 
virtual bool isReady () const override
 
const BaseCallBack * onChange (std::function< void()> lambda)
 
std::shared_ptr< std::function< void()> > onChangeScoped (std::function< void()> lambda)
 
const BaseCallBack * onConnect (std::function< void()> lambda)
 
std::shared_ptr< std::function< void()> > onConnectScoped (std::function< void()> lambda)
 
const BaseCallBack * onDisconnect (std::function< void()> lambda)
 
std::shared_ptr< std::function< void()> > onDisconnectScoped (std::function< void()> lambda)
 
virtual void propagateEvent (Event *event, Outport *target=nullptr)
 
void readyUpdate ()
 
void removeOnChange (const BaseCallBack *callback)
 
void removeOnConnect (const BaseCallBack *callback)
 
void removeOnDisconnect (const BaseCallBack *callback)
 
void setIsReadyUpdater (std::function< bool()> updater)
 
void setOptional (bool optional)
 
- Public Member Functions inherited from inviwo::Port
virtual void deserialize (Deserializer &d) override
 
DocumentgetHelp ()
 
const DocumentgetHelp () const
 
const std::string & getIdentifier () const
 
std::string getPath () const
 Get the port path i.e. <processor identifier>.<port identifier>
 
void getPath (std::pmr::string &out) const
 
ProcessorgetProcessor () const
 
Portoperator= (const Port &)=delete
 
Portoperator= (Port &&)=delete
 
 Port (const Port &)=delete
 
 Port (Port &&)=delete
 
virtual void serialize (Serializer &s) const override
 
PortsetHelp (Document help)
 
void setIdentifier (const std::string &name)
 

Static Public Attributes

static constexpr bool flattenData = Flat
 
static constexpr size_t maxConnections = N
 

Protected Attributes

std::vector< DataOutportInterface< T > * > outports_
 
- Protected Attributes inherited from inviwo::Inport
StateCoordinator< bool > isOptional_
 
StateCoordinator< bool > isReady_
 
- Protected Attributes inherited from inviwo::Port
Document help_
 
std::string identifier_
 
Processorprocessor_
 

Additional Inherited Members

- Public Attributes inherited from inviwo::Inport
std::shared_ptr< std::function< void(Outport *)> onConnectScoped )(std::function< void(Outport *)> lambda)
 
std::shared_ptr< std::function< void(Outport *)> onDisconnectScoped )(std::function< void(Outport *)> lambda)
 
- Protected Member Functions inherited from inviwo::Inport
void callOnChangeIfChanged () const
 
bool circularConnection (const Port *port) const
 
void doConnectTo (Outport *outport)
 
void doDisconnectFrom (Outport *outport)
 
 Inport (std::string_view identifier, Document help)
 
virtual void invalidate (InvalidationLevel invalidationLevel)
 
virtual void setChanged (bool changed)
 
- Protected Member Functions inherited from inviwo::Port
 Port (std::string_view identifier, Document help)
 
void setProcessor (Processor *processor)
 
- Static Protected Member Functions inherited from inviwo::Inport
static Document getDefaultPortInfo (const Inport *port, std::string_view portname)
 

Detailed Description

template<typename T, size_t N = 1, bool Flat = false>
class inviwo::DataInport< T, N, Flat >

DataInport represents a general inport providing data as a std:shared_ptr<const T> If

Template Parameters
Nis set to 0 the port will accept multiple connections, and will provide a std::vector<std::shared_ptr<const T>> of data. If
Nis greater or equal to 0 exactly
Nconnections are accepted. If
Flatis set to true, the inport will also accept connections from outports with vector data of type
Tand merge them into the vector returned by getData().

Member Function Documentation

◆ canConnectTo()

template<typename T , size_t N, bool Flat>
bool inviwo::DataInport< T, N, Flat >::canConnectTo ( const Port * port) const
overridevirtual

Implements inviwo::Inport.

◆ connectTo()

template<typename T , size_t N, bool Flat>
void inviwo::DataInport< T, N, Flat >::connectTo ( Outport * port)
overridevirtual

Implements inviwo::Inport.

◆ disconnectFrom()

template<typename T , size_t N, bool Flat>
void inviwo::DataInport< T, N, Flat >::disconnectFrom ( Outport * outport)
overridevirtual

Implements inviwo::Inport.

◆ getClassIdentifier()

template<typename T , size_t N, bool Flat>
std::string_view inviwo::DataInport< T, N, Flat >::getClassIdentifier ( ) const
overridevirtual

Implements inviwo::Port.

◆ getColorCode()

template<typename T , size_t N, bool Flat>
uvec3 inviwo::DataInport< T, N, Flat >::getColorCode ( ) const
overridevirtual

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.

Implements inviwo::Port.

◆ getConnectedOutport() [1/2]

template<typename T , size_t N, bool Flat>
Outport * inviwo::DataInport< T, N, Flat >::getConnectedOutport ( size_t i) const
overridevirtual

Implements inviwo::Inport.

◆ getConnectedOutport() [2/2]

template<typename T , size_t N = 1, bool Flat = false>
virtual Outport * inviwo::Inport::getConnectedOutport ( size_t i) const
virtual

Implements inviwo::Inport.

◆ getDataInfo()

template<typename T , size_t N, bool Flat>
DataInfo inviwo::DataInport< T, N, Flat >::getDataInfo ( ) const
overridevirtual

Implements inviwo::Port.

◆ getInfo()

template<typename T , size_t N, bool Flat>
Document inviwo::DataInport< T, N, Flat >::getInfo ( ) const
overridevirtual

This function should describe the state of the port and the data it holds. Derived ports should extend this function and add information about their state. The port help is usually included in this information. The description is usually shown as a tooltip in the GUI.

Implements inviwo::Port.

Reimplemented in inviwo::BaseImageInport< N >, inviwo::BaseImageInport< 0 >, and inviwo::BaseImageInport< 1 >.

◆ getMaxNumberOfConnections()

template<typename T , size_t N, bool Flat>
size_t inviwo::DataInport< T, N, Flat >::getMaxNumberOfConnections ( ) const
overridevirtual

Implements inviwo::Inport.

◆ getNumberOfConnections()

template<typename T , size_t N, bool Flat>
size_t inviwo::DataInport< T, N, Flat >::getNumberOfConnections ( ) const
overridevirtual

Implements inviwo::Inport.

◆ isConnected()

template<typename T , size_t N, bool Flat>
bool inviwo::DataInport< T, N, Flat >::isConnected ( ) const
overridevirtual

Reimplemented from inviwo::Inport.


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