Inviwo  0.9.10.1
Inviwo documentation
inviwo::RepresentationFactoryManager Class Reference

#include <representationfactorymanager.h>

Public Member Functions

RepresentationMetaFactorygetRepresentationMetaFactory ()
 
RepresentationConverterMetaFactorygetRepresentationConverterMetaFactory ()
 
template<typename BaseRepr >
void registerRepresentationFactoryObject (std::unique_ptr< RepresentationFactoryObject< BaseRepr >> representation)
 
void registerRepresentationFactory (std::unique_ptr< BaseRepresentationFactory > representationFactory)
 
template<typename BaseRepr >
void registerRepresentationConverter (std::unique_ptr< RepresentationConverter< BaseRepr >> converter)
 
void registerRepresentationConverterFactory (std::unique_ptr< BaseRepresentationConverterFactory > converterFactory)
 

Static Public Member Functions

template<typename BaseRepr >
static RepresentationFactory< BaseRepr > * getRepresentationFactory ()
 
template<typename BaseRepr >
static RepresentationConverterFactory< BaseRepr > * getRepresentationConverterFactory ()
 

Detailed Description

The RepresentationFactoryManager is a indirection layer between Data and the Representation/RepresentationConverter Factories. The RepresentationFactoryManager is responsible for providing the factories to Data, by default it will redirect the request to the InviwoApplication. But in the case where when we are not running the InviwoApplication, like in some unit tests, a instance of the RepresentationFactoryManager can be constructed and the relevant factories initialized directly, without having to initialize all of InviwoApplication. We use this in the base module unit tests for example.

See also
Data
RepresentationFactory
RepresentationConverterFactory
InviwoApplication

Member Function Documentation

◆ getRepresentationConverterFactory()

template<typename BaseRepr >
RepresentationConverterFactory< BaseRepr > * inviwo::RepresentationFactoryManager::getRepresentationConverterFactory ( )
inlinestatic

Get a Representation converter factory for a specific kind of representation (Volume Representation, Layer Representation, Buffer Representation, etc) This function will use the local representation factory if available, otherwise it will forward to the InviwoApplication

See also
Data
RepresentationConverter
RepresentationConverterFactory
InviwoApplication::getRepresentationConverterFactory()

Get a Representation converter factory for a specific kind of representation (Volume Representation, Layer Representation, Buffer Representation, etc)

See also
Data
RepresentationConverter
RepresentationConverterFactory
InviwoApplication::getRepresentationConverterFactory()

◆ getRepresentationConverterMetaFactory()

RepresentationConverterMetaFactory* inviwo::RepresentationFactoryManager::getRepresentationConverterMetaFactory ( )
inline

◆ getRepresentationFactory()

template<typename BaseRepr >
RepresentationFactory< BaseRepr > * inviwo::RepresentationFactoryManager::getRepresentationFactory ( )
inlinestatic

Get a Representation factory for a specific kind of representation (Volume Representation, Layer Representation, Buffer Representation, etc) This function will use the local representation converter factory if available, otherwise it will forward to the InviwoApplication

See also
Data
DataRepresentation
RepresentationFactory
InviwoApplication::getRepresentationFactory()

Get a Representation factory for a specific kind of representation (Volume Representation, Layer Representation, Buffer Representation, etc)

See also
Data
DataRepresentation
RepresentationFactory
InviwoApplication::getRepresentationFactory()

◆ getRepresentationMetaFactory()

RepresentationMetaFactory* inviwo::RepresentationFactoryManager::getRepresentationMetaFactory ( )
inline

◆ registerRepresentationConverter()

template<typename BaseRepr >
void inviwo::RepresentationFactoryManager::registerRepresentationConverter ( std::unique_ptr< RepresentationConverter< BaseRepr >>  converter)

Register a representation converter with the respective representation converter factory. The template type BaseRepr is used to select representation converter factory. A representation converter should implement RepresentationConverterType

See also
RepresentationConverterFactory
RepresentationConverter
DataRepresentation
RepresentationFactoryManager::getRepresentationConverterFactory()

◆ registerRepresentationConverterFactory()

void inviwo::RepresentationFactoryManager::registerRepresentationConverterFactory ( std::unique_ptr< BaseRepresentationConverterFactory converterFactory)

Register a factory for representation converters. Each base representation (Volume Representation, Layer Representation, Buffer Representation, etc) has its own representation converter factory. A converter factory should implement RepresentationConverterFactory

See also
RepresentationConverterFactory
RepresentationConverter
DataRepresentation
RepresentationFactoryManager::getRepresentationConverterMetaFactory()

◆ registerRepresentationFactory()

void inviwo::RepresentationFactoryManager::registerRepresentationFactory ( std::unique_ptr< BaseRepresentationFactory representationFactory)

Register a factory for representations. Each base representation (Volume Representation, Layer Representation, Buffer Representation, etc) has its own representation factory. A representation factory should implement RepresentationFactory

See also
RepresentationFactory
DataRepresentation
RepresentationFactoryManager::getRepresentationMetaFactory()

◆ registerRepresentationFactoryObject()

template<typename BaseRepr >
void inviwo::RepresentationFactoryManager::registerRepresentationFactoryObject ( std::unique_ptr< RepresentationFactoryObject< BaseRepr >>  representation)

Register a representation factory object for creating representations with the respective representation factory. The template type BaseRepr is used to select representation factory. A representation factory object should implement RepresentationFactoryObject

See also
RepresentationFactory
RepresentationFactoryObject
DataRepresentation
RepresentationFactoryManager::getRepresentationFactory()

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