Assimp  v3.1.1 (June 2014)
Assimp::STEP::DB Class Reference

Lightweight manager class that holds the map of all objects in a STEP file. More...

Public Types

typedef std::set< const char * > InverseWhitelist
 
typedef std::map< uint64_t, const LazyObject *> ObjectMap
 
typedef std::map< std::string, ObjectSetObjectMapByType
 
typedef std::set< const LazyObject * > ObjectSet
 
typedef std::step_unordered_multimap< uint64_t, uint64_tRefMap
 
typedef std::pair< RefMap::const_iterator, RefMap::const_iterator > RefMapRange
 

Public Member Functions

uint64_t GetEvaluatedObjectCount () const
 
const HeaderInfoGetHeader () const
 
const LazyObjectGetObject (uint64_t id) const
 
const LazyObjectGetObject (const std::string &type) const
 
uint64_t GetObjectCount () const
 
const ObjectMapGetObjects () const
 
const ObjectMapByTypeGetObjectsByType () const
 
const RefMapGetRefs () const
 
const EXPRESS::ConversionSchemaGetSchema () const
 
bool KeepInverseIndicesForType (const char *const type) const
 
const LazyObjectMustGetObject (uint64_t id) const
 
const LazyObjectMustGetObject (const std::string &type) const
 
 ~DB ()
 

Friends

class LazyObject
 
void ReadFile (DB &db, const EXPRESS::ConversionSchema &scheme, const char *const *types_to_track, size_t len, const char *const *inverse_indices_to_track, size_t len2)
 
DBReadFileHeader (std::shared_ptr< IOStream > stream)
 

Detailed Description

Lightweight manager class that holds the map of all objects in a STEP file.

DB's are exclusively maintained by the functions in STEPFileReader.h

Member Typedef Documentation

◆ InverseWhitelist

typedef std::set<const char*> Assimp::STEP::DB::InverseWhitelist

◆ ObjectMap

typedef std::map<uint64_t,const LazyObject* > Assimp::STEP::DB::ObjectMap

◆ ObjectMapByType

typedef std::map<std::string, ObjectSet > Assimp::STEP::DB::ObjectMapByType

◆ ObjectSet

typedef std::set< const LazyObject*> Assimp::STEP::DB::ObjectSet

◆ RefMap

◆ RefMapRange

typedef std::pair<RefMap::const_iterator,RefMap::const_iterator> Assimp::STEP::DB::RefMapRange

Constructor & Destructor Documentation

◆ ~DB()

Assimp::STEP::DB::~DB ( )
inline

Member Function Documentation

◆ GetEvaluatedObjectCount()

uint64_t Assimp::STEP::DB::GetEvaluatedObjectCount ( ) const
inline

◆ GetHeader()

const HeaderInfo& Assimp::STEP::DB::GetHeader ( ) const
inline

◆ GetObject() [1/2]

const LazyObject* Assimp::STEP::DB::GetObject ( uint64_t  id) const
inline

◆ GetObject() [2/2]

const LazyObject* Assimp::STEP::DB::GetObject ( const std::string &  type) const
inline

◆ GetObjectCount()

uint64_t Assimp::STEP::DB::GetObjectCount ( ) const
inline

◆ GetObjects()

const ObjectMap& Assimp::STEP::DB::GetObjects ( ) const
inline

◆ GetObjectsByType()

const ObjectMapByType& Assimp::STEP::DB::GetObjectsByType ( ) const
inline

◆ GetRefs()

const RefMap& Assimp::STEP::DB::GetRefs ( ) const
inline

◆ GetSchema()

const EXPRESS::ConversionSchema& Assimp::STEP::DB::GetSchema ( ) const
inline

◆ KeepInverseIndicesForType()

bool Assimp::STEP::DB::KeepInverseIndicesForType ( const char *const  type) const
inline

◆ MustGetObject() [1/2]

const LazyObject& Assimp::STEP::DB::MustGetObject ( uint64_t  id) const
inline

◆ MustGetObject() [2/2]

const LazyObject& Assimp::STEP::DB::MustGetObject ( const std::string &  type) const
inline

Friends And Related Function Documentation

◆ LazyObject

friend class LazyObject
friend

◆ ReadFile

void ReadFile ( DB db,
const EXPRESS::ConversionSchema scheme,
const char *const *  types_to_track,
size_t  len,
const char *const *  inverse_indices_to_track,
size_t  len2 
)
friend

◆ ReadFileHeader

DB* ReadFileHeader ( std::shared_ptr< IOStream stream)
friend

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