[Next Chapter] [Index] [Help]

Contents

Title and Copyright Information

Preface
Audience
Organization
The FUSE Information Set
Send Us Your Comments
Conventions

1    FUSE EnCASE Overview

2    Using the Callable Interface
2.1    Overview of FUSE Messages
2.1.1    Initializing a Tool
2.1.2    Sending a Message
2.1.3    Receiving a Message
2.1.4    Obtaining Messaging Information
2.1.5    Responding to Failed Messaging
2.1.6    Managing Memory When Sending and Receiving Messages
2.2    Callable Interface Reference Section
2.2.1    C Functions
2.2.2    Script Command Options

3    Using the Tool Integration Language and Compiler
3.1    Creating a TIL File
3.1.1    Class
3.1.2    Attributes Clause
3.1.3    Messages Clause
3.1.4    States Clause
3.2    Using the TIL Compiler
3.2.1    Checking TIL File Syntax
3.2.2    Specifying Compiler Processing
3.2.3    Generating the Startup Script and Schema
3.2.4    Installing a Startup Script and Schema

4    Integrating a Tool Into FUSE
4.1    Integrating the minigrep Tool into FUSE
4.1.1    Writing the Message Functions
4.1.1.1    Initializing the minigrep Tool in FUSE
4.1.1.2    Communicating with the Control Panel
4.1.1.3    Specifying Interoperation with Other FUSE Tools
4.1.1.4    Writing the Responses to Message Receipt
4.1.2    Creating the minigrep Tool Til File
4.1.3    Building the minigrep Tool
4.1.4    Debugging the Tool Integration
4.2    Integrating a Tool with a Motif Interface into FUSE
4.2.1    Creating the Viewer Til File
4.2.2    Writing the Viewer Integration Code
4.2.2.1    Initializing the Viewer in FUSE
4.2.2.2    Communicating with the Control Panel
4.2.2.3    Sending and Receiving Messages
4.2.2.4    Viewer Integration Source Code
4.2.3    Building the Viewer Tool

5    FUSE Messages
5.1    Message Listing
5.1.1    char *AddToFilterList(char *target, char *filter_pattern );
5.1.2    trigger char *Build(char *target, char *reserved1, char *reserved2);
5.1.3    void BuilderFinish(char *target, char *makefile, char *outputfile, int status);
5.1.4    char *BuilderGetSelection(char *reserved1);
5.1.5    char *BuilderGraphUpdate();
5.1.6    char *BuilderSetSelection(char *target);
5.1.7    char *BuildTarget(char *target, char *makefile, char *options, char *engine, char *reserved1, char *reserved2);
5.1.8    char *CallGraphActOnSelection(char *action);
5.1.9    char *CallGraphCommand(char *action, int action_qualifier);
5.1.10    void CallGraphHighlightNotification(char *highlighted_type, char *node_type, char *node_name, char *node_path, int node_line, char *called_node_ type, char *called_node_name, char *called_node_path, int called_node_line);
5.1.11    trigger char *CallGraphSelect(char *node_type, char *name, char *path);
5.1.12    char *CallGraphSelectFunctionFile(char *name);
5.1.13    void CallGraphSelectionNotification(char *selection_type, char *node_type, char *node_name, char *node_path, int node_line, char *called_node_type, char *called_node_name, char *called_node_path, int called_node_line);
5.1.14    trigger char *CancelLock(char *libraryname, char *filename, char *revision);
5.1.15    trigger char *CancelLockDialog(char *libraryname, char *filename, char *revision);
5.1.16    void CancelLockNotification(int instance_id, char *libraryname, char *workdir, char *filename, char *revision, int *status);
5.1.17    trigger char *CheckIn(char *libraryname, char *filename, char *revision, char *comment, int keepfile, int filemode);
5.1.18    trigger char *CheckInDialog(char *libraryname, char *filename, char *revision);
5.1.19    void CheckInNotification(int instance_id, char *libraryname, char *workdir, char *filename, char *revision, int status);
5.1.20    trigger char *CheckOut(char *libraryname, char *filename, char *revision, int withlock, int overwrite);
5.1.21    trigger char *CheckOutDialog(char *libraryname, char *filename, char *revision);
5.1.22    void CheckOutNotification(int instance_id, char *libraryname, char *workdir, char *filename, char *revision, int status);
5.1.23    trigger char *ClassBrowserSelectClass(char *class);
5.1.24    char *CompareCommand(char *window_id, char *command, char *position);
5.1.25    trigger char *CompareLoadFile(char *window_id, char *file_ name, char *position);
5.1.26    void ConfirmReplaceFinished(char *query_id, int action);
5.1.27    char *ControlPanelCommand(char *req, char *param);
5.1.28    char *ControlPanelQuery(char *query, char *tool_class, int *tool_id, char *tool_group);
5.1.29    void DebuggerBreakActivated(char *target, char *source_ file, char *routine, int line_number, int break_id);
5.1.30    void DebuggerBreakDeactivated(char *target, char *source_ file, char *routine, int line_number, int break_id);
5.1.31    void DebuggerBreakDeleted(char *target, char *source_file, char *routine, int line_number, int break_id);
5.1.32    char *DebuggerBreakSet(char *target, char *source_file, char *routine, int line_number, int break_id );
5.1.33    char *DebuggerDeleteBreak(char *target, char *source_file, char *routine, int line_number, int break_id );
5.1.34    char *DebuggerSetBreak(char *target, char *source_file, char *routine, int line_number);
5.1.35    void DiagnosticShown(char *display_diagnostic_text, char *full_diagnostic_text, char *file_filter_pattern char *everywhere_filter_pattern, char *help_topic, int *next, int *previous, char *reserved1, char *reserved2,);
5.1.36    char *EditorAddLine(char *option, int linenum, char *text );
5.1.37    char *EditorAnnotate(char *direction, char *option, char *symbol, char *buffer, int linenum);
5.1.38    char *EditorAnnotateLines(char *direction, char *option, char *symbol, char *buffer, char *lines, char *text);
5.1.39    char *EditorAppendLine(char *option, int linenum, char *text );
5.1.40    char *EditorBufferCommand(char *option, *char buffer);
5.1.41    char *EditorDeleteLine(char *option, int from, int to);
5.1.42    void EditorFileClosed(char *file-name);
5.1.43    void EditorFileReverted(char *file-name);
5.1.44    void EditorFileSaved(char *file-name);
5.1.45    char *EditorGotoLine(char *option, int linenum);
5.1.46    char *EditorHighlightLine(char *option, int from, int to);
5.1.47    char* EditorInsertFile(char *option, char *filename);
5.1.48    char *EditorNavigate(char *direction, char *option);
5.1.49    trigger char *EditorOpenFile(char *filename);
5.1.50    char *EditorQuery(char *query_type, char *buffer);
5.1.51    char *EditorReplace(char *direction, char *option,char *old_text, char *new_text);
5.1.52    char *EditorSearch(char *direction, char *option, char *text);
5.1.53    trigger void HelpShowTopic(char *product, char *mode, char *topic);
5.1.54    trigger char *InsertVersionedElement(char *libraryname, char *librarytype, char *filename, char *revision, char *comment, char *descname);
5.1.55    trigger char *InsertVersionedElementDialog(char *libraryname, char *librarytype, char *filename, char *revision);
5.1.56    void InsertVersionedElementNotification(int instance_id, char *libraryname, char *workdir, char *filename, char *revision, int status);
5.1.57    trigger char *LocateFunctionInLibraries(char *function_name, char *match_type);
5.1.58    trigger char *Lock(char *libraryname, char *filename, char *revision);
5.1.59    trigger char *LockDialog(char *libraryname, char *filename, char *revision);
5.1.60    void LockNotification(int instance_id, char *libraryname, char *workdir, char *filename, char *revision, int *status);
5.1.61    trigger char *LookupFunction (char *keywords, char *keywords_options, char *function_type, char *reserved);
5.1.62    trigger char *ManShowTopic(char *topic, char *section);
5.1.63    trigger char *ManShowTopicAtSearchString(char *topic, char *section, char *searchstring);
5.1.64    char *ManShowWhatis(char keyword);
5.1.65    trigger char *PrepareForConfirmReplace( );
5.1.66    void ProjectDataUpdatedNotification(char *project_file);
5.1.67    char *QuerySystemInformation(char *info);
5.1.68    char *RaiseProjectManager(char *tool_option, Boolean target_needed, Boolean makefile_needed, Boolean libraries_needed, char *reserved1, char *reserved2);
5.1.69    char *RaiseToolSpecificDialog(char *dialog, char *reserved);
5.1.70    char *ShowDiagnostic(int *direction);
5.1.71    trigger char *SearchFiles(char *search_directory, char *file_pattern, char *search_for_expression, char *match, char *case, char line_matching_mode, char *dir_scan_mode);
5.1.72    char *StartConfirmReplace(char *query_id, char *file, char *search_string, char *replace_string, int line, int any_case, int match_option, int more_files);
5.1.73    void ToolControlCommand(char *command, char *param);
5.1.74    void ToolControlNotification(char *event);
5.1.75    void ToolDisplayCommand(char *command, char *param);
5.1.76    void ToolDisplayNotification(char *event);
5.1.77    char *ToolStartNotification(char *class, long sid, char *hostname, int pid);
5.1.78    trigger char *VerifyVersionedElement(char *libraryname, char *filename, char *revision );
5.1.79    uint *VisualizeDataSet(char *filespec, uint clearFlag, uint deleteFlag, uint reserved );
5.1.80    trigger char *XrefDatabaseCommand(char *target, char *command );
5.1.81    void XrefDatabaseNotification(char *target, char *information );
5.1.82    trigger char *XrefDatabaseQuery(char *target, char *query_ type, char *name, char *name_match_type, char *file, char *line, char *call_from, char *call_from_match_type, char *data_type, char *data_type_match_type, char *class_ specifier);
5.1.83    trigger char *XrefGoToDeclaration(char *name, char *name_match_type, char *class_specifier );
5.1.84    trigger char *XrefShowQuery(char *query_type, char *name, char *name_match_type, char *file, char *line, char *call_from, char *call_from_match_type, char *data_type, char *data_type_match_type, char *class_specifier );

6    Using the Cross-Reference Callable Interface
6.1    Using the Callable Interface
6.1.1    Starting and Ending a Cross-Referencing Session
6.1.2    Marking the Start and End of Source Files
6.1.3    Marking the Start and End of Definitions and Scopes
6.1.4    Terminating Definitions, Scopes, and Files
6.1.5    Marking Declarations and Symbol References
6.1.5.1    Using the FUSE_XREF_Declaration Routine
6.1.5.2    Using the FUSE_XREF_Reference Routine
6.1.5.3    Using the FUSE_XREF_Call Routine
6.1.5.4    Using the FUSE_XREF_Member Routine
6.1.6    Allocating Memory for the Context Data
6.1.7    Error Handling
6.2    Callable Interface Reference Section
6.2.1    FUSE_XREF_Call
6.2.2    FUSE_XREF_ClassBegin
6.2.3    FUSE_XREF_ClassEnd
6.2.4    FUSE_XREF_Declaration
6.2.5    FUSE_XREF_FileBegin
6.2.6    FUSE_XREF_FileEnd
6.2.7    FUSE_XREF_Member
6.2.8    FUSE_XREF_Reference
6.2.9    FUSE_XREF_ScopeBegin
6.2.10    FUSE_XREF_ScopeEnd
6.2.11    FUSE_XREF_SessionBegin
6.2.12    FUSE_XREF_SessionEnd
6.2.13    FUSE_XREF_SubroutineBegin
6.2.14    FUSE_XREF_SubroutineEnd

A    Example Source Files
A.1    Source Files for minigrep Example
A.2    Files for Script Interface Example

Examples

A-1    minigrep Header File
A-2    minigrep C Source File, Part 1 of 2
A-3    minigrep C Source File, Part 2 of 2
A-4    Example Source File for Script Interface
A-5    Example TIL File for Script Interface
A-6    Example Makefile for Script Interface

Tables

Convention Table
2-1    Summary of FUSE Tool Messaging Activities
6-1    Cross-Reference Routines
6-2    Declaration Types


[Contents] [Preface] [Index] [Help]