Cortex  10.0.0-a4
Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
IECore::ParticleWriter Class Reference

#include <ParticleWriter.h>

+ Inheritance diagram for IECore::ParticleWriter:

Static Public Member Functions

static bool canWrite (ConstObjectPtr object, const std::string &fileName)
 Default implementation just checks that object is a PointsPrimitive instance.
 
- Static Public Member Functions inherited from IECore::Writer
static WriterPtr create (ObjectPtr object, const std::string &fileName)
 
static WriterPtr create (const std::string &fileName)
 
static void supportedExtensions (std::vector< std::string > &extensions)
 
static void supportedExtensions (TypeId typeId, std::vector< std::string > &extensions)
 
- Static Public Member Functions inherited from IECore::RunTimeTyped
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

 ParticleWriter (const std::string &description)
 
const PointsPrimitiveparticleObject ()
 
void particleAttributes (std::vector< std::string > &names)
 
size_t particleCount ()
 Returns the number of particles in particleObject()
 
- Protected Member Functions inherited from IECore::Writer
 Writer (const std::string &description, TypeId writableType)
 
 Writer (const std::string &description, const ObjectParameter::TypeIdSet &writableTypes)
 
ObjectPtr doOperation (const CompoundObject *operands) override
 Implemented to call doWrite(), so derived classes need only implement that.
 
virtual void doWrite (const CompoundObject *operands)=0
 

Protected Attributes

StringVectorParameterPtr m_attributesParameter
 
- Protected Attributes inherited from IECore::Writer
ParameterPtr m_objectParameter
 
FileNameParameterPtr m_fileNameParameter
 

Additional Inherited Members

- Public Types inherited from IECore::RunTimeTyped
typedef RefCounted BaseClass
 A typedef for the class this class derives from. All RunTimeTyped classes define this typedef.
 
- Public Types inherited from IECore::RefCounted
typedef size_t RefCount
 
- Public Member Functions inherited from IECore::Writer
const std::string & fileName () const
 
const Objectobject () const
 
void write ()
 
- Public Member Functions inherited from IECore::Op
 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 ParameterresultParameter () const
 
- Public Member Functions inherited from IECore::Parameterised
 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.
 
CompoundParameterparameters () override
 
const CompoundParameterparameters () const override
 Returns the parameters for query.
 
CompoundObjectuserData ()
 Returns an object that anyone can use for storing anything.
 
const CompoundObjectuserData () const
 Read only version of the above.
 
- Public Member Functions inherited from IECore::RunTimeTyped
 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
 
- Public Member Functions inherited from IECore::RefCounted
 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.
 
- Protected Types inherited from IECore::Writer
typedef WriterPtr(* CreatorFn) ()
 Definition of a function which can create a Writer.
 
typedef bool(* CanWriteFn) (ConstObjectPtr object, const std::string &fileName)
 
- Protected Types inherited from IECore::RunTimeTyped
typedef std::map< TypeId, TypeIdBaseTypeRegistryMap
 
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, TypeIdTypeNamesToTypeIdsMap
 
- Static Protected Member Functions inherited from IECore::Writer
static void registerWriter (const std::string &extensions, CanWriteFn canWrite, CreatorFn creator, TypeId typeId)
 
- Static Protected Member Functions inherited from IECore::RunTimeTyped
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 ()
 
- Static Protected Attributes inherited from IECore::RunTimeTyped
static Mutex g_baseTypeIdsMutex
 
static Mutex g_derivedTypeIdsMutex
 

Detailed Description

The ParticleWriter class defines an abstract base class for classes able to write particle cache file formats. Its main purpose is to define a standard set of parameters which all ParticleWriters should obey.

Member Function Documentation

void IECore::ParticleWriter::particleAttributes ( std::vector< std::string > &  names)
protected

Convenience functions to access the values held in parameters(). Fills names with the unions of the attributes requested to be saved and those actually present in the object being saved. It also omits any attributes with an incorrect number of elements.

const PointsPrimitive* IECore::ParticleWriter::particleObject ( )
protected

ParticleWriters only write objects of the PointsPrimitive type, so this function returns object() already cast and ready.


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