Clarisse 5.0 SP8 SDK  5.0.5.8.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Types | Public Member Functions | Public Attributes | List of all members
ModuleToolCallbacks Class Reference

Definition of the callbacks that are used by the Tools. More...

Inheritance diagram for ModuleToolCallbacks:
ModuleObjectCallbacks OfClassCallbacks

Public Types

typedef GuiWidget *(* GetOptionsCallback )(OfObject &, GuiWidget &)
 This function returns a pointer to the GuiWidget that is used to edit the options of the Tool.
 
typedef bool(* EnterToolCallback )(OfObject &, CtxTool &)
 This function is called when the mouse enters a Widget.
 
typedef void(* LeaveToolCallback )(OfObject &, CtxTool &)
 This function is called when the mouse exits a Widget.
 
typedef void(* PreDestroyToolCallback )(OfObject &, CtxTool &)
 This function is called when the Widget hosting the tool is destroyed. The tool is about to be destroyed.
 
typedef void(* UpdateToolCallback )(OfObject &, CtxTool &)
 This function is called if the tool needs to be udpated, for example if the selected object changes.
 
typedef void(* DrawToolCallback )(OfObject &, CtxTool &, CtxDraw &)
 This function is called before draw_2d, it can be used to build draw lists or initialise data .
 
typedef void(* DrawTool2dCallback )(OfObject &, CtxTool &)
 Callback used to draw in 2D in the Widgets.
 
typedef void(* DrawTool3dCallback )(OfObject &, CtxTool &)
 Callback used to draw in 3D in the Widgets.
 
typedef bool(* GetToolBboxCallback )(OfObject &, CtxTool &, GMathBbox3d &box)
 Callback used to retrieve tool (gizmo) bbox in 3D in the Widgets. Returns false if no bbox defined.
 
typedef bool(* GetActionsCallback )(OfObject &, CoreVector< GuiAction * > &actions)
 Callback used to retrieve tool actions. Returns false if no action defined.
 
typedef bool(* IsHiddenItemCallback )(OfObject &, CtxTool &, const OfObject &item)
 Callback used to query whether tool wants the specified object to be hidden (even when selected). Returns false by default.
 
typedef int(* ProcessEventCallback )(OfObject &, CtxTool &, const CtxToolEvent &)
 This callback is used to process events in the tool. It is called if the Widget having the focus has a tool set and does not handle the event itself.
 
typedef void(* OnVizrootChangeCallback )(OfObject &tool, const OfContext *vizroot)
 This function is called if the tool needs to be udpated whenever the application vizroot changes.
 
- Public Types inherited from ModuleObjectCallbacks
typedef void(* OnDestroyModuleCallback )(OfObject &)
 Called before the module deletion.
 
typedef ResourceData *(* CreateResourceCallback )(OfObject &, const int &, void *)
 Called lazily when a resource is not cached and has to be created.
 
typedef ResourceData *(* SetResourceDataCallback )(OfObject &, const int &, void *, const size_t &, const CoreString &)
 Deserialization callback for project resources.
 
typedef void(* OnResourceUpdateCallback )(OfObject &, const int &, const ResourceData *)
 Called everytime a resource is updated.
 
typedef CoreString(* MakeResourceKeyCallback )(OfObject &)
 Allows to generate a custom hash key for an object when a resource depends on it.
 
typedef CoreString(* GetResourceKeyCallback )(OfObject &, ResourceID, GeometryResourceOverride *)
 
typedef void(* InitiliazeResourcesCallback )(OfObject &)
 
typedef CoreString(* MakeAttributeKeyCallback )(const OfAttr &)
 Allows to generate a custom hash key for a given attribute. This callback is only called when needed, and on attributes which are listened to by a resource.
 
typedef ModuleCma *(* CreateCmaCallback )(const CtxEval *)
 Create a Clarisse Module Accessor class for this module, during this evaluation.
 
typedef bool(* OnNewTime )(OfObject &, const double &)
 Notifies an object every time the main evaluation time changes (using the Timeline widget for instance), to update it and evaluate whether the object state changed or not with the time update.
 
typedef bool(* RequestVariable )(OfObject &, CoreHashTable< unsigned int, OfObjectVariableValue * > &variables)
 Does nothing.
 
typedef void(* RegisterVariable )(OfObject &, const CoreBasicArray< OfObjectVariableValue * > &variables, CoreVector< unsigned int > &unknown_variable_indices)
 Called to gather the variables defined in the OfObject and their values, among those requested by the application.
 
typedef void(* UnRegisterVariable )(OfObject &, const CoreBasicArray< OfObjectVariableValue * > &variables)
 Called to notify when variables are no longer needed by the application.
 
typedef void *(* CreateClassEvalData )(const OfClass &, const CtxEval &)
 Create a class evaluation data, that will be shared by all objects of this particular class during this evaluation.
 
typedef void(* DestroyClassEvalData )(const OfClass &, const CtxEval &, void *)
 Delete a class evaluation data, that has been shared by all objects of this particular class during this evaluation.
 
typedef void *(* CreateEvalData )(const OfObject &, const CtxEval &)
 Create an object evaluation data, that will be used by this particular object during this evaluation.
 
typedef void(* DestroyEvalData )(const OfObject &, const CtxEval &, void *)
 Delete an object evaluation data, that has been used by this particular object during this evaluation.
 
typedef void *(* CreateThreadData )(const OfObject &, const CtxEval &)
 Create an object thread data, that will be bound to both the current evaluation thread and the object during this evaluation.
 
typedef void(* DestroyThreadData )(const OfObject &, const CtxEval &, void *)
 Delete an object thread data, that was bound to both one evaluation thread and the object during this evaluation.
 
typedef void(* PostEvaluate )(const OfObject &, const CtxEval &)
 Called once at the end of an evaluation, if the object was referenced in the evaluation graph.
 
typedef void(* GetAttrPresetHints )(const OfObject &, const OfAttr &, CoreArray< bool > &)
 Allows to dynamically enable or disable entries among the list of preset values for an attribute on an object.
 
typedef void(* GetTrackingFilenames )(const OfObject &, const CoreString &, CoreArray< CoreString > &)
 Allows to customize on the fly the filenames to track for resources dirtiness.
 
typedef unsigned int(* GetObjectVariableLong )(const OfObject &, const CoreString &, long long *, const unsigned int &)
 Fetch the values of a variable in an object, typed as a long long.
 
typedef unsigned int(* GetObjectVariableDouble )(const OfObject &, const CoreString &, double *, const unsigned int &)
 Fetch the values of a variable in an object, typed as a double.
 
typedef GuiWidget *(* DeclareCustomUi )(const CoreVector< OfAttrHandle > &, GuiWidget &, void *custom_data)
 Create a custom user interface for an attribute of type custom_ui.
 
typedef GuiSpreadsheetCell *(* GetCustomTableCellUi )(const OfAttrTable &table, GuiSpreadsheetRow &parent, unsigned int column, unsigned int row, bool enabled)
 Create a custom spreadsheet cell for a column attribute (e.g. which is part of a table) that has been flagged with custom_cell_ui yes in its definition. When implementing this callback, you only have to create the correct spreadsheet cell type and initialize its content based on the table. Its enabled state will be set automatically.
 
typedef CoreString(* GetCustomAttributeLabel )(const OfAttr &attribute)
 
- Public Types inherited from OfClassCallbacks
typedef OfModule *(* CreateModuleCallback )(OfObject &, OfObjectFactory &)
 
typedef bool(* DestroyModuleCallback )(OfObject &, OfObjectFactory &, OfModule *)
 
typedef void(* ModuleConstructorCallback )(OfObject &, OfModule *)
 
typedef void(* ModuleDestructorCallback )(OfObject &, OfModule *)
 
typedef void *(* CreateModuleDataCallback )(const OfObject &)
 
typedef bool(* DestroyModuleDataCallback )(const OfObject &, void *)
 
typedef void(* OnAttributeChangeCallback )(OfObject &, const OfAttr &, int &, const int &)
 
typedef void(* OnSendEventCallback )(OfObject &, const CoreString &)
 
typedef void(* OnSerializeObjectCallback )(OfObject &)
 
typedef void(* OnPreDeserializeCallback )(OfObject &, const CoreVersion &, ParserGroup &parser_group)
 
typedef void(* OnPreDeserializeObjectCallback )(const CoreVersion &, ParserGroup &parser_group)
 
typedef void(* OnDeserializeObjectCallback )(OfObject &, const CoreVersion &, const ParserGroup &parser_group, const OfSerialOptions &serial_options)
 
typedef void(* SerializeUserDataCallback )(const OfObject &, ParserGroup &)
 
typedef void(* DeserializeUserDataCallback )(const OfObject &, const ParserGroup &)
 
typedef void(* PreProcessOverrideCallback )(OfObject &object, OfOverrides &overrides, const CoreString &obj_key)
 
typedef OfItemHandle(* GetTraversalItemCallback )(OfObject &object)
 
typedef ResourceData *(* CreateResourceCustomCallback )(OfObject &, void *)
 
typedef void(* OnResourceUpdateCustomCallback )(OfObject &, const int &, const ResourceData *)
 
typedef ResourceData *(* CreateResourceCustomOverrideCallback )(OfObject &, GeometryOverride &, void *)
 
typedef void(* SetShadingLayerValuesCallback )(OfObject &object, const CoreBasicArray< OfObject * > &, const CoreBasicArray< OfObject * > &, const CoreBasicArray< OfObject * > &)
 

Public Member Functions

virtual void init_callbacks (OfClassCallbacks &callbacks)
 
- Public Member Functions inherited from ModuleObjectCallbacks
void init_parent_callbacks (OfClass &base_class)
 

Public Attributes

GetOptionsCallback cb_get_options
 
EnterToolCallback cb_enter_tool
 
LeaveToolCallback cb_leave_tool
 
PreDestroyToolCallback cb_pre_destroy_tool
 
UpdateToolCallback cb_update_tool
 
DrawToolCallback cb_draw_tool
 
DrawTool2dCallback cb_draw_tool_2d
 
DrawTool3dCallback cb_draw_tool_3d
 
GetToolBboxCallback cb_get_tool_bbox
 
GetActionsCallback cb_get_actions
 
IsHiddenItemCallback cb_is_hidden_item
 
ProcessEventCallback cb_process_event
 
OnVizrootChangeCallback cb_on_vizroot_change
 
- Public Attributes inherited from ModuleObjectCallbacks
OnDestroyModuleCallback cb_on_destroy_module
 
CreateResourceCallback cb_create_resource
 
SetResourceDataCallback cb_set_resource_data
 
OnResourceUpdateCallback cb_on_resource_update
 
MakeResourceKeyCallback cb_make_resource_key
 
GetResourceKeyCallback cb_get_resource_key
 
InitiliazeResourcesCallback cb_initialize_resources
 
MakeAttributeKeyCallback cb_make_attribute_key
 
CreateCmaCallback cb_create_cma
 
OnNewTime cb_on_new_time
 
RequestVariable cb_request_variables
 
RegisterVariable cb_register_variables
 
UnRegisterVariable cb_unregister_variables
 
CreateClassEvalData cb_create_class_eval_data
 
DestroyClassEvalData cb_destroy_class_eval_data
 
CreateEvalData cb_create_eval_data
 
DestroyEvalData cb_destroy_eval_data
 
CreateThreadData cb_create_thread_data
 
DestroyThreadData cb_destroy_thread_data
 
PostEvaluate cb_post_evaluate
 
GetAttrPresetHints cb_get_attr_preset_hints
 
GetTrackingFilenames cb_get_tracking_filenames
 
GetObjectVariableLong cb_get_object_variable_long
 
GetObjectVariableDouble cb_get_object_variable_double
 
DeclareCustomUi cb_declare_custom_ui
 
GetCustomAttributeLabel cb_get_custom_attribute_label
 
GetCustomTableCellUi cb_get_custom_table_cell_ui
 
- Public Attributes inherited from OfClassCallbacks
CreateModuleCallback cb_create_module
 
DestroyModuleCallback cb_destroy_module
 
ModuleConstructorCallback cb_module_constructor
 
ModuleDestructorCallback cb_module_destructor
 
CreateModuleDataCallback cb_create_module_data
 
DestroyModuleDataCallback cb_destroy_module_data
 
OnAttributeChangeCallback cb_on_attribute_change
 
OnSendEventCallback cb_on_send_event
 
OnSerializeObjectCallback cb_on_serialize_object
 
OnDeserializeObjectCallback cb_on_deserialize_object
 
OnPreDeserializeCallback cb_on_pre_deserialize
 
OnPreDeserializeObjectCallback cb_on_pre_deserialize_object
 
SerializeUserDataCallback cb_serialize_user_data
 
DeserializeUserDataCallback cb_deserialize_user_data
 
PreProcessOverrideCallback cb_pre_process_override
 
GetTraversalItemCallback cb_get_traversal_item
 
SetShadingLayerValuesCallback cb_set_shading_layer_values
 

Detailed Description

Definition of the callbacks that are used by the Tools.

Member Typedef Documentation

typedef void(* ModuleToolCallbacks::DrawTool2dCallback)(OfObject &, CtxTool &)

Callback used to draw in 2D in the Widgets.

Note
When used from the 3DView or the ImageView, the function is called at the very end of the draw, to display overlay objects. The OpenGL context is set to draw in two dimensions in the whole widget.
typedef void(* ModuleToolCallbacks::DrawTool3dCallback)(OfObject &, CtxTool &)

Callback used to draw in 3D in the Widgets.

Note
When used from the 3DView or the ImageView, this function is called after 3D items have been displayed. The OpenGL projection matrix is set up using the camera used for the render.