Partio
|
Particle Data Interface. More...
#include <Partio.h>
Public Types | |
typedef ParticleIterator< true > | const_iterator |
Public Member Functions | |
template<class T > | |
void | data (const ParticleAttribute &attribute, const int indexCount, const ParticleIndex *particleIndices, const bool sorted, T *values) |
template<class T > | |
const T * | data (const ParticleAttribute &attribute, const ParticleIndex particleIndex) const |
template<class T > | |
const T * | fixedData (const FixedAttribute &attribute) const |
virtual const std::vector< std::string > & | indexedStrs (const ParticleAttribute &attr) const =0 |
All indexed strings for an attribute. More... | |
virtual const std::vector< std::string > & | fixedIndexedStrs (const FixedAttribute &attr) const =0 |
All indexed strings for an attribute. More... | |
virtual int | lookupIndexedStr (const ParticleAttribute &attribute, const char *str) const =0 |
Looks up the index for a given string for a given attribute, returns -1 if not found. More... | |
virtual int | lookupFixedIndexedStr (const FixedAttribute &attribute, const char *str) const =0 |
Looks up the index for a given string for a given attribute, returns -1 if not found. More... | |
virtual void | dataAsFloat (const ParticleAttribute &attribute, const int indexCount, const ParticleIndex *particleIndices, const bool sorted, float *values) const =0 |
virtual void | findPoints (const float bboxMin[3], const float bboxMax[3], std::vector< ParticleIndex > &points) const =0 |
virtual float | findNPoints (const float center[3], int nPoints, const float maxRadius, std::vector< ParticleIndex > &points, std::vector< float > &pointDistancesSquared) const =0 |
virtual int | findNPoints (const float center[3], int nPoints, const float maxRadius, ParticleIndex *points, float *pointDistancesSquared, float *finalRadius2) const =0 |
virtual const_iterator | setupConstIterator (const int index=0) const =0 |
Produce a const iterator. More... | |
const_iterator | begin () const |
Produce a beginning iterator for the particles. More... | |
const_iterator | end () const |
Produce a ending iterator for the particles. More... | |
Public Member Functions inherited from Partio::ParticlesInfo | |
virtual void | release ()=0 |
virtual int | numParticles () const =0 |
Number of particles in the structure. More... | |
virtual int | numAttributes () const =0 |
Number of per-particle attributes. More... | |
virtual int | numFixedAttributes () const =0 |
Number of fixed attributes. More... | |
virtual bool | attributeInfo (const char *attributeName, ParticleAttribute &attribute) const =0 |
Lookup an attribute by name and store a handle to the attribute. More... | |
virtual bool | fixedAttributeInfo (const char *attributeName, FixedAttribute &attribute) const =0 |
Lookup an attribute by name and store a handle to the attribute. More... | |
virtual bool | attributeInfo (const int index, ParticleAttribute &attribute) const =0 |
Lookup an attribute by index and store a handle to the attribute. More... | |
virtual bool | fixedAttributeInfo (const int index, FixedAttribute &attribute) const =0 |
Lookup an attribute by index and store a handle to the attribute. More... | |
Protected Member Functions | |
virtual | ~ParticlesData () |
Protected Member Functions inherited from Partio::ParticlesInfo | |
virtual | ~ParticlesInfo () |
Private Member Functions | |
virtual void * | dataInternal (const ParticleAttribute &attribute, const ParticleIndex particleIndex) const =0 |
virtual void * | fixedDataInternal (const FixedAttribute &attribute) const =0 |
virtual void | dataInternalMultiple (const ParticleAttribute &attribute, const int indexCount, const ParticleIndex *particleIndices, const bool sorted, char *values) const =0 |
Friends | |
void | freeCached (ParticlesData *particles) |
Particle Data Interface.
This interface provides the ability to read data attributes for given particles and search for nearest neighbors using KD-Trees.
typedef ParticleIterator<true> Partio::ParticlesData::const_iterator |
|
inlineprotectedvirtual |
|
inline |
Produce a beginning iterator for the particles.
References setupConstIterator().
|
inline |
Fill the user supplied values array with data corresponding to the given list of particles. Specify whether or not your indices are sorted. note if T is void, then type checking is disabled.
References dataInternalMultiple(), and Partio::ParticleAttribute::type.
Referenced by Partio::ParticlesDataMutable::set(), and Partio::ParticlesDataMutable::setFixed().
|
inline |
References dataInternal().
|
pure virtual |
Fill the user supplied values array with data corresponding to the given list of particles. Specify whether or not your indices are sorted. Attributes that are not floating types are automatically casted before being placed in values.
|
privatepure virtual |
Implemented in Partio::ParticlesDataMutable.
Referenced by data().
|
privatepure virtual |
Referenced by data().
|
inline |
Produce a ending iterator for the particles.
|
pure virtual |
Find the N nearest neighbors that are within maxRadius distance using POD types NOTE: returns the number of found points and leaves in finalRadius2 the square of the final search radius used
|
pure virtual |
Find the N nearest neighbors that are within maxRadius distance using STL types (measured in standard 2-norm). If less than N are found within the radius, the search radius is not increased. NOTE: points/pointsDistancesSquared are cleared before use. Must call sort() before using this function
|
pure virtual |
Find the points within the bounding box specified. Must call sort() before using this function NOTE: points array is not pre-cleared.
|
inline |
References fixedDataInternal().
|
privatepure virtual |
Implemented in Partio::ParticlesDataMutable.
Referenced by fixedData().
|
pure virtual |
All indexed strings for an attribute.
|
pure virtual |
All indexed strings for an attribute.
|
pure virtual |
Looks up the index for a given string for a given attribute, returns -1 if not found.
|
pure virtual |
Looks up the index for a given string for a given attribute, returns -1 if not found.
|
pure virtual |
Produce a const iterator.
Referenced by begin().
|
friend |