Scene::LoadData Struct Reference


Detailed Description

Data structure to hold file import/load options, and diagnostic data.

Examples:

PLYImport/Importer.cpp, and PtexImporter/PtexImporter.h.

Definition at line 58 of file scene.h.

#include <scene.h>

List of all members.

Public Types

enum   UpdateFilter { updateGeometries = 0x00000001, updateCameras = 0x00000002, updateAll = 0xffffffff, updateNone = 0x00000000 }
 

This is used to determine which elements in the current scene get merged/updated with data from an imported scene.

More...
enum   IncludeFilter {
  includeGeometries = 0x00000001, includeCameras = 0x00000002, includeMaterials = 0x00000004, includeLights = 0x00000008,
  includeCurves = 0x00000010, includeSelectionSets = 0x00000020, includeTransformationPalettes = 0x00000040, includeAll = 0xffffffff,
  includeNone = 0x00000000
}
 

This is used to determine which types of scene elements should get loaded/merged into the scene.

More...

Public Member Functions

int &  IncludeFilter ()
  A bit-field that indicates what types of scene elements should be included in the load operation.
int &  UpdateFilter ()
  A bit-field that indicates what types of scene elements should be updated in the load operation.
bool &  Merge ()
  Indicates if the loaded data should be merged into the current scene.
void  AddDiagnosticMessage (const QString &sMessage)
  While loading scenes, Mudbox can append diagnostic messages to this data structure.
void  LogDiagnosticMessages () const
  Convenience method to print diagnostic messages to the log.
  LoadData (bool bMerge=false, int eIncludeFilter=includeAll, int eUpdateFilter=updateNone)
  Constructor based on merge, include, and update options.
  LoadData (int eUpdateFilter, bool bMerge=false)
  Constructor based on update and merge options.
bool  IncludeGeometries () const
  Convenience method to determine if geometries should be included in the load operation.
bool  IncludeCameras () const
  Convenience method to determine if cameras should be included in the load operation.
bool  IncludeMaterials () const
  Convenience method to determine if materials should be included in the load operation.
bool  IncludeLights () const
  Convenience method to determine if lights should be included in the load operation.
bool  IncludeCurves () const
  Convenience method to determine if curves should be included in the load operation.
bool  IncludeSelectionSets () const
  Convenience method to determine if selection sets should be included in the load operation.
bool  IncludeTransformationPalettes () const
  Convenience method to determine if transformation palettes should be included in the load operation.
bool  UpdateGeometries () const
  Convenience method to determine if matching geometries should be updated in the load operation.
bool  UpdateCameras () const
  Convenience method to determine if matching cameras should be updated in the load operation.

Static Public Member Functions

static LoadData  ByInclude (bool bGeoms, bool bCams, bool bMats, bool bLights, bool bCurves, bool bSets, bool bPalettes)
  Convenience method to construct a LoadData object based on what to include.
static LoadData ByMerge (bool bMerge=false)
  Convenience method to return a LoadData object based on merge mode.

Member Enumeration Documentation

This is used to determine which elements in the current scene get merged/updated with data from an imported scene.

Currently matching is done via names. For example, if there is a geometry named "Sphere" in the current scene, it will be matched with a geometry named "Sphere" in an imported scene, if it exists.

Enumerator:
updateGeometries 

Update matching geometries via the Transfer Details function.

updateCameras 

Update matching cameras.

updateAll 

Update all elements.

updateNone 

Update no elements.

Definition at line 64 of file scene.h.

        {
            updateGeometries = 0x00000001,  
            updateCameras = 0x00000002,     
            updateAll = 0xffffffff,         
            updateNone = 0x00000000         
        };

This is used to determine which types of scene elements should get loaded/merged into the scene.

Enumerator:
includeGeometries 

Include geometries.

includeCameras 

Include cameras.

includeMaterials 

Include materials.

includeLights 

Include lights.

includeCurves 

Include curves.

includeSelectionSets 

Include selection sets.

includeTransformationPalettes 

Include transformation palettes.

includeAll 

Inlude all scene elements.

includeNone 

Include no elements.

Definition at line 73 of file scene.h.

        {
            includeGeometries = 0x00000001,             
            includeCameras = 0x00000002,                
            includeMaterials = 0x00000004,              
            includeLights = 0x00000008,                 
            includeCurves = 0x00000010,                 
            includeSelectionSets = 0x00000020,          
            includeTransformationPalettes = 0x00000040, 
            includeAll = 0xffffffff,                    
            includeNone = 0x00000000                    
        };

Constructor & Destructor Documentation

LoadData ( bool  bMerge = false,
int  eIncludeFilter = includeAll,
int  eUpdateFilter = updateNone 
)

Constructor based on merge, include, and update options.

LoadData ( int  eUpdateFilter,
bool  bMerge = false 
)

Constructor based on update and merge options.


Member Function Documentation

int& IncludeFilter ( ) [inline]

A bit-field that indicates what types of scene elements should be included in the load operation.

Definition at line 88 of file scene.h.

{ return m_eIncludeFilter; }
int& UpdateFilter ( ) [inline]

A bit-field that indicates what types of scene elements should be updated in the load operation.

Definition at line 92 of file scene.h.

{ return m_eUpdateFilter; }
bool& Merge ( ) [inline]

Indicates if the loaded data should be merged into the current scene.

Definition at line 95 of file scene.h.

{ return m_bMerge; }
void AddDiagnosticMessage ( const QString sMessage ) [inline]

While loading scenes, Mudbox can append diagnostic messages to this data structure.

Definition at line 98 of file scene.h.

{ m_aDiagnosticMessages.push_back( sMessage ); }
void LogDiagnosticMessages ( ) const

Convenience method to print diagnostic messages to the log.

static LoadData ByInclude ( bool  bGeoms,
bool  bCams,
bool  bMats,
bool  bLights,
bool  bCurves,
bool  bSets,
bool  bPalettes 
) [static]

Convenience method to construct a LoadData object based on what to include.

static LoadData& ByMerge ( bool  bMerge = false ) [static]

Convenience method to return a LoadData object based on merge mode.

Sets the update filter to updateNone, and the include filter to includeAll Not thread-safe!

bool IncludeGeometries ( ) const [inline]

Convenience method to determine if geometries should be included in the load operation.

Definition at line 118 of file scene.h.

{ return m_eIncludeFilter & includeGeometries; }
bool IncludeCameras ( ) const [inline]

Convenience method to determine if cameras should be included in the load operation.

Definition at line 121 of file scene.h.

{ return m_eIncludeFilter & includeCameras; }
bool IncludeMaterials ( ) const [inline]

Convenience method to determine if materials should be included in the load operation.

Definition at line 124 of file scene.h.

{ return m_eIncludeFilter & includeMaterials; }
bool IncludeLights ( ) const [inline]

Convenience method to determine if lights should be included in the load operation.

Definition at line 127 of file scene.h.

{ return m_eIncludeFilter & includeLights; }
bool IncludeCurves ( ) const [inline]

Convenience method to determine if curves should be included in the load operation.

Definition at line 130 of file scene.h.

{ return m_eIncludeFilter & includeCurves; }
bool IncludeSelectionSets ( ) const [inline]

Convenience method to determine if selection sets should be included in the load operation.

Definition at line 133 of file scene.h.

{ return m_eIncludeFilter & includeSelectionSets; }
bool IncludeTransformationPalettes ( ) const [inline]

Convenience method to determine if transformation palettes should be included in the load operation.

Definition at line 136 of file scene.h.

{ return m_eIncludeFilter & includeTransformationPalettes; }
bool UpdateGeometries ( ) const [inline]

Convenience method to determine if matching geometries should be updated in the load operation.

Definition at line 139 of file scene.h.

{ return m_eUpdateFilter & updateGeometries; }
bool UpdateCameras ( ) const [inline]

Convenience method to determine if matching cameras should be updated in the load operation.

Definition at line 142 of file scene.h.

{ return m_eUpdateFilter & updateCameras; }

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