I3DShUtilities Struct Reference
[Shell Utilities]

Inheritance diagram for I3DShUtilities:
IMCUnknown

List of all members.

Public Member Functions

virtual MCCOMErr MCCOMAPI CreateKeyFrame (I3DShKeyFrame **outKeyFrame, int32 itsType)=0
virtual MCCOMErr MCCOMAPI CreateTweenerChainLink (I3DShTweenerChainLink **outTweenerChainLink, int32 time, I3DShParamTimeLine *fatherTL)=0
virtual MCCOMErr MCCOMAPI RegisterNewKeyFrameType (I3DShKeyFrame *inKeyFrameType)=0
virtual MCCOMErr MCCOMAPI UnregisterNewKeyFrameType (I3DShKeyFrame *inKeyFrameType)=0
virtual MCCOMErr MCCOMAPI ResetImportReport ()=0
virtual MCCOMErr MCCOMAPI AddImportProblem (int16 msgIndex, TMCString &substitutionString, boolean allowMultipleEntries)=0
virtual MCCOMErr MCCOMAPI ShowImportReport (int16 dialogID, int16 strListID)=0
virtual MCCOMErr MCCOMAPI CalculateNormals (TMCArray< TFacet3D > *facetList, real smoothAngle)=0
virtual MCCOMErr MCCOMAPI BuildEdges (FacetMesh &mesh)=0
virtual MCCOMErr MCCOMAPI CreateMasterShader (I3DShShader *inShader, I3DShScene *inScene, I3DShMasterShader **outMasterShader)=0
virtual void MCCOMAPI WriteMasterShaderToBrowserFile (I3DShMasterShader *masterShader, IMCFile *file)=0
virtual MCCOMErr MCCOMAPI LoadMasterShaderFromBrowserFile (I3DShMasterShader **masterShader, IMCFile *file)=0
virtual MCCOMErr MCCOMAPI CreateColorShader (TMCColorRGB &inColor, I3DShShader **outShader)=0
virtual MCCOMErr MCCOMAPI CreateValueShader (real inValue, I3DShShader **outShader)=0
virtual MCCOMErr MCCOMAPI CreateTextureMapShader (IShTextureMap *inTexture, MapParams inMapParams, I3DShShader **outShader)=0
virtual MCCOMErr MCCOMAPI CreateMultiChannelShader (I3DShShader *inColorShader, I3DShShader *inHighlightShader, I3DShShader *inShininessShader, I3DShShader *inBumpShader, I3DShShader *inReflectionShader, I3DShShader *inTransparencyShader, I3DShShader *inRefractionShader, I3DShShader *inGlowShader, I3DShShader **outShader, I3DShShader *inAlphaShader=NULL, real bumpAmplitude=1)=0
virtual MCCOMErr MCCOMAPI CreateMultiChannelShader (I3DShShader *channelShader, uint32 index, I3DShShader **inOutMultiChannelShader)=0
virtual MCCOMErr MCCOMAPI CreateLayerShader (I3DShShader *colorShader, I3DShShader *maskShader, uint32 layerKind, TMCRect &position, I3DShShader **outLayerShader)=0
virtual MCCOMErr MCCOMAPI CreateLayersListShader (uint32 uvSpaceID, uint32 mappingMode, I3DShShader *inShader, I3DShShader **inOutShader)=0
virtual MCCOMErr MCCOMAPI CreateBinaryOperatorShader (IDType inType, I3DShShader *inShader1, I3DShShader *inShader2, I3DShShader **inOutShader)=0
virtual MCCOMErr MCCOMAPI CreateTextureMapFile (IShTextureMapFile **textureMapFile, IMCFile *file, IDType format)=0
virtual MCCOMErr MCCOMAPI RemoveDuplicateTexturesInRAM (TMCCountedPtrArray< IShTextureMap > &textures)=0
virtual MCCOMErr MCCOMAPI ReadTextureMap (IShTokenStream *stream, IShTextureMap **texturez)=0
virtual MCCOMErr MCCOMAPI WriteTextureMap (IShTokenStream *stream, IDType keyword, IShTextureMap *texture)=0
virtual boolean MCCOMAPI OptimizeShader (TMCCountedPtr< I3DShShader > &shader)=0
virtual MCCOMErr MCCOMAPI FindAllReferenceShaderDependencies (I3DShScene *scene, TMCCountedPtrArray< I3DShMasterShader > &inExcludedMasterShaders, TMCPtrArray< I3DShMasterShader > &outHostReferencedMasterShaders)=0
virtual MCCOMErr MCCOMAPI FindReferenceShaders (I3DShMasterShader *inMasterShader, TMCPtrArray< I3DShMasterShader > *outFoundList)=0
virtual MCCOMErr MCCOMAPI FlattenReferenceShaders (I3DShMasterShader *inOutMasterShader)=0
virtual MCCOMErr MCCOMAPI CreateMasterSound (IExSound *inSound, I3DShScene *inScene, IShMasterSound **outSound)=0
virtual void MCCOMAPI CreateModule (I3DShModule **module, IDType inModuleID, IMFDocument *inDocument)=0
virtual void MCCOMAPI ActivateModule (I3DShModule *inModule)=0
virtual uint32 MCCOMAPI GetGlobalModuleCount ()=0
virtual uint32 MCCOMAPI GetDocumentModuleCount (IMFDocument *inDocument)=0
virtual void MCCOMAPI GetGlobalModuleByIndex (I3DShModule **module, uint32 index)=0
virtual void MCCOMAPI GetDocumentModuleByIndex (I3DShModule **module, IMFDocument *inDocument, uint32 index)=0
virtual void MCCOMAPI GetGlobalModule (I3DShModule **module, IDType inModuleID)=0
virtual void MCCOMAPI GetDocumentModule (I3DShModule **module, IMFDocument *inDocument, IDType inModuleID)=0
virtual void MCCOMAPI LoadSceneDocument (ISceneDocument **sceneDoc, IMCFile *file, int32 format)=0
virtual boolean MCCOMAPI OpenSceneFileDialog (IMCFile **file, IDType &outSelectedFileFormat)=0
 Opens the open scene file dialog. Will prompt the user to select the file.
virtual boolean MCCOMAPI SaveSceneFileDialog (const TMCString &defaultFileName, IMCFile **file, IDType &outSelectedFileFormat)=0
 Display the save dialog. Will prompt the user to select the file.
virtual boolean MCCOMAPI ChooseSelectionDialog (ISceneSelection **selection, const TMCString &title, const TMCString &inExplanation, THierarchyFilter *filter, const ISceneSelection *defaultSelection=nil)=0
virtual boolean MCCOMAPI ChooseTreeIdPathListDialog (TTreeIdPathList &selection, const TMCString &title, const TMCString &inExplanation, THierarchyFilter *filter, const TTreeIdPathList *defaultSelection=nil)=0
virtual boolean MCCOMAPI ChooseTreeDialog (I3DShTreeElement **selected, const TMCString &title, const TMCString &inExplanation, THierarchyFilter *filter, const I3DShTreeElement *defaultTree=nil, I3DShTreeElement *rootOverride=nil)=0
virtual void MCCOMAPI GetPropertiesWindow (IMFPart **part)=0
virtual IHierarchyWindow *MCCOMAPI GetHierarchyWindow ()=0
virtual MCCOMErr MCCOMAPI CreateImageDocument (I3DImageDocument **imageDocument)=0
virtual void MCCOMAPI CreateChannel (IShChannel **channel, uint32 width, uint32 height, uint32 bitDepth, boolean supportUndo=false)=0
virtual void MCCOMAPI GetImmediateUpdateChannel (IChangeChannel **channel)=0
virtual MCCOMErr MCCOMAPI WriteTimeBased (IShTokenStream *stream, IDType keyword, ITimeBased *timeBased)=0
virtual MCCOMErr MCCOMAPI ReadTimeBased (IShTokenStream *stream, ITimeBased *timeBased)=0
virtual void MCCOMAPI SelectRoom (RoomID roomID, boolean dontPostUndoableAction=false)=0
virtual RoomID MCCOMAPI GetCurrentRoom ()=0
virtual boolean MCCOMAPI CurrentRoomWantsWireFrameActivation ()=0
virtual void MCCOMAPI GetDocumentChangeChannel (IChangeChannel **channel)=0
virtual void MCCOMAPI GetPreferencesChangeChannel (IChangeChannel **channel)=0
virtual void MCCOMAPI CreatePreviewMaker (IPreviewMaker **previewmaker)=0
virtual void MCCOMAPI CreateEmptyScene (I3DShScene **scene)=0
virtual void MCCOMAPI CreateScene (I3DShScene **scene, I3DShObject *primitive=NULL, const TMCCountedPtrArray< I3DShMasterShader > *masterShaders=NULL)=0
virtual TMCArray
< SEditorCouple > *MCCOMAPI 
GetEditorsList ()=0
virtual int32 MCCOMAPI GetEditor (int32 primitiveID)=0
virtual int32 MCCOMAPI GetPreferredEditor (int32 primitiveID)=0
virtual void MCCOMAPI SetPreferredEditor (int32 primitiveID, int32 editorID)=0
virtual void MCCOMAPI GetPrimitiveEditorsList (int32 inPrimitiveID, int32 inEditingType, TMCArray< SEditorCouple > *outList)=0
virtual boolean MCCOMAPI EditSelection (ISceneDocument *sceneDoc)=0
virtual I3DShTreeElement *MCCOMAPI GetTreeToEdit (I3DShTreeElement *tree)=0
 Given a tree, returns wich one is supposed to be edited (used to edit figure instances instead of their attribute set).
virtual I3DShTreeElement *MCCOMAPI GetControllingAttributeSet (I3DShTreeElement *tree)=0
virtual void MCCOMAPI ActivateDocument (IMFDocument *inDoc)=0
virtual void MCCOMAPI GetActiveDocument (IMFDocument **inDoc)=0
virtual void MCCOMAPI GetAppColorPref (const IDType colorID, TMCColorRGBA &color)=0
virtual void MCCOMAPI SetAppColorPref (const IDType colorID, const TMCColorRGBA &color)=0
virtual void MCCOMAPI GetMouseScreenPosition (TMCPoint &mouseLocation)=0
virtual void MCCOMAPI CreatePrimitiveByID (IDType primID, I3DShObject **shObject, const MCIID &riid, void **ppvObj)=0
virtual void MCCOMAPI PostSceneCommand (IDType inClassID, ISceneDocument *inSceneDocument)=0
virtual void MCCOMAPI InitLeakStats ()=0
virtual void MCCOMAPI EndLeakStats ()=0
virtual int32 MCCOMAPI GetTimeDisplayMode ()=0
virtual void MCCOMAPI SetTimeDisplayMode (int32 inMode)=0
virtual void MCCOMAPI GetCreatorString (TMCString &creator)=0
virtual MCCOMErr MCCOMAPI GetBasicToolGroup (IMFToolGroup **outToolGroup)=0
virtual MCCOMErr MCCOMAPI GetCameraToolGroup (IMFToolGroup **outToolGroup)=0
virtual MCCOMErr MCCOMAPI Get2DToolGroup (IMFToolGroup **outToolGroup)=0
virtual void MCCOMAPI GetLastImageOpenPath (TMCString &path)=0
virtual void MCCOMAPI GetLastImageSavePath (TMCString &path)=0
virtual void MCCOMAPI SetLastImageOpenPath (const TMCString &path)=0
virtual void MCCOMAPI SetLastImageSavePath (const TMCString &path)=0
virtual void MCCOMAPI GetLastSoundOpenPath (TMCString &path)=0
virtual void MCCOMAPI SetLastSoundOpenPath (const TMCString &path)=0
virtual ISceneDocument *MCCOMAPI GetLastActiveSceneDoc ()=0
virtual IDType MCCOMAPI GetDefaultInteractiveRendererID ()=0
virtual void MCCOMAPI SetDefaultInteractiveRendererID (IDType rendererID)=0
virtual real32 MCCOMAPI GetPreferedFrameRate ()=0
virtual void MCCOMAPI SetPreferedFrameRate (real32 fps)=0
virtual IDType MCCOMAPI GetPreferedTweenerID ()=0
virtual void MCCOMAPI GetPreferedTweenerID (IDType tweenID)=0
virtual void MCCOMAPI CreateInvisibleTree (I3DShInvisibleTree **ppvTree, I3DShMasterGroup *inMasterGroupContext)=0
virtual void MCCOMAPI WantsTexture ()=0
virtual void MCCOMAPI WantsNoTexture ()=0
virtual void MCCOMAPI SetIncrementalTexturerFlags (uint32 flags)=0
virtual void MCCOMAPI GetIncrementalTexturerFlags (uint32 &flags)=0
virtual void MCCOMAPI LoadScene (I3DShScene **scene, IMCFile *file, int32 format)=0
virtual uint32 MCCOMAPI ReplaceBrowserName (I3DShScene *inScene, const TMCString &inName)=0
virtual boolean MCCOMAPI GetDropDataFromScene (I3DShScene *inScene, IDType requestedType, void **outData)=0
virtual boolean MCCOMAPI SaveScene (I3DShScene *scene, IMCFile *file, IDType format, TMCPixelBucket *inPreview=NULL)=0
 Save a scene to a file.
virtual IMFPart *MCCOMAPI GetScenePreviewPart ()=0
virtual IMFPart *MCCOMAPI GetBrowserPart ()=0
virtual void MCCOMAPI GetIconChangeChannel (IChangeChannel **channel)=0
virtual boolean MCCOMAPI GetOpenglUseOneWindowPerView ()=0
virtual boolean MCCOMAPI GetOpenglUseDisplayLists ()=0
virtual TranscoderType MCCOMAPI GetFileFormatDefaultEncoding ()=0
virtual boolean MCCOMAPI IsRenderingNode ()=0
virtual int16 MCCOMAPI GetAppKind ()=0
virtual int16 MCCOMAPI GetAppMode ()=0
virtual boolean MCCOMAPI GetFileForReading (IMCFile **filePtr, const TMCString &fullPathName, IDType format, IDType fileFamily)=0
virtual void MCCOMAPI CreateNetworkComponent (IDType classID, IShNetworkComponent **remoteComponent)=0
virtual void MCCOMAPI ConvertToOtherModeler (I3DShModule *sourceModule)=0
virtual MCCOMErr MCCOMAPI LoadMasterClipDialog (I3DShAttributesSet *attributesSet, I3DShMasterClip **clip)=0
virtual void MCCOMAPI Set3DUnit (EUnits inUnit)=0
 Sets the unit used to display lengths in the application.
virtual EUnits MCCOMAPI Get3DUnit ()=0
 Gets the unit used to display lengths in the application.
virtual boolean MCCOMAPI ResolveMasterAmbiguity ()=0
 Resolve possible master editing ambiguity (if needed).
virtual void MCCOMAPI GetContentRuntimes (TMCClassArray< TMCDynamicString > &runtimes)=0
 Returns all content runtimes stored by the browser.
virtual void MCCOMAPI AddContentRuntimeFolder (const TMCDynamicString &runtimeFolder)=0
 Adds a content folder to the browser.
virtual boolean MCCOMAPI GetShouldConsolidateShadersOnLoad () const =0
 return true iff the shaders should be consolidated automaticlly on load

Detailed Description

I3DShUtilies provides access to a number of utilities from the Shell.


Member Function Documentation

virtual void MCCOMAPI I3DShUtilities::ActivateDocument ( IMFDocument inDoc  )  [pure virtual]

Activates a document.

Parameters:
inDoc 
virtual void MCCOMAPI I3DShUtilities::ActivateModule ( I3DShModule inModule  )  [pure virtual]

Activates a module (and deactivate any previously activated module)

virtual void MCCOMAPI I3DShUtilities::AddContentRuntimeFolder ( const TMCDynamicString runtimeFolder  )  [pure virtual]

Adds a content folder to the browser.

virtual MCCOMErr MCCOMAPI I3DShUtilities::AddImportProblem ( int16  msgIndex,
TMCString substitutionString,
boolean  allowMultipleEntries 
) [pure virtual]
Deprecated:
Do not use
virtual MCCOMErr MCCOMAPI I3DShUtilities::BuildEdges ( FacetMesh mesh  )  [pure virtual]

Build the edge list for a facetMesh

Parameters:
mesh The facet mesh.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CalculateNormals ( TMCArray< TFacet3D > *  facetList,
real  smoothAngle 
) [pure virtual]

Computes the normals of the facets and does smoothing if abs(smoothAngle) > 1E-5

Parameters:
facetList A triangle mesh.
smoothAngle The smoothing angle.
virtual boolean MCCOMAPI I3DShUtilities::ChooseSelectionDialog ( ISceneSelection **  selection,
const TMCString title,
const TMCString inExplanation,
THierarchyFilter filter,
const ISceneSelection defaultSelection = nil 
) [pure virtual]

Display a dialog with the scene hierarchy to make a multiple selection

Parameters:
selection The selection returned by the dialog
title The title of the dialog
filter The filter to hide some part of the hierarchy if nil displays a combobox to choose default filters
defaultSelection The selection that is shown when the dialog opens
Returns:
True if the user actually chose the Ok button
virtual boolean MCCOMAPI I3DShUtilities::ChooseTreeDialog ( I3DShTreeElement **  selected,
const TMCString title,
const TMCString inExplanation,
THierarchyFilter filter,
const I3DShTreeElement defaultTree = nil,
I3DShTreeElement rootOverride = nil 
) [pure virtual]

Display a dialog with the scene hierarchy to make a single selection of a tree

Parameters:
selected The tree selected by user
title The title of the dialog
inExplanation An explanation displayed at the bottom of the dialog
filter The filter to hide some part of the hierarchy if nil displays a combobox to choose default filters
defaultTree The tree that is shown selected when the dialog opens
Returns:
True if the user actually chose the Ok button
virtual boolean MCCOMAPI I3DShUtilities::ChooseTreeIdPathListDialog ( TTreeIdPathList selection,
const TMCString title,
const TMCString inExplanation,
THierarchyFilter filter,
const TTreeIdPathList defaultSelection = nil 
) [pure virtual]

Display a dialog with the scene hierarchy to make a multiple selection

Parameters:
selection The list of paths of the selection returned by the dialog
title The title of the dialog
inExplanation An explanation displayed at the bottom of the dialog
filter The filter to hide some part of the hierarchy if nil displays a combobox to choose default filters
defaultSelection The list of paths of the selection that is shown when the dialog opens
virtual void MCCOMAPI I3DShUtilities::ConvertToOtherModeler ( I3DShModule sourceModule  )  [pure virtual]

Launch the convert to other modeler dialog on the active submodule.

Parameters:
sourceModule the module of the primitive to convert
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateBinaryOperatorShader ( IDType  inType,
I3DShShader inShader1,
I3DShShader inShader2,
I3DShShader **  inOutShader 
) [pure virtual]

Creates a binary operator shader

Parameters:
inType The operator type (kMulOperatorShdr, kAddOperatorShdr...)
inShader1 The first operand.
inShader2 The second operand.
inOutShader The shader that is created.
virtual void MCCOMAPI I3DShUtilities::CreateChannel ( IShChannel **  channel,
uint32  width,
uint32  height,
uint32  bitDepth,
boolean  supportUndo = false 
) [pure virtual]

Creates a channel.

Don't forget to set the channel's ID after creation:

        TChannelID newChannelID(TChannelID::eARGB_CHANNEL, 1);
        channel->SetID(newChannelID);
Parameters:
channel The channel
width The width of the image in pixels.
height The height of the image in pixels.
bitDepth The bit depth of the image.
supportUndo Undo support on the channel.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateColorShader ( TMCColorRGB inColor,
I3DShShader **  outShader 
) [pure virtual]

Creates a simple Color Shader

Parameters:
inColor The color of the shader
outShader The shader that is created.
virtual void MCCOMAPI I3DShUtilities::CreateEmptyScene ( I3DShScene **  scene  )  [pure virtual]

Create an empty scene

virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateImageDocument ( I3DImageDocument **  imageDocument  )  [pure virtual]

Creates a new image document.

virtual void MCCOMAPI I3DShUtilities::CreateInvisibleTree ( I3DShInvisibleTree **  ppvTree,
I3DShMasterGroup inMasterGroupContext 
) [pure virtual]

Creates an object that has no geometry but is visible in the scene hierarchy. This is used for the VET export (animator, interactor...)

Parameters:
ppvTree The object created.
inMasterGroupContext The master group in which it should be inserted.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateKeyFrame ( I3DShKeyFrame **  outKeyFrame,
int32  itsType 
) [pure virtual]

Creates a keyframe.

Parameters:
outKeyFrame A pointer to the keyframe that is created.
itsType The type of keyframe we want to create.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateLayerShader ( I3DShShader colorShader,
I3DShShader maskShader,
uint32  layerKind,
TMCRect position,
I3DShShader **  outLayerShader 
) [pure virtual]

Creates a Layer Shader.

Parameters:
colorShader The shader of the layer.
maskShader The opacity shader.
layerKind The classID of the layer
position The rectangle in texture coordinates of the layer.
outLayerShader The layer shader that is built.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateLayersListShader ( uint32  uvSpaceID,
uint32  mappingMode,
I3DShShader inShader,
I3DShShader **  inOutShader 
) [pure virtual]

Creates a Layers List Shader or adds a Shader To a LayerList Shader : needed for multiple UV spaces on a primitive

Parameters:
uvSpaceID The UVSpace of the layer.
mappingMode The projection mapping
inShader The shader to be added
inOutShader The layer list shader that is created.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateMasterShader ( I3DShShader inShader,
I3DShScene inScene,
I3DShMasterShader **  outMasterShader 
) [pure virtual]

Creates a master Shader, sets its shader and insert the master in the scene.

Parameters:
inShader The shader tree to insert in the master shader.
inScene The scene in which the master shader should be added
outMasterShader The master shader that is created.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateMasterSound ( IExSound inSound,
I3DShScene inScene,
IShMasterSound **  outSound 
) [pure virtual]

Creates a Master Sound from the given Sound (only available in Pro version)

virtual void MCCOMAPI I3DShUtilities::CreateModule ( I3DShModule **  module,
IDType  inModuleID,
IMFDocument inDocument 
) [pure virtual]

Creates a new module of type inModuleID.

Parameters:
module The module that is created.
inModuleID The Class ID of the module to create.
inDocument The document to which the module should be attached (NULL if this is a global module).
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateMultiChannelShader ( I3DShShader channelShader,
uint32  index,
I3DShShader **  inOutMultiChannelShader 
) [pure virtual]

Creates Multi Channel &/or insert a shader in a channel by index if inOutMultiChannelShader = Null, create the multi channel shader.

virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateMultiChannelShader ( I3DShShader inColorShader,
I3DShShader inHighlightShader,
I3DShShader inShininessShader,
I3DShShader inBumpShader,
I3DShShader inReflectionShader,
I3DShShader inTransparencyShader,
I3DShShader inRefractionShader,
I3DShShader inGlowShader,
I3DShShader **  outShader,
I3DShShader inAlphaShader = NULL,
real  bumpAmplitude = 1 
) [pure virtual]

Create a multichannel shader. If you don't want to define a channel just pass NULL

virtual void MCCOMAPI I3DShUtilities::CreateNetworkComponent ( IDType  classID,
IShNetworkComponent **  remoteComponent 
) [pure virtual]

Creates a remote component in the main application. This function should only be called if you are in a rendering node. Remote components are used to access data that can only be accessed through the network.

If the component cannot be instantiated (for instance if it is not installed on the main application) the pointer is set to NULL.

Note that the network connection will remain open as long as the component exists. So you should destroy it as soon as you are done getting the data from the network.

Parameters:
classID The class ID of the component to create
remoteComponent A pointer to the remote component
virtual void MCCOMAPI I3DShUtilities::CreatePreviewMaker ( IPreviewMaker **  previewmaker  )  [pure virtual]

Creates a preview maker.

virtual void MCCOMAPI I3DShUtilities::CreatePrimitiveByID ( IDType  primID,
I3DShObject **  shObject,
const MCIID riid,
void **  ppvObj 
) [pure virtual]

Creates a primitive by its class ID. This is a convenient routine, because it hides the complexity of juggling between I3DShExternalPrimitive, IShComponent, I3DShPrimitiveComponent, I3DShObject, etc. It can return any of the following interfaces (when they make sense) : I3DShExternalPrimitive, IShComponent, I3DShPrimitiveComponent, I3DShObject, I3DShMaster, I3DShPrimitive, I3DShScene (if it is a scene), and any other primitive interface. Note : 'sc ' stands for scenes

Parameters:
primID 4 letters ID of the primitive (=classID for External ones)
shObject The primitive is always returned as a I3DShObject
riid Additionnal interface you can ask for
ppvObj Returned interface, or NULL if not found
virtual void MCCOMAPI I3DShUtilities::CreateScene ( I3DShScene **  scene,
I3DShObject primitive = NULL,
const TMCCountedPtrArray< I3DShMasterShader > *  masterShaders = NULL 
) [pure virtual]

Create a basic scene and add one instance

Parameters:
scene 
primitive 
masterShaders Array with the Master Shader at the index 0 following by the UV Space Shaders (UVSpaceShader[i] at the index i+1)
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateTextureMapFile ( IShTextureMapFile **  textureMapFile,
IMCFile file,
IDType  format 
) [pure virtual]

Create a texture map file.

virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateTextureMapShader ( IShTextureMap inTexture,
MapParams  inMapParams,
I3DShShader **  outShader 
) [pure virtual]

Creates a TextureMap Shader (IShTextureMap knows if its internal or external)

Parameters:
inTexture A texture map.
inMapParams The parameter of the map.
outShader The shader that is created.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateTweenerChainLink ( I3DShTweenerChainLink **  outTweenerChainLink,
int32  time,
I3DShParamTimeLine fatherTL 
) [pure virtual]

Creates a tweener chain link.

Parameters:
outTweenerChainLink A pointer to the tweenerchainlink that is created.
time The time associated with this link.
fatherTL The time line that contains this link.
virtual MCCOMErr MCCOMAPI I3DShUtilities::CreateValueShader ( real  inValue,
I3DShShader **  outShader 
) [pure virtual]

Creates a simple value Shader

Parameters:
inValue The value
outShader The value shader.
virtual boolean MCCOMAPI I3DShUtilities::CurrentRoomWantsWireFrameActivation (  )  [pure virtual]

True if we need to active the wireframes.

virtual boolean MCCOMAPI I3DShUtilities::EditSelection ( ISceneDocument sceneDoc  )  [pure virtual]

Opens the appropriate editors for the objects in the current selection Returns true if the selection was handled

virtual void MCCOMAPI I3DShUtilities::EndLeakStats (  )  [pure virtual]

Internal use only.

virtual MCCOMErr MCCOMAPI I3DShUtilities::FindAllReferenceShaderDependencies ( I3DShScene scene,
TMCCountedPtrArray< I3DShMasterShader > &  inExcludedMasterShaders,
TMCPtrArray< I3DShMasterShader > &  outHostReferencedMasterShaders 
) [pure virtual]

Finds All Shaders in a scene that have a reference shader that have a pointer on it. (It's possible to give an Array of shader to not llok at)

Parameters:
scene The scene.
inExcludedMasterShaders 
outHostReferencedMasterShaders 
virtual MCCOMErr MCCOMAPI I3DShUtilities::FindReferenceShaders ( I3DShMasterShader inMasterShader,
TMCPtrArray< I3DShMasterShader > *  outFoundList 
) [pure virtual]

Adds in the list all host referenced shaders used by inMasterShader, does not duplicate MasterShaders in the list

Parameters:
inMasterShader 
outFoundList Returns the list of reference shaders contained in the master shader.
virtual MCCOMErr MCCOMAPI I3DShUtilities::FlattenReferenceShaders ( I3DShMasterShader inOutMasterShader  )  [pure virtual]

Copy the shaders that are referenced by a reference shader into the shading tree.

virtual MCCOMErr MCCOMAPI I3DShUtilities::Get2DToolGroup ( IMFToolGroup **  outToolGroup  )  [pure virtual]

Returns a pointer to the 2D tool group (zoom, pan...).

Parameters:
outToolGroup A pointer to the 2D tool group.
virtual EUnits MCCOMAPI I3DShUtilities::Get3DUnit (  )  [pure virtual]

Gets the unit used to display lengths in the application.

virtual void MCCOMAPI I3DShUtilities::GetActiveDocument ( IMFDocument **  inDoc  )  [pure virtual]

Returns the active document.

virtual void MCCOMAPI I3DShUtilities::GetAppColorPref ( const IDType  colorID,
TMCColorRGBA color 
) [pure virtual]

Gets a color preference. kAppColorPref colorID constants are found in 3DPublicDefs.h.

Parameters:
colorID The ID of the color to get.
color The color that is returned.
virtual int16 MCCOMAPI I3DShUtilities::GetAppKind (  )  [pure virtual]

Internal use only

virtual int16 MCCOMAPI I3DShUtilities::GetAppMode (  )  [pure virtual]

Internal use only

virtual MCCOMErr MCCOMAPI I3DShUtilities::GetBasicToolGroup ( IMFToolGroup **  outToolGroup  )  [pure virtual]

Returns a pointer to the basic tool group (move, scale, rotate).

Parameters:
outToolGroup A pointer to the basic tool group.
virtual IMFPart* MCCOMAPI I3DShUtilities::GetBrowserPart (  )  [pure virtual]

Do not call if you don't know what you're doing! (There is only one single browser part so don't try showing two at the same time!)

virtual MCCOMErr MCCOMAPI I3DShUtilities::GetCameraToolGroup ( IMFToolGroup **  outToolGroup  )  [pure virtual]

Returns a pointer to the camera tool group .

Parameters:
outToolGroup A pointer to the camera tool group.
virtual void MCCOMAPI I3DShUtilities::GetContentRuntimes ( TMCClassArray< TMCDynamicString > &  runtimes  )  [pure virtual]

Returns all content runtimes stored by the browser.

virtual I3DShTreeElement* MCCOMAPI I3DShUtilities::GetControllingAttributeSet ( I3DShTreeElement tree  )  [pure virtual]
virtual void MCCOMAPI I3DShUtilities::GetCreatorString ( TMCString creator  )  [pure virtual]
virtual RoomID MCCOMAPI I3DShUtilities::GetCurrentRoom (  )  [pure virtual]

Returns the ID of the current room.

virtual IDType MCCOMAPI I3DShUtilities::GetDefaultInteractiveRendererID (  )  [pure virtual]

Gets the id of the default Interactive Renderer of the preferences (the classID of one component of the I3DExRendererBox ('RndB') family

virtual void MCCOMAPI I3DShUtilities::GetDocumentChangeChannel ( IChangeChannel **  channel  )  [pure virtual]

Returns the document change channel.

virtual void MCCOMAPI I3DShUtilities::GetDocumentModule ( I3DShModule **  module,
IMFDocument inDocument,
IDType  inModuleID 
) [pure virtual]

Returns a module attached to a document.

Parameters:
module A pointer to the module.
inDocument The document to which the module should be attached
inModuleID The class ID of the module.
virtual void MCCOMAPI I3DShUtilities::GetDocumentModuleByIndex ( I3DShModule **  module,
IMFDocument inDocument,
uint32  index 
) [pure virtual]

Returns a document module that is identified by an index.

Parameters:
module A pointer to the module.
inDocument The document to which the module should be attached
index The index of the module.
virtual uint32 MCCOMAPI I3DShUtilities::GetDocumentModuleCount ( IMFDocument inDocument  )  [pure virtual]

Returns the number of modules attached to a document.

Parameters:
inDocument The document.
virtual boolean MCCOMAPI I3DShUtilities::GetDropDataFromScene ( I3DShScene inScene,
IDType  requestedType,
void **  outData 
) [pure virtual]

Creates a drop data out of the content of a scene Returns true if the flavor/type is supported and outData was filled Supported flavors are: kDragFlavor_TreeElementNoChangeParent kDragFlavor_TreeElementList kDragFlavor_MasterObjectList kDragFlavor_MasterShaderList

virtual int32 MCCOMAPI I3DShUtilities::GetEditor ( int32  primitiveID  )  [pure virtual]

Gets the default modeler for a given primitive. Will return the "preferred" one if any was set. (there may be several native modelers for the same primitive).

Parameters:
primitiveID The class ID of the primitive.
virtual TMCArray<SEditorCouple>* MCCOMAPI I3DShUtilities::GetEditorsList (  )  [pure virtual]

Get the list of all the 3D Database entries for modelers

virtual TranscoderType MCCOMAPI I3DShUtilities::GetFileFormatDefaultEncoding (  )  [pure virtual]

Returns the language of the default file encoding to be used with opening files

virtual boolean MCCOMAPI I3DShUtilities::GetFileForReading ( IMCFile **  filePtr,
const TMCString fullPathName,
IDType  format,
IDType  fileFamily 
) [pure virtual]

Opens a file for reading. If we are in a rendering node, the file is fetched on the network and the IMCFile points to a copy of the file on the local machine.

This call should be used to read any file that can be accessed during a network rendering.

Parameters:
filePtr A pointer to a IMCFile that reference the local copy of the file
fullPathName The full path of the file including name and extension
format File format that we are looking for (for instance 'jpeg' for an jpeg image)
fileFamily File family that we are looking for (for instance 'imag' for an image)
virtual void MCCOMAPI I3DShUtilities::GetGlobalModule ( I3DShModule **  module,
IDType  inModuleID 
) [pure virtual]

Returns a global module identified by its classID.

Parameters:
module A pointer to the module.
inModuleID The class ID of the module.
virtual void MCCOMAPI I3DShUtilities::GetGlobalModuleByIndex ( I3DShModule **  module,
uint32  index 
) [pure virtual]

Returns a global module that is identified by an index.

Parameters:
module A pointer to the module.
index The index of the module.
virtual uint32 MCCOMAPI I3DShUtilities::GetGlobalModuleCount (  )  [pure virtual]

Returns the number of global modules.

virtual IHierarchyWindow* MCCOMAPI I3DShUtilities::GetHierarchyWindow (  )  [pure virtual]

Returns a pointer to the hierarchy/sequencer window.

virtual void MCCOMAPI I3DShUtilities::GetIconChangeChannel ( IChangeChannel **  channel  )  [pure virtual]

Returns the icon change channel.

virtual void MCCOMAPI I3DShUtilities::GetImmediateUpdateChannel ( IChangeChannel **  channel  )  [pure virtual]

Returns a pointer to the immediate update channel.

Parameters:
channel A pointer to the immediate update channel.
virtual void MCCOMAPI I3DShUtilities::GetIncrementalTexturerFlags ( uint32 flags  )  [pure virtual]

Get options ( swap V axis, render only 2D textures ) on the incremental texturer.

Parameters:
flags The flags.
virtual ISceneDocument* MCCOMAPI I3DShUtilities::GetLastActiveSceneDoc (  )  [pure virtual]

Returns the scene doc that was the last one to be the current doc. Returns NULL if there is no opened scene doc.

virtual void MCCOMAPI I3DShUtilities::GetLastImageOpenPath ( TMCString path  )  [pure virtual]

Returns the path to the folder of the last opened image.

Parameters:
path The path to the folder of the last opened image.
virtual void MCCOMAPI I3DShUtilities::GetLastImageSavePath ( TMCString path  )  [pure virtual]

Returns the path to the folder of the last saved image.

Parameters:
path The path to the folder of the last saved image.
virtual void MCCOMAPI I3DShUtilities::GetLastSoundOpenPath ( TMCString path  )  [pure virtual]

Returns the path to the folder of the last opened sound file.

Parameters:
path The path to the folder of the last opened sound file.
virtual void MCCOMAPI I3DShUtilities::GetMouseScreenPosition ( TMCPoint mouseLocation  )  [pure virtual]

Obtains the current mouse location.

Parameters:
mouseLocation The current mouse location.
virtual boolean MCCOMAPI I3DShUtilities::GetOpenglUseDisplayLists (  )  [pure virtual]

True if OpenGL uses display lists.

virtual boolean MCCOMAPI I3DShUtilities::GetOpenglUseOneWindowPerView (  )  [pure virtual]

Preference to fix some opengl problems with ati cards

virtual real32 MCCOMAPI I3DShUtilities::GetPreferedFrameRate (  )  [pure virtual]

Returns the default frame rate.

virtual void MCCOMAPI I3DShUtilities::GetPreferedTweenerID ( IDType  tweenID  )  [pure virtual]

Sets the class ID of the default tweener type.

Parameters:
tweenID The class ID of the default tweener type.
virtual IDType MCCOMAPI I3DShUtilities::GetPreferedTweenerID (  )  [pure virtual]

Returns the class ID of the default tweener type.

virtual void MCCOMAPI I3DShUtilities::GetPreferencesChangeChannel ( IChangeChannel **  channel  )  [pure virtual]

Returns the preference change channel.

virtual int32 MCCOMAPI I3DShUtilities::GetPreferredEditor ( int32  primitiveID  )  [pure virtual]

Gets the prefered modeler for a given primitive. Return 0 if none was set explicitely

Parameters:
primitiveID The class ID of the primitive.
virtual void MCCOMAPI I3DShUtilities::GetPrimitiveEditorsList ( int32  inPrimitiveID,
int32  inEditingType,
TMCArray< SEditorCouple > *  outList 
) [pure virtual]

Gets the list of modelers for this primitive. (You must create and provide the list)

Parameters:
inPrimitiveID The classID of the primitive
inEditingType 
outList The list of the modelers for this primitive.
virtual void MCCOMAPI I3DShUtilities::GetPropertiesWindow ( IMFPart **  part  )  [pure virtual]

Returns a pointer to the properties window.

Parameters:
part A pointer to the properties window.
virtual IMFPart* MCCOMAPI I3DShUtilities::GetScenePreviewPart (  )  [pure virtual]

Do not call if you don't know what you're doing! (There is only one single preview part so don't try showing two at the same time!)

virtual boolean MCCOMAPI I3DShUtilities::GetShouldConsolidateShadersOnLoad (  )  const [pure virtual]

return true iff the shaders should be consolidated automaticlly on load

virtual int32 MCCOMAPI I3DShUtilities::GetTimeDisplayMode (  )  [pure virtual]

Returns the time display mode (time or frame). See EETDisplayMode

virtual I3DShTreeElement* MCCOMAPI I3DShUtilities::GetTreeToEdit ( I3DShTreeElement tree  )  [pure virtual]

Given a tree, returns wich one is supposed to be edited (used to edit figure instances instead of their attribute set).

virtual void MCCOMAPI I3DShUtilities::InitLeakStats (  )  [pure virtual]

Internal use only.

virtual boolean MCCOMAPI I3DShUtilities::IsRenderingNode (  )  [pure virtual]

Returns true if the application is a rendering node (for network rendering)

virtual MCCOMErr MCCOMAPI I3DShUtilities::LoadMasterClipDialog ( I3DShAttributesSet attributesSet,
I3DShMasterClip **  clip 
) [pure virtual]

Open a dialog to load a clip for a given attributes set. The clip can be a cbr file as well as some other format supported by the attributes set.

Parameters:
attributesSet The attributes set
clip The created clip (NOTE: the clip is not added to the scene)
virtual MCCOMErr MCCOMAPI I3DShUtilities::LoadMasterShaderFromBrowserFile ( I3DShMasterShader **  masterShader,
IMCFile file 
) [pure virtual]

Loads a master shader from a browser file

See also:
WriteComponentToBrowserFile
Parameters:
masterShader Returns a pointer to the master shader loaded
file A pointer to the file from which the master shader will be loaded
Returns:
MC_S_OK if the file contained the right type of component
See also:
WriteMasterShaderToBrowserFile
virtual void MCCOMAPI I3DShUtilities::LoadScene ( I3DShScene **  scene,
IMCFile file,
int32  format 
) [pure virtual]

Loads a scene from a file. Note that this will not create a scene document. If you want to access a scene document, you should use LoadSceneDocument().

Parameters:
scene The scene that was loaded.
file The file from which we read the scene.
format The format of the file.
virtual void MCCOMAPI I3DShUtilities::LoadSceneDocument ( ISceneDocument **  sceneDoc,
IMCFile file,
int32  format 
) [pure virtual]

Loads a scene document from a file.

Parameters:
sceneDoc The scene document that is created.
file The file from which we read.
format The format of the file.
virtual boolean MCCOMAPI I3DShUtilities::OpenSceneFileDialog ( IMCFile **  file,
IDType outSelectedFileFormat 
) [pure virtual]

Opens the open scene file dialog. Will prompt the user to select the file.

Parameters:
file The file that is created.
outSelectedFileFormat The type of the file selected by the user.
Returns:
True if the user select a file
virtual boolean MCCOMAPI I3DShUtilities::OptimizeShader ( TMCCountedPtr< I3DShShader > &  shader  )  [pure virtual]

Optimizes the given shader, return true if something has been optimized

Parameters:
shader The shader to optimize.
virtual void MCCOMAPI I3DShUtilities::PostSceneCommand ( IDType  inClassID,
ISceneDocument inSceneDocument 
) [pure virtual]

Post a scene command

Parameters:
inClassID The class ID of the scene command.
inSceneDocument The scene document.
virtual MCCOMErr MCCOMAPI I3DShUtilities::ReadTextureMap ( IShTokenStream stream,
IShTextureMap **  texturez 
) [pure virtual]

Reads a texture map from a token stream.

Parameters:
stream The token stream.
texture The texture that is created.
virtual MCCOMErr MCCOMAPI I3DShUtilities::ReadTimeBased ( IShTokenStream stream,
ITimeBased timeBased 
) [pure virtual]

Reads a timebased.

Parameters:
stream 
timeBased 
virtual MCCOMErr MCCOMAPI I3DShUtilities::RegisterNewKeyFrameType ( I3DShKeyFrame inKeyFrameType  )  [pure virtual]

Use RegisterNewKeyFrameType to declare new types of animated data dynamically. 'inKeyFrameType' will be used as a template to create other keyframes of the same type, perform the interpolation, etc. Warning: 'inType' MUST BE UNIQUE, so register it with Eovia if you are using this procedure.

Parameters:
inKeyFrameType The keyframe type that should be registered.
virtual MCCOMErr MCCOMAPI I3DShUtilities::RemoveDuplicateTexturesInRAM ( TMCCountedPtrArray< IShTextureMap > &  textures  )  [pure virtual]

Will remove duplicated Textures in ram. When 2 textures are similar, the 2 IShTextures will have a ptr to one IShchannel. And the duplicated IShChannel will be released.

virtual uint32 MCCOMAPI I3DShUtilities::ReplaceBrowserName ( I3DShScene inScene,
const TMCString inName 
) [pure virtual]

Replace all the instances of <BrowserName> in the name of the scene by inName

Parameters:
inScene the scene to change
inName the new name to set
virtual MCCOMErr MCCOMAPI I3DShUtilities::ResetImportReport (  )  [pure virtual]
Deprecated:
Do not use
virtual boolean MCCOMAPI I3DShUtilities::ResolveMasterAmbiguity (  )  [pure virtual]

Resolve possible master editing ambiguity (if needed).

virtual boolean MCCOMAPI I3DShUtilities::SaveScene ( I3DShScene scene,
IMCFile file,
IDType  format,
TMCPixelBucket inPreview = NULL 
) [pure virtual]

Save a scene to a file.

Parameters:
scene The scene.
file The file to which we write.
format The type of the file.
inPreview Optional preview
Returns:
True if no error
virtual boolean MCCOMAPI I3DShUtilities::SaveSceneFileDialog ( const TMCString defaultFileName,
IMCFile **  file,
IDType outSelectedFileFormat 
) [pure virtual]

Display the save dialog. Will prompt the user to select the file.

Parameters:
file The file that is created.
outSelectedFileFormat The type of the file selected by the user.
Returns:
True if the user select a file
virtual void MCCOMAPI I3DShUtilities::SelectRoom ( RoomID  roomID,
boolean  dontPostUndoableAction = false 
) [pure virtual]

Change the current room.

Parameters:
roomID The ID of the room (see RoomID)
dontPostUndoableAction True if no undoable action should be posted.
virtual void MCCOMAPI I3DShUtilities::Set3DUnit ( EUnits  inUnit  )  [pure virtual]

Sets the unit used to display lengths in the application.

virtual void MCCOMAPI I3DShUtilities::SetAppColorPref ( const IDType  colorID,
const TMCColorRGBA color 
) [pure virtual]

Sets a color preference. kAppColorPref colorID constants are found in 3DPublicDefs.h.

Parameters:
colorID The ID of the color to get.
color The color.
virtual void MCCOMAPI I3DShUtilities::SetDefaultInteractiveRendererID ( IDType  rendererID  )  [pure virtual]

Sets the id of the default Interactive Renderer of the preferences

Parameters:
rendererID The classID of the default Interactive Renderer
virtual void MCCOMAPI I3DShUtilities::SetIncrementalTexturerFlags ( uint32  flags  )  [pure virtual]

Set options ( swap V axis, render only 2D textures ) on the incremental texturer.

Parameters:
flags The flags.
virtual void MCCOMAPI I3DShUtilities::SetLastImageOpenPath ( const TMCString path  )  [pure virtual]

Sets the path to the folder of the last opened image.

Parameters:
path The path to the folder of the last opened image.
virtual void MCCOMAPI I3DShUtilities::SetLastImageSavePath ( const TMCString path  )  [pure virtual]

Sets the path to the folder of the last saved image.

Parameters:
path The path to the folder of the last saved image.
virtual void MCCOMAPI I3DShUtilities::SetLastSoundOpenPath ( const TMCString path  )  [pure virtual]

Sets the path to the folder of the last opened sound file.

Parameters:
path The path to the folder of the last opened sound file.
virtual void MCCOMAPI I3DShUtilities::SetPreferedFrameRate ( real32  fps  )  [pure virtual]

Sets the default frame rate.

Parameters:
fps The default frame rate.
virtual void MCCOMAPI I3DShUtilities::SetPreferredEditor ( int32  primitiveID,
int32  editorID 
) [pure virtual]

Sets the prefered modeler for a given primitive. This becomes the one that GetEditor() will return

Parameters:
primitiveID The classID of the primitive
editorID The classID of the module (modeler)
virtual void MCCOMAPI I3DShUtilities::SetTimeDisplayMode ( int32  inMode  )  [pure virtual]

Sets the time display mode (time or frame). See EETDisplayMode

virtual MCCOMErr MCCOMAPI I3DShUtilities::ShowImportReport ( int16  dialogID,
int16  strListID 
) [pure virtual]
Deprecated:
Do not use
virtual MCCOMErr MCCOMAPI I3DShUtilities::UnregisterNewKeyFrameType ( I3DShKeyFrame inKeyFrameType  )  [pure virtual]

Counterpart of RegisterNewKeyFrameType

virtual void MCCOMAPI I3DShUtilities::WantsNoTexture (  )  [pure virtual]

Decrement the number of waiters in the IncrementalTexturer. If the number of waiters reach 0, the computation will be aborted ( noone needs it anymore ).

virtual void MCCOMAPI I3DShUtilities::WantsTexture (  )  [pure virtual]

Increments the number of waiters in the IncrementalTexturer so this one knows that some needs it.

virtual void MCCOMAPI I3DShUtilities::WriteMasterShaderToBrowserFile ( I3DShMasterShader masterShader,
IMCFile file 
) [pure virtual]

Writes a master shader to a browser file.

Parameters:
masterShader A pointer to the master shader to write
file A pointer to the file where the master shader will be saved
See also:
LoadMasterShaderFromBrowserFile
virtual MCCOMErr MCCOMAPI I3DShUtilities::WriteTextureMap ( IShTokenStream stream,
IDType  keyword,
IShTextureMap texture 
) [pure virtual]

Writes a texture map to a token stream (file).

Parameters:
stream The token stream.
keyword The keyword that identify the texture map.
texture The texture that is created.
virtual MCCOMErr MCCOMAPI I3DShUtilities::WriteTimeBased ( IShTokenStream stream,
IDType  keyword,
ITimeBased timeBased 
) [pure virtual]

Writes a time based.

Parameters:
stream 
keyword 
timeBased 

The documentation for this struct was generated from the following file:
Generated on Mon Apr 26 22:47:42 2010 for Carrara SDK Doc by  doxygen 1.6.3