Cortex
10.0.0-a4
|
#include <PDCParticleReader.h>
Public Member Functions | |
IE_CORE_DECLARERUNTIMETYPED (PDCParticleReader, ParticleReader) | |
PDCParticleReader (const std::string &fileName) | |
unsigned long | numParticles () override |
void | attributeNames (std::vector< std::string > &names) override |
DataPtr | readAttribute (const std::string &name) override |
![]() | |
IE_CORE_DECLARERUNTIMETYPED (ParticleReader, Reader) | |
ParticleReader (const std::string &description) | |
FloatParameter * | percentageParameter () |
const FloatParameter * | percentageParameter () const |
IntParameter * | percentageSeedParameter () |
const IntParameter * | percentageSeedParameter () const |
StringVectorParameter * | attributesParameter () |
const StringVectorParameter * | attributesParameter () const |
IntParameter * | realTypeParameter () |
const IntParameter * | realTypeParameter () const |
BoolParameter * | convertPrimVarNamesParameter () |
const BoolParameter * | convertPrimVarNamesParameter () const |
![]() | |
IE_CORE_DECLARERUNTIMETYPED (Reader, Op) | |
const std::string & | fileName () const |
virtual CompoundObjectPtr | readHeader () |
ObjectPtr | read () |
![]() | |
IE_CORE_DECLARERUNTIMETYPED (Op, Parameterised) | |
Op (const std::string &description, ParameterPtr resultParameter) | |
Op (const std::string &description, CompoundParameterPtr compoundParameter, ParameterPtr resultParameter) | |
ObjectPtr | operate () |
ObjectPtr | operate (const CompoundObject *operands) |
Performs the operation using the given values of parameters. | |
const Parameter * | resultParameter () const |
![]() | |
IE_CORE_DECLARERUNTIMETYPED (Parameterised, RunTimeTyped) | |
Parameterised (const std::string &description) | |
Parameterised (const std::string &description, CompoundParameterPtr compoundParameter) | |
Another constructor added later on that gives defines the CompoundParameter object to be hold in this Parameterised instance. | |
const std::string & | description () const |
Returns a description for this parameterised object. | |
CompoundParameter * | parameters () override |
const CompoundParameter * | parameters () const override |
Returns the parameters for query. | |
CompoundObject * | userData () |
Returns an object that anyone can use for storing anything. | |
const CompoundObject * | userData () const |
Read only version of the above. | |
![]() | |
IE_CORE_DECLAREMEMBERPTR (RunTimeTyped) | |
virtual TypeId | typeId () const |
virtual const char * | typeName () const |
virtual bool | isInstanceOf (TypeId typeId) const |
virtual bool | isInstanceOf (const char *typeName) const |
![]() | |
IE_CORE_DECLAREMEMBERPTR (RefCounted) | |
void | addRef () const |
Add a reference to the current object. | |
void | removeRef () const |
Remove a reference from the current object. | |
RefCount | refCount () const |
Returns the current reference count. | |
Static Public Member Functions | |
static bool | canRead (const std::string &fileName) |
![]() | |
static ReaderPtr | create (const std::string &fileName) |
static void | supportedExtensions (std::vector< std::string > &extensions) |
static void | supportedExtensions (TypeId typeId, std::vector< std::string > &extensions) |
static void | registerReader (const std::string &extensions, CanReadFn canRead, CreatorFn creator, TypeId typeId) |
![]() | |
static TypeId | staticTypeId () |
Returns the TypeId for this class, without needing an instance. | |
static const char * | staticTypeName () |
Returns the type name for this class, without needing an instance. | |
static TypeId | baseTypeId () |
static const char * | baseTypeName () |
static bool | inheritsFrom (TypeId typeId) |
Returns true if this class inherits from the specified type. | |
static bool | inheritsFrom (const char *typeName) |
Returns true if this class inherits from the specified type. | |
static bool | inheritsFrom (TypeId type, TypeId baseType) |
Returns true if type inherits from baseType. | |
static bool | inheritsFrom (const char *typeName, const char *baseTypeName) |
Returns true if typeName inherits from baseTypeName. | |
static TypeId | baseTypeId (TypeId typeId) |
Returns the base type of the given type, or InvalidTypeId if no such base exists. | |
static const std::vector< TypeId > & | baseTypeIds (TypeId typeId) |
static const std::set< TypeId > & | derivedTypeIds (TypeId typeId) |
static TypeId | typeIdFromTypeName (const char *typeName) |
static const char * | typeNameFromTypeId (TypeId typeId) |
static void | registerType (TypeId derivedTypeId, const char *derivedTypeName, TypeId baseTypeId) |
Allows external modules to register their own type ids. | |
Protected Member Functions | |
std::string | positionPrimVarName () override |
Returns the name of the original position primVar should we need to convert it to "P". | |
![]() | |
ObjectPtr | doOperation (const CompoundObject *operands) override |
float | particlePercentage () const |
int | particlePercentageSeed () const |
void | particleAttributes (std::vector< std::string > &names) |
RealType | realType () const |
bool | convertPrimVarNames () const |
template<typename T , typename F > | |
T::Ptr | filterAttr (const F *attr, float percentage, const Data *idAttr) const |
![]() | |
Reader (const std::string &description, ParameterPtr resultParameter=nullptr) | |
Additional Inherited Members | |
![]() | |
enum | RealType { Native = 0, Float = 1, Double = 2 } |
An enum for the values accepted by realTypeParameter(). | |
![]() | |
typedef boost::function< ReaderPtr(const std::string &fileName)> | CreatorFn |
typedef boost::function< bool(const std::string &fileName)> | CanReadFn |
![]() | |
typedef RefCounted | BaseClass |
A typedef for the class this class derives from. All RunTimeTyped classes define this typedef. | |
![]() | |
typedef size_t | RefCount |
![]() | |
typedef std::map< TypeId, TypeId > | BaseTypeRegistryMap |
typedef std::map< TypeId, std::vector< TypeId > > | BaseTypesRegistryMap |
typedef std::map< TypeId, std::set< TypeId > > | DerivedTypesRegistryMap |
typedef tbb::spin_rw_mutex | Mutex |
typedef std::map< TypeId, std::string > | TypeIdsToTypeNamesMap |
typedef std::map< std::string, TypeId > | TypeNamesToTypeIdsMap |
![]() | |
static BaseTypeRegistryMap & | baseTypeRegistry () |
static DerivedTypesRegistryMap & | derivedTypesRegistry () |
static BaseTypesRegistryMap & | completeBaseTypesRegistry () |
static DerivedTypesRegistryMap & | completeDerivedTypesRegistry () |
static void | derivedTypeIdsWalk (TypeId typeId, std::set< TypeId > &) |
static TypeIdsToTypeNamesMap & | typeIdsToTypeNames () |
static TypeNamesToTypeIdsMap & | typeNamesToTypeIds () |
![]() | |
FloatParameterPtr | m_percentageParameter |
IntParameterPtr | m_percentageSeedParameter |
StringVectorParameterPtr | m_attributesParameter |
IntParameterPtr | m_realTypeParameter |
BoolParameterPtr | m_convertPrimVarNamesParameter |
![]() | |
FileNameParameterPtr | m_fileNameParameter |
![]() | |
static Mutex | g_baseTypeIdsMutex |
static Mutex | g_derivedTypeIdsMutex |
The PDCParticleReader class implements the ParticleReader interface for Maya .pdc format particle caches. Percentage filtering of loaded particles is seeded using the particleId attribute, so is not only repeatable but also consistent from frame to frame.
|
overridevirtual |
Fills the passed vector with the names of all attributes in the file.
Implements IECore::ParticleReader.
|
overridevirtual |
Returns the number of particles in the file. This returns the absolute total, rather than one affected by the percentage parameter.
Implements IECore::ParticleReader.
|
overridevirtual |
Reads the specified attribute, filtered by the percentage specified in parameters(). Returns 0 if the attribute doesn't exist. The type of Data is chosen automatically to best represent the particle data.
Implements IECore::ParticleReader.