Blender V4.3
blender::io::usd::AbstractHierarchyIterator Class Referenceabstract

#include <IO_abstract_hierarchy_iterator.h>

Inherited by blender::io::TestingHierarchyIterator, blender::io::alembic::ABCHierarchyIterator, and blender::io::usd::USDHierarchyIterator.

Public Types

typedef std::map< std::string, AbstractHierarchyWriter * > WriterMap
typedef std::set< HierarchyContext * > ExportChildren
typedef std::map< ObjectIdentifier, ExportChildrenExportGraph
typedef std::map< ID *, std::string > ExportPathMap

Public Member Functions

 AbstractHierarchyIterator (Main *bmain, Depsgraph *depsgraph)
virtual ~AbstractHierarchyIterator ()
virtual void iterate_and_write ()
void release_writers ()
void set_export_subset (ExportSubset export_subset)
virtual std::string make_valid_name (const std::string &name) const
virtual std::string get_id_name (const ID *id) const
virtual std::string get_object_data_path (const HierarchyContext *context) const

Protected Member Functions

virtual std::string path_concatenate (const std::string &parent_path, const std::string &child_path) const
virtual bool mark_as_weak_export (const Object *object) const
virtual bool should_visit_dupli_object (const DupliObject *dupli_object) const
virtual ExportGraph::key_type determine_graph_index_object (const HierarchyContext *context)
virtual ExportGraph::key_type determine_graph_index_dupli (const HierarchyContext *context, const DupliObject *dupli_object, const DupliParentFinder &dupli_parent_finder)
virtual AbstractHierarchyWritercreate_transform_writer (const HierarchyContext *context)=0
virtual AbstractHierarchyWritercreate_data_writer (const HierarchyContext *context)=0
virtual AbstractHierarchyWritercreate_hair_writer (const HierarchyContext *context)=0
virtual AbstractHierarchyWritercreate_particle_writer (const HierarchyContext *context)=0
virtual void release_writer (AbstractHierarchyWriter *writer)=0
AbstractHierarchyWriterget_writer (const std::string &export_path) const
ExportChildrengraph_children (const HierarchyContext *context)

Protected Attributes

ExportGraph export_graph_
ExportPathMap duplisource_export_path_
Mainbmain_
Depsgraph * depsgraph_
WriterMap writers_
ExportSubset export_subset_

Detailed Description

Definition at line 193 of file IO_abstract_hierarchy_iterator.h.

Member Typedef Documentation

◆ ExportChildren

◆ ExportGraph

◆ ExportPathMap

Definition at line 203 of file IO_abstract_hierarchy_iterator.h.

◆ WriterMap

Constructor & Destructor Documentation

◆ AbstractHierarchyIterator()

blender::io::AbstractHierarchyIterator::AbstractHierarchyIterator ( Main * bmain,
Depsgraph * depsgraph )
explicit

Definition at line 163 of file abstract_hierarchy_iterator.cc.

◆ ~AbstractHierarchyIterator()

blender::io::AbstractHierarchyIterator::~AbstractHierarchyIterator ( )
virtual

Definition at line 168 of file abstract_hierarchy_iterator.cc.

Member Function Documentation

◆ create_data_writer()

virtual AbstractHierarchyWriter * blender::io::AbstractHierarchyIterator::create_data_writer ( const HierarchyContext * context)
protectedpure virtual

◆ create_hair_writer()

virtual AbstractHierarchyWriter * blender::io::AbstractHierarchyIterator::create_hair_writer ( const HierarchyContext * context)
protectedpure virtual

◆ create_particle_writer()

virtual AbstractHierarchyWriter * blender::io::AbstractHierarchyIterator::create_particle_writer ( const HierarchyContext * context)
protectedpure virtual

◆ create_transform_writer()

virtual AbstractHierarchyWriter * blender::io::AbstractHierarchyIterator::create_transform_writer ( const HierarchyContext * context)
protectedpure virtual

◆ determine_graph_index_dupli()

AbstractHierarchyIterator::ExportGraph::key_type blender::io::AbstractHierarchyIterator::determine_graph_index_dupli ( const HierarchyContext * context,
const DupliObject * dupli_object,
const DupliParentFinder & dupli_parent_finder )
protectedvirtual

Definition at line 471 of file abstract_hierarchy_iterator.cc.

◆ determine_graph_index_object()

AbstractHierarchyIterator::ExportGraph::key_type blender::io::AbstractHierarchyIterator::determine_graph_index_object ( const HierarchyContext * context)
protectedvirtual

Definition at line 437 of file abstract_hierarchy_iterator.cc.

◆ get_id_name()

std::string blender::io::AbstractHierarchyIterator::get_id_name ( const ID * id) const
virtual

Definition at line 207 of file abstract_hierarchy_iterator.cc.

◆ get_object_data_path()

std::string blender::io::AbstractHierarchyIterator::get_object_data_path ( const HierarchyContext * context) const
virtual

Definition at line 216 of file abstract_hierarchy_iterator.cc.

◆ get_writer()

AbstractHierarchyWriter * blender::io::AbstractHierarchyIterator::get_writer ( const std::string & export_path) const
protected

Definition at line 713 of file abstract_hierarchy_iterator.cc.

◆ graph_children()

AbstractHierarchyIterator::ExportChildren & blender::io::AbstractHierarchyIterator::graph_children ( const HierarchyContext * context)
protected

Definition at line 503 of file abstract_hierarchy_iterator.cc.

◆ iterate_and_write()

void blender::io::AbstractHierarchyIterator::iterate_and_write ( )
virtual

Definition at line 178 of file abstract_hierarchy_iterator.cc.

◆ make_valid_name()

std::string blender::io::AbstractHierarchyIterator::make_valid_name ( const std::string & name) const
virtual

Definition at line 202 of file abstract_hierarchy_iterator.cc.

◆ mark_as_weak_export()

bool blender::io::AbstractHierarchyIterator::mark_as_weak_export ( const Object * object) const
protectedvirtual

Definition at line 747 of file abstract_hierarchy_iterator.cc.

◆ path_concatenate()

std::string blender::io::AbstractHierarchyIterator::path_concatenate ( const std::string & parent_path,
const std::string & child_path ) const
protectedvirtual

Definition at line 741 of file abstract_hierarchy_iterator.cc.

◆ release_writer()

virtual void blender::io::AbstractHierarchyIterator::release_writer ( AbstractHierarchyWriter * writer)
protectedpure virtual

◆ release_writers()

void blender::io::AbstractHierarchyIterator::release_writers ( )

Definition at line 189 of file abstract_hierarchy_iterator.cc.

◆ set_export_subset()

void blender::io::AbstractHierarchyIterator::set_export_subset ( ExportSubset export_subset)

Definition at line 197 of file abstract_hierarchy_iterator.cc.

◆ should_visit_dupli_object()

bool blender::io::AbstractHierarchyIterator::should_visit_dupli_object ( const DupliObject * dupli_object) const
protectedvirtual

Definition at line 751 of file abstract_hierarchy_iterator.cc.

Member Data Documentation

◆ bmain_

Main* blender::io::AbstractHierarchyIterator::bmain_
protected

Definition at line 208 of file IO_abstract_hierarchy_iterator.h.

◆ depsgraph_

Depsgraph* blender::io::AbstractHierarchyIterator::depsgraph_
protected

Definition at line 209 of file IO_abstract_hierarchy_iterator.h.

◆ duplisource_export_path_

ExportPathMap blender::io::AbstractHierarchyIterator::duplisource_export_path_
protected

Definition at line 207 of file IO_abstract_hierarchy_iterator.h.

◆ export_graph_

ExportGraph blender::io::AbstractHierarchyIterator::export_graph_
protected

Definition at line 206 of file IO_abstract_hierarchy_iterator.h.

◆ export_subset_

ExportSubset blender::io::AbstractHierarchyIterator::export_subset_
protected

Definition at line 211 of file IO_abstract_hierarchy_iterator.h.

◆ writers_

WriterMap blender::io::AbstractHierarchyIterator::writers_
protected

Definition at line 210 of file IO_abstract_hierarchy_iterator.h.


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