CGraphicSequencer Class Reference

The CGraphicSequencer object offers several services to enable custom rendering passes in the OpenGL viewport. More...

#include <xsi_graphicsequencer.h>

List of all members.

Public Member Functions

  CGraphicSequencer ()
  ~CGraphicSequencer ()
CStatus  RegisterDisplayCallback (const CString &in_szName, const LONG in_lStateFlags, const siDisplayCallback in_eType, const siViewMode in_eViewMode, const CString &in_szCustomViewModeName) const
CStatus  RegisterPassCallback (const CString &in_szPassName, const LONG in_lStateFlags, const LONG in_lPassFlags, const CString &in_szRelativePassName) const
CStatus  RenderSceneUsingMode (const siViewMode in_eViewMode, INT in_lRenderFlags) const
CStatus  RenderSceneUsingMaterial (const CString &in_szShaderName, INT in_lRenderFlags) const
CStatus  RenderListUsingMode (const CRefArray &in_pObjectList, const siViewMode in_eViewMode) const
CStatus  RenderListUsingMaterial (const CRefArray &in_pObjectList, const CString &in_szShaderName) const
CStatus  GetNbStates (siXGSStateType in_eType, INT *out_pNbStates) const
CStatus  DeleteState (siXGSStateType in_eType, const CString &in_pID) const
CStatus  CreateState (siXGSStateType in_eType, const CString &in_pID, void *in_pValuePtr, void **out_pStateHandle) const
CStatus  GetStateHandle (siXGSStateType in_eType, const CString &in_pID, void **out_pStateHandle) const
CStatus  GetStateValue (siXGSStateType in_eType, void *in_lStateHandle, void *out_pStateValue) const
CStatus  SetStateValue (siXGSStateType in_eType, void *in_lStateHandle, void *in_pStateValue) const
CStatus  GetSceneDirtyFlag (bool *out_bBool) const
CStatus  GetContextFlags (LONG *out_lFlags) const
CRef  GetCamera () const


Detailed Description

The CGraphicSequencer object offers several services to enable custom rendering passes in the OpenGL viewport.

You cannot instantiate a CGraphicSequencer object directly. Rather, you receive an instance when your XGS plug-ins are called; that is, in a Custom Display callback or a Custom OpenGL Pass.

See also:
GraphicSequencerContext, siViewMode, siXGSRenderFlag
Since:
4.0


Constructor & Destructor Documentation

CGraphicSequencer (  ) 

Default constructor.

~CGraphicSequencer (  ) 

Default destructor.


Member Function Documentation

CStatus RegisterDisplayCallback ( const CString in_szName,
const LONG  in_lStateFlags,
const siDisplayCallback  in_eType,
const siViewMode  in_eViewMode,
const CString in_szCustomViewModeName  
) const

Registers a new Display callback with the OGS.

Parameters:
in_szName  The display callback name
in_lStateFlags  The callback state flags
in_eType  The type of callback (see siDisplayCallback)
in_eViewMode  The view mode (see siViewMode)
in_szCustomViewModeName  The name to use for the new custom view mode
Returns:
CStatus::OK if the new display callback was registered

CStatus::Fail if the registration failed

CStatus RegisterPassCallback ( const CString in_szPassName,
const LONG  in_lStateFlags,
const LONG  in_lPassFlags,
const CString in_szRelativePassName  
) const

Registers a new Pass callback with the OGS.

Warning:
Not Implemented. Use CGraphicSequencer::RegisterDisplayCallback with the in_eType parameter set to siPass instead.
Parameters:
in_szPassName  The pass callback name
in_lStateFlags  The callback state flags
in_lPassFlags  The pass callback flags
in_szRelativePassName  The name of the pass used for relative insertion.
Returns:
CStatus::OK if the new pass callback was registered

CStatus::Fail if the registration failed

CStatus RenderSceneUsingMode ( const siViewMode  in_eViewMode,
INT  in_lRenderFlags  
) const

Renders the scene using the specified legacy mode.

Parameters:
in_eViewMode  The legacy mode to use
in_lRenderFlags  The render flags to use (one of the siXGSRenderFlag values)
Returns:
CStatus::OK if the scene was successfully rendered

CStatus::Fail if the registration failed or if the mode was not found

See also:
siXGSRenderFlag

CStatus RenderSceneUsingMaterial ( const CString in_szShaderName,
INT  in_lRenderFlags  
) const

Renders the scene using the specified Shader material.

Parameters:
in_szShaderName  The name of the Shader to use for rendering
in_lRenderFlags  The render flags to use (one of the siXGSRenderFlag values)
Returns:
CStatus::OK if the scene was successfully rendered

CStatus::Fail if the registration failed or if the material was invalid

See also:
siXGSRenderFlag

CStatus RenderListUsingMode ( const CRefArray in_pObjectList,
const siViewMode  in_eViewMode  
) const

Renders a list of objects using the specified legacy mode.

Parameters:
in_pObjectList  The list of objects to draw (array of references to objects)
in_eViewMode  The legacy mode to use
Returns:
CStatus::OK if the list was successfully rendered

CStatus::Fail if the registration failed or if the mode was not found

CStatus RenderListUsingMaterial ( const CRefArray in_pObjectList,
const CString in_szShaderName  
) const

Renders a list of objects using a specific Shader material.

Parameters:
in_pObjectList  The list of objects to draw (array of references to objects)
in_szShaderName  The name of the Shader to use for rendering
Returns:
CStatus::OK if the list was successfully rendered

CStatus::Fail if the registration failed or if the mode was not found

CStatus GetNbStates ( siXGSStateType  in_eType,
INT *  out_pNbStates  
) const

Returns the number of states matching the specified type.

Parameters:
in_eType  The state type to count (one of the siXGSStateType values)
Return values:
out_pNbStates  Pointer to an integer holding the number of states
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus DeleteState ( siXGSStateType  in_eType,
const CString in_pID  
) const

Deletes a state by its identification (CString).

Parameters:
in_eType  The state type to delete (one of the siXGSStateType values)
in_pID  String identifying the state
Returns:
CStatus::OK on success

CStatus::Fail if the state was not found

CStatus CreateState ( siXGSStateType  in_eType,
const CString in_pID,
void *  in_pValuePtr,
void **  out_pStateHandle  
) const

Creates a new state.

Parameters:
in_eType  The state type to create (one of the siXGSStateType values)
in_pID  String identifying the new state
in_pValuePtr  The state value
Return values:
out_pStateHandle  The state handle
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus GetStateHandle ( siXGSStateType  in_eType,
const CString in_pID,
void **  out_pStateHandle  
) const

Returns the state handle by its identification (CString).

Parameters:
in_eType  The state type to get (one of the siXGSStateType values)
in_pID  String identifying the state
Return values:
out_pStateHandle  The state handle
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus GetStateValue ( siXGSStateType  in_eType,
void *  in_lStateHandle,
void *  out_pStateValue  
) const

Returns the specified state's value.

Parameters:
in_eType  The state type to get (one of the siXGSStateType values)
in_lStateHandle  The handle to the state
Return values:
out_pStateValue  Pointer to the state value
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus SetStateValue ( siXGSStateType  in_eType,
void *  in_lStateHandle,
void *  in_pStateValue  
) const

Sets the specified state's value.

Parameters:
in_eType  The state type to set (one of the siXGSStateType values)
in_lStateHandle  The handle to the state
in_pStateValue  Pointer to the state value
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus GetSceneDirtyFlag ( bool *  out_bBool  )  const

Indicates whether the scene has changed since the last frame.

Return values:
out_bBool  True if the scene has changed, false otherwise
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

CStatus GetContextFlags ( LONG *  out_lFlags  )  const

Returns a flag that indicates the context in which the rendering is occuring.

Return values:
out_lFlags  The context flags. These are bitwise flags of siXGSContextFlag values
Returns:
CStatus::OK on success

CStatus::Fail if the arguments are invalid

See also:
siXGSContextFlag
Since:
4.2

CRef GetCamera (  )  const

Returns the current camera object which is used for the current rendering

Returns:
CRef A reference to a Camera object
Since:
7.0


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