Blender  V2.93
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
blender::io::alembic::AbcObjectReader Class Referenceabstract

#include <abc_reader_object.h>

Inherited by blender::io::alembic::AbcCameraReader, blender::io::alembic::AbcCurveReader, blender::io::alembic::AbcEmptyReader, blender::io::alembic::AbcMeshReader, blender::io::alembic::AbcNurbsReader, blender::io::alembic::AbcPointsReader, and blender::io::alembic::AbcSubDReader.

Public Types

typedef std::vector< AbcObjectReader * > ptr_vector
 

Public Member Functions

 AbcObjectReader (const Alembic::Abc::IObject &object, ImportSettings &settings)
 
virtual ~AbcObjectReader ()=default
 
const Alembic::Abc::IObject & iobject () const
 
virtual Alembic::AbcGeom::IXform xform ()
 
Objectobject () const
 
void object (Object *ob)
 
const std::string & name () const
 
const std::string & object_name () const
 
const std::string & data_name () const
 
bool inherits_xform () const
 
virtual bool valid () const =0
 
virtual bool accepts_object_type (const Alembic::AbcCoreAbstract::ObjectHeader &alembic_header, const Object *const ob, const char **err_str) const =0
 
virtual void readObjectData (Main *bmain, const Alembic::Abc::ISampleSelector &sample_sel)=0
 
virtual struct Meshread_mesh (struct Mesh *mesh, const Alembic::Abc::ISampleSelector &sample_sel, int read_flag, const char **err_str)
 
virtual bool topology_changed (Mesh *existing_mesh, const Alembic::Abc::ISampleSelector &sample_sel)
 
void setupObjectTransform (const float time)
 
void addCacheModifier ()
 
chrono_t minTime () const
 
chrono_t maxTime () const
 
int refcount () const
 
void incref ()
 
void decref ()
 
void read_matrix (float r_mat[4][4], const float time, const float scale, bool &is_constant)
 

Public Attributes

AbcObjectReaderparent_reader
 

Protected Member Functions

void determine_inherits_xform ()
 

Protected Attributes

std::string m_name
 
std::string m_object_name
 
std::string m_data_name
 
Objectm_object
 
Alembic::Abc::IObject m_iobject
 
ImportSettingsm_settings
 
chrono_t m_min_time
 
chrono_t m_max_time
 
int m_refcount
 
bool m_inherits_xform
 

Detailed Description

Definition at line 78 of file abc_reader_object.h.

Member Typedef Documentation

◆ ptr_vector

Definition at line 107 of file abc_reader_object.h.

Constructor & Destructor Documentation

◆ AbcObjectReader()

blender::io::alembic::AbcObjectReader::AbcObjectReader ( const Alembic::Abc::IObject &  object,
ImportSettings settings 
)
explicit

◆ ~AbcObjectReader()

virtual blender::io::alembic::AbcObjectReader::~AbcObjectReader ( )
virtualdefault

Member Function Documentation

◆ accepts_object_type()

virtual bool blender::io::alembic::AbcObjectReader::accepts_object_type ( const Alembic::AbcCoreAbstract::ObjectHeader &  alembic_header,
const Object *const  ob,
const char **  err_str 
) const
pure virtual

◆ addCacheModifier()

void blender::io::alembic::AbcObjectReader::addCacheModifier ( )

◆ data_name()

const std::string& blender::io::alembic::AbcObjectReader::data_name ( ) const
inline

Definition at line 126 of file abc_reader_object.h.

References m_data_name.

◆ decref()

void blender::io::alembic::AbcObjectReader::decref ( )

Definition at line 323 of file abc_reader_object.cc.

References BLI_assert, and m_refcount.

Referenced by CacheReader_free(), and import_endjob().

◆ determine_inherits_xform()

void blender::io::alembic::AbcObjectReader::determine_inherits_xform ( )
protected

Definition at line 71 of file abc_reader_object.cc.

References m_inherits_xform, and xform().

Referenced by AbcObjectReader().

◆ incref()

void blender::io::alembic::AbcObjectReader::incref ( )

Definition at line 318 of file abc_reader_object.cc.

References m_refcount.

Referenced by CacheReader_incref(), CacheReader_open_alembic_object(), and visit_object().

◆ inherits_xform()

bool blender::io::alembic::AbcObjectReader::inherits_xform ( ) const
inline

Definition at line 130 of file abc_reader_object.h.

References m_inherits_xform.

Referenced by import_startjob().

◆ iobject()

const IObject & blender::io::alembic::AbcObjectReader::iobject ( ) const

◆ maxTime()

chrono_t blender::io::alembic::AbcObjectReader::maxTime ( ) const

Definition at line 308 of file abc_reader_object.cc.

References m_max_time.

Referenced by import_startjob().

◆ minTime()

chrono_t blender::io::alembic::AbcObjectReader::minTime ( ) const

Definition at line 303 of file abc_reader_object.cc.

References m_min_time.

Referenced by import_startjob().

◆ name()

const std::string& blender::io::alembic::AbcObjectReader::name ( ) const
inline

Definition at line 118 of file abc_reader_object.h.

References m_name.

Referenced by import_startjob().

◆ object() [1/2]

Object * blender::io::alembic::AbcObjectReader::object ( ) const

Definition at line 105 of file abc_reader_object.cc.

References m_object.

Referenced by ABC_get_transform(), CacheReader_open_alembic_object(), and import_startjob().

◆ object() [2/2]

void blender::io::alembic::AbcObjectReader::object ( Object ob)

Definition at line 110 of file abc_reader_object.cc.

References m_object.

◆ object_name()

const std::string& blender::io::alembic::AbcObjectReader::object_name ( ) const
inline

Definition at line 122 of file abc_reader_object.h.

References m_object_name.

◆ read_matrix()

void blender::io::alembic::AbcObjectReader::read_matrix ( float  r_mat[4][4],
const float  time,
const float  scale,
bool &  is_constant 
)

◆ read_mesh()

struct Mesh * blender::io::alembic::AbcObjectReader::read_mesh ( struct Mesh mesh,
const Alembic::Abc::ISampleSelector &  sample_sel,
int  read_flag,
const char **  err_str 
)
virtual

◆ readObjectData()

virtual void blender::io::alembic::AbcObjectReader::readObjectData ( Main bmain,
const Alembic::Abc::ISampleSelector &  sample_sel 
)
pure virtual

◆ refcount()

int blender::io::alembic::AbcObjectReader::refcount ( ) const

Definition at line 313 of file abc_reader_object.cc.

References m_refcount.

Referenced by CacheReader_free(), and import_endjob().

◆ setupObjectTransform()

void blender::io::alembic::AbcObjectReader::setupObjectTransform ( const float  time)

◆ topology_changed()

bool blender::io::alembic::AbcObjectReader::topology_changed ( Mesh existing_mesh,
const Alembic::Abc::ISampleSelector &  sample_sel 
)
virtual

Reimplemented in blender::io::alembic::AbcMeshReader.

Definition at line 175 of file abc_reader_object.cc.

Referenced by ABC_mesh_topology_changed().

◆ valid()

virtual bool blender::io::alembic::AbcObjectReader::valid ( ) const
pure virtual

◆ xform()

Alembic::AbcGeom::IXform blender::io::alembic::AbcObjectReader::xform ( )
virtual

Returns the transform of this object. This can be the Alembic object itself (in case of an Empty) or it can be the parent Alembic object.

Definition at line 211 of file abc_reader_object.cc.

References m_iobject.

Referenced by blender::io::alembic::AbcEmptyReader::AbcEmptyReader(), determine_inherits_xform(), and read_matrix().

Member Data Documentation

◆ m_data_name

std::string blender::io::alembic::AbcObjectReader::m_data_name
protected

◆ m_inherits_xform

bool blender::io::alembic::AbcObjectReader::m_inherits_xform
protected

Definition at line 95 of file abc_reader_object.h.

Referenced by determine_inherits_xform(), inherits_xform(), and read_matrix().

◆ m_iobject

Alembic::Abc::IObject blender::io::alembic::AbcObjectReader::m_iobject
protected

◆ m_max_time

chrono_t blender::io::alembic::AbcObjectReader::m_max_time
protected

◆ m_min_time

chrono_t blender::io::alembic::AbcObjectReader::m_min_time
protected

◆ m_name

std::string blender::io::alembic::AbcObjectReader::m_name
protected

Definition at line 80 of file abc_reader_object.h.

Referenced by AbcObjectReader(), and name().

◆ m_object

Object* blender::io::alembic::AbcObjectReader::m_object
protected

◆ m_object_name

std::string blender::io::alembic::AbcObjectReader::m_object_name
protected

◆ m_refcount

int blender::io::alembic::AbcObjectReader::m_refcount
protected

Definition at line 93 of file abc_reader_object.h.

Referenced by decref(), incref(), and refcount().

◆ m_settings

ImportSettings* blender::io::alembic::AbcObjectReader::m_settings
protected

◆ parent_reader

AbcObjectReader* blender::io::alembic::AbcObjectReader::parent_reader

Definition at line 98 of file abc_reader_object.h.

Referenced by import_startjob(), and visit_object().


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