stromx  0.8.0
Public Types | Public Member Functions | List of all members
stromx::runtime::VariantInterface Class Referenceabstract

Abstract description of a data variant. More...

#include <VariantInterface.h>

Inheritance diagram for stromx::runtime::VariantInterface:
stromx::runtime::Variant stromx::runtime::VariantComposite stromx::runtime::VariantHandle stromx::runtime::Visualization

Public Types

enum  CompositeType { NO_COMPOSITE, AND_COMPOSITE, OR_COMPOSITE }
 

Public Member Functions

virtual unsigned int id () const =0
 
virtual const std::string & package () const =0
 
virtual const std::string title () const =0
 
virtual bool isVariant (const VariantInterface &variant) const =0
 
virtual CompositeType compositeType () const
 
virtual const VariantHandle lhs () const
 
virtual const VariantHandle rhs () const
 

Detailed Description

Abstract description of a data variant.

A variant describes type of a Data object, i.e. which subclass of Data the object is an instance of. Some variants give further details about an instance of a data data class e.g the type of the entries of a Matrix object (their type is not characterized by the class type but by a class member).

A variant is uniquely characterized by its ID and the package it belongs to.

Member Function Documentation

§ compositeType()

virtual CompositeType stromx::runtime::VariantInterface::compositeType ( ) const
inlinevirtual

The composite type if this variant is a logical composition of two other variants.

Reimplemented in stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ id()

virtual unsigned int stromx::runtime::VariantInterface::id ( ) const
pure virtual

Returns the integer ID of this data variant.

Implemented in stromx::runtime::Variant, stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ isVariant()

virtual bool stromx::runtime::VariantInterface::isVariant ( const VariantInterface variant) const
pure virtual

Returns true if this is a subtype of type. E.g. INT_16.isVariant(INT) == true.

Implemented in stromx::runtime::Variant, stromx::runtime::Visualization, stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ lhs()

const VariantHandle stromx::runtime::VariantInterface::lhs ( ) const
virtual

The left hand side of the composition.

Reimplemented in stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ package()

virtual const std::string& stromx::runtime::VariantInterface::package ( ) const
pure virtual

Returns the package this data variant belongs to.

Implemented in stromx::runtime::Variant, stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ rhs()

const VariantHandle stromx::runtime::VariantInterface::rhs ( ) const
virtual

The right hand side of the composition.

Reimplemented in stromx::runtime::VariantHandle, and stromx::runtime::VariantComposite.

§ title()

virtual const std::string stromx::runtime::VariantInterface::title ( ) const
pure virtual

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