FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
Public Member Functions | Protected Attributes | List of all members

A set of integer values which describes how to iterate over a certain set of values. More...

#include <HyperslabParameters.hpp>

Inheritance diagram for Fiber::HyperslabParameters:
Fiber::ElementIterator< vec3 > Fiber::ElementIterator< double > Fiber::ElementIterator< Eagle::FixedArray > Fiber::ElementIterator< T > Fiber::IteratorBase< vec3 > Fiber::IteratorBase< double > Fiber::IteratorBase< Eagle::FixedArray > Fiber::IteratorBase< T > Fiber::Iterator< vec3 > Fiber::Iterator< double > Fiber::Iterator< Eagle::FixedArray > Fiber::Iterator< T > Fiber::Iterator< Eagle::FixedArray< T, C > > Fiber::CreativeIterator< T > Fiber::MultiArrayBase< N, T > Fiber::MultiArrayBase< 1, T > Fiber::MultiArray< N, T, std::index_sequence< Is... > >

Public Member Functions

 HyperslabParameters (index_t Length, index_t Stride, index_t Offset) throw ()
 Simple constructorm sets shift and cropped members to zero.
 
 HyperslabParameters (const HyperslabParameters &H) throw ()
 Copy constructor.
 
 HyperslabParameters (index_t i, const HyperslabParameters &H) throw ()
 Pointer addition constructor (sets the shift member).
 
index_t getLength () const throw ()
 Return the number of elements which can be accessed through this ElementIterator.
 
index_t getOffset () const throw ()
 
index_t getStride () const throw ()
 
index_t getShift () const throw ()
 
index_t getCropped () const throw ()
 
bool isSeparatedCompound () const throw ()
 Tell if the iterator refers to a data set which is built from arrays of structure members, i.e.
 
index_t multiplicity () const throw ()
 Return number of elements which form an entity.
 
index_t maxcount () const throw ()
 Return the number of steps which can be traversed through this ElementIterator.
 
index_t count () const throw ()
 Return the number of steps which can be traversed through this ElementIterator.
 
void setCount (index_t size) throw ()
 Set the maximally allowed count, i.e.
 
index_t getIndex (index_t i, int c) const throw ()
 Given a major and a minor index, compute the overall index in the dataset according to.
 
HyperslabParametersgetHyperslabParameters () throw ()
 
const HyperslabParametersgetHyperslabParameters () const throw ()
 

Protected Attributes

index_t length
 The length (number of elements) of the data array.
 
index_t stride
 
index_t offset
 
index_t shift
 
index_t cropped
 

Detailed Description

A set of integer values which describes how to iterate over a certain set of values.

This class is a type-free base class.

Member Function Documentation

◆ count()

index_t Fiber::HyperslabParameters::count ( ) const
throw (
)
inline

◆ getIndex()

index_t Fiber::HyperslabParameters::getIndex ( index_t  i,
int  c 
) const
throw (
)
inline

Given a major and a minor index, compute the overall index in the dataset according to.

(shift + i)*stride + c*offset
Parameters
iThe major index, i.e. the index within an array of compound data types
cThe minor index, i.e. the component of a compound data type

References shift(), and stride().

Referenced by Fiber::UniformLookupBuilder::apply(), Fiber::FragmentSearch< PointType >::Contains(), and Fiber::ElementIterator< T >::getElement().

◆ isSeparatedCompound()

bool Fiber::HyperslabParameters::isSeparatedCompound ( ) const
throw (
)
inline

Tell if the iterator refers to a data set which is built from arrays of structure members, i.e.

it has the layout {XXXXYYYYZZZZ}.

Note
This function makes only sense if multiplicity() is larger than 1.

References stride().

Referenced by Fiber::Iterator< T >::Iterator().

◆ setCount()

void Fiber::HyperslabParameters::setCount ( index_t  size)
throw (
)
inline

Set the maximally allowed count, i.e.

the number of elements which can be traversed using this iterator. It can be less than the actual number of elements, but not more.

References maxcount(), and size().

Referenced by Fiber::farray_iterator(), Fiber::MultiArrayBase< 1, T >::MultiArrayBase(), and Fiber::MultiArrayBase< N, T >::MultiArrayBase().