OpenWalnut  1.4.0
Public Types | Public Member Functions | Static Public Member Functions | Static Protected Attributes
WDataSetFiberVector Class Reference

Represents a simple set of WFibers. More...

#include <WDataSetFiberVector.h>

+ Inheritance diagram for WDataSetFiberVector:

List of all members.

Public Types

typedef boost::shared_ptr
< WDataSetFiberVector
SPtr
 Short hand for a boost::shared_ptr on such classes.

Public Member Functions

 WDataSetFiberVector ()
 Default constructor for creating an empty fiber vector.
 WDataSetFiberVector (boost::shared_ptr< std::vector< WFiber > > fibs)
 Constructs a new set of WFibers.
 WDataSetFiberVector (boost::shared_ptr< const WDataSetFibers > fiberDS)
 Convert a WDataSetFibers into a fiber vector dataset.
 WDataSetFiberVector (const WDataSetFiberVector &other)
 Copy constructor for fibers.
virtual ~WDataSetFiberVector ()
 Destructs WDataSetFiberVector instances.
WDataSetFiberVectoroperator= (const WDataSetFiberVector &other)
 Operator for assigning instances of WDataSetFiberVector.
void sortDescLength ()
 Sort fibers descending on their length and update.
boost::shared_ptr
< WDataSetFiberVector
generateDataSetOutOfUsedFibers (const std::vector< bool > &unused) const
 Generates new WDataSetFiberVector out of the used fibers from this dataset.
virtual bool isTexture () const
 Determines whether this dataset can be used as a texture.
virtual const std::string getName () const
 Gets the name of this prototype.
virtual const std::string getDescription () const
 Gets the description for this prototype.
boost::shared_ptr< WDataSetFiberstoWDataSetFibers () const
 Convert this dataset into WDataSetFibers format for other purposes if needed.

Static Public Member Functions

static boost::shared_ptr
< WPrototyped
getPrototype ()
 Returns a prototype instantiated with the true type of the deriving class.

Static Protected Attributes

static boost::shared_ptr
< WPrototyped
m_prototype = boost::shared_ptr< WPrototyped >()
 The prototype as singleton.

Detailed Description

Represents a simple set of WFibers.

Definition at line 41 of file WDataSetFiberVector.h.


Member Typedef Documentation

typedef boost::shared_ptr< WDataSetFiberVector > WDataSetFiberVector::SPtr

Short hand for a boost::shared_ptr on such classes.

Reimplemented from WDataSet.

Definition at line 47 of file WDataSetFiberVector.h.


Constructor & Destructor Documentation

Default constructor for creating an empty fiber vector.

Definition at line 37 of file WDataSetFiberVector.cpp.

Referenced by generateDataSetOutOfUsedFibers(), and getPrototype().

WDataSetFiberVector::WDataSetFiberVector ( boost::shared_ptr< std::vector< WFiber > >  fibs) [explicit]

Constructs a new set of WFibers.

Parameters:
fibsFiber vector to store in this data set

Definition at line 43 of file WDataSetFiberVector.cpp.

WDataSetFiberVector::WDataSetFiberVector ( boost::shared_ptr< const WDataSetFibers fiberDS) [explicit]

Convert a WDataSetFibers into a fiber vector dataset.

Parameters:
fiberDSDataset which has to be converted

Definition at line 49 of file WDataSetFiberVector.cpp.

References wlog::error(), WMixinVector< ValueT >::push_back(), WMixinVector< WFiber >::push_back(), WMixinVector< WFiber >::reserve(), WDataSet::setFilename(), and WMixinVector< WFiber >::size().

Copy constructor for fibers.

Parameters:
otherInstance to copy from

Definition at line 78 of file WDataSetFiberVector.cpp.

Destructs WDataSetFiberVector instances.

Definition at line 94 of file WDataSetFiberVector.cpp.


Member Function Documentation

boost::shared_ptr< WDataSetFiberVector > WDataSetFiberVector::generateDataSetOutOfUsedFibers ( const std::vector< bool > &  unused) const

Generates new WDataSetFiberVector out of the used fibers from this dataset.

Parameters:
unusedIf the i'th postion of this vector is true, then this fiber is considered as used.
Returns:
A reference to the new generate WDataSetFiberVector

Definition at line 104 of file WDataSetFiberVector.cpp.

References WMixinVector< WFiber >::at(), WMixinVector< WFiber >::size(), and WDataSetFiberVector().

const std::string WDataSetFiberVector::getDescription ( ) const [virtual]

Gets the description for this prototype.

Returns:
the description

Reimplemented from WDataSet.

Definition at line 128 of file WDataSetFiberVector.cpp.

const std::string WDataSetFiberVector::getName ( ) const [virtual]

Gets the name of this prototype.

Returns:
the name.

Reimplemented from WDataSet.

Definition at line 123 of file WDataSetFiberVector.cpp.

boost::shared_ptr< WPrototyped > WDataSetFiberVector::getPrototype ( ) [static]

Returns a prototype instantiated with the true type of the deriving class.

Returns:
the prototype.

Reimplemented from WDataSet.

Definition at line 133 of file WDataSetFiberVector.cpp.

References m_prototype, and WDataSetFiberVector().

bool WDataSetFiberVector::isTexture ( ) const [virtual]

Determines whether this dataset can be used as a texture.

Returns:
true if usable as texture.

Reimplemented from WDataSet.

Definition at line 118 of file WDataSetFiberVector.cpp.

WDataSetFiberVector & WDataSetFiberVector::operator= ( const WDataSetFiberVector other)

Operator for assigning instances of WDataSetFiberVector.

Parameters:
otherInstance which should replace this
Returns:
Reference for further usage of the outcome of the assigment

Definition at line 84 of file WDataSetFiberVector.cpp.

References WMixinVector< WFiber >::assign(), WMixinVector< ValueT >::begin(), and WMixinVector< ValueT >::end().

Sort fibers descending on their length and update.

Definition at line 99 of file WDataSetFiberVector.cpp.

References WMixinVector< WFiber >::begin(), and WMixinVector< WFiber >::end().

boost::shared_ptr< WDataSetFibers > WDataSetFiberVector::toWDataSetFibers ( ) const

Convert this dataset into WDataSetFibers format for other purposes if needed.

(e.g. display)

Returns:
Reference to the dataset in WDataSetFibers format

Definition at line 143 of file WDataSetFiberVector.cpp.

References WMixinVector< WFiber >::begin(), WMixinVector< ValueT >::begin(), WMixinVector< WFiber >::end(), WMixinVector< ValueT >::end(), WMixinVector< ValueT >::push_back(), WMixinVector< ValueT >::size(), and WMixinVector< WFiber >::size().


Member Data Documentation

boost::shared_ptr< WPrototyped > WDataSetFiberVector::m_prototype = boost::shared_ptr< WPrototyped >() [static, protected]

The prototype as singleton.

Reimplemented from WDataSet.

Definition at line 143 of file WDataSetFiberVector.h.

Referenced by getPrototype().


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