SAGA API v9.10
Loading...
Searching...
No Matches
tool.h File Reference
#include "parameters.h"

Go to the source code of this file.

Classes

class  CSG_Tool
class  CSG_Tool_Grid
class  CSG_Tool_Interactive_Base
class  CSG_Tool_Interactive
class  CSG_Tool_Grid_Interactive
class  CSG_Tool_Library_Interface

Macros

#define TOOL_INTERACTIVE_KEY_LEFT   0x01
#define TOOL_INTERACTIVE_KEY_MIDDLE   0x02
#define TOOL_INTERACTIVE_KEY_RIGHT   0x04
#define TOOL_INTERACTIVE_KEY_SHIFT   0x08
#define TOOL_INTERACTIVE_KEY_ALT   0x10
#define TOOL_INTERACTIVE_KEY_CTRL   0x20
#define SYMBOL_TLB_Initialize   "TLB_Initialize"
#define SYMBOL_TLB_Finalize   "TLB_Finalize"
#define SYMBOL_TLB_Get_Interface   "TLB_Get_Interface"
#define TLB_INTERFACE_SKIP_TOOL   ((CSG_Tool *)0x1)
#define TLB_INTERFACE_ESTABLISH
#define TLB_INTERFACE_INITIALIZE
#define TLB_INTERFACE_FINALIZE
#define TLB_INTERFACE   TLB_INTERFACE_ESTABLISH TLB_INTERFACE_INITIALIZE TLB_INTERFACE_FINALIZE

Typedefs

typedef CSG_Tool *(* TSG_PFNC_TLB_Create_Tool) (int i)
typedef CSG_String(* TSG_PFNC_TLB_Get_Info) (int i)
typedef bool(* TSG_PFNC_TLB_Initialize) (const SG_Char *)
typedef bool(* TSG_PFNC_TLB_Finalize) (void)
typedef CSG_Tool_Library_Interface *(* TSG_PFNC_TLB_Get_Interface) (void)

Enumerations

enum  TSG_Summary_Format { SG_SUMMARY_FMT_FLAT = 0 , SG_SUMMARY_FMT_HTML , SG_SUMMARY_FMT_XML }
enum  TSG_Tool_Type {
  TOOL_TYPE_Base = 0 , TOOL_TYPE_Interactive , TOOL_TYPE_Grid , TOOL_TYPE_Grid_Interactive ,
  TOOL_TYPE_Chain
}
enum  TSG_Tool_Error { TOOL_ERROR_Unknown = 0 , TOOL_ERROR_Calculation }
enum  TSG_Tool_Interactive_Mode {
  TOOL_INTERACTIVE_UNDEFINED = 0 , TOOL_INTERACTIVE_LDOWN , TOOL_INTERACTIVE_LUP , TOOL_INTERACTIVE_LDCLICK ,
  TOOL_INTERACTIVE_MDOWN , TOOL_INTERACTIVE_MUP , TOOL_INTERACTIVE_MDCLICK , TOOL_INTERACTIVE_RDOWN ,
  TOOL_INTERACTIVE_RUP , TOOL_INTERACTIVE_RDCLICK , TOOL_INTERACTIVE_MOVE , TOOL_INTERACTIVE_MOVE_LDOWN ,
  TOOL_INTERACTIVE_MOVE_MDOWN , TOOL_INTERACTIVE_MOVE_RDOWN
}
enum  TSG_Tool_Interactive_DragMode { TOOL_INTERACTIVE_DRAG_NONE = 0 , TOOL_INTERACTIVE_DRAG_LINE , TOOL_INTERACTIVE_DRAG_BOX , TOOL_INTERACTIVE_DRAG_CIRCLE }
enum  TSG_TLB_Info {
  TLB_INFO_Name = 0 , TLB_INFO_Description , TLB_INFO_Author , TLB_INFO_Version ,
  TLB_INFO_Menu_Path , TLB_INFO_Category , TLB_INFO_User , TLB_INFO_File ,
  TLB_INFO_Library , TLB_INFO_SAGA_Version , TLB_INFO_Count
}

Variables

CSG_Tool_Library_Interface TLB_Interface

Detailed Description

The definition of the base classes for any SAGA tool.

See also
CSG_Tool
CSG_Tool_Grid
CSG_Tool_Interactive
CSG_Tool_Library
CSG_Tool_Library_Manager

Definition in file tool.h.

Macro Definition Documentation

◆ SYMBOL_TLB_Finalize

#define SYMBOL_TLB_Finalize   "TLB_Finalize"

Definition at line 689 of file tool.h.

Referenced by CSG_Tool_Library::CSG_Tool_Library().

◆ SYMBOL_TLB_Get_Interface

#define SYMBOL_TLB_Get_Interface   "TLB_Get_Interface"

Definition at line 692 of file tool.h.

Referenced by CSG_Tool_Library::CSG_Tool_Library().

◆ SYMBOL_TLB_Initialize

#define SYMBOL_TLB_Initialize   "TLB_Initialize"

Definition at line 686 of file tool.h.

Referenced by CSG_Tool_Library::CSG_Tool_Library().

◆ TLB_INTERFACE

Definition at line 719 of file tool.h.

◆ TLB_INTERFACE_ESTABLISH

#define TLB_INTERFACE_ESTABLISH
Value:
\
extern "C" _SAGA_DLL_EXPORT CSG_Tool_Library_Interface * TLB_Get_Interface (void)\
{\
return( &TLB_Interface );\
}\
#define _SAGA_DLL_EXPORT
Definition api_core.h:86
CSG_Tool_Library_Interface TLB_Interface

Definition at line 699 of file tool.h.

◆ TLB_INTERFACE_FINALIZE

#define TLB_INTERFACE_FINALIZE
Value:
extern "C" _SAGA_DLL_EXPORT bool TLB_Finalize (void)\
{\
return( true );\
}\

Definition at line 713 of file tool.h.

◆ TLB_INTERFACE_INITIALIZE

#define TLB_INTERFACE_INITIALIZE
Value:
extern "C" _SAGA_DLL_EXPORT bool TLB_Initialize(const SG_Char *TLB_Path)\
{\
return( TLB_Interface.Create(SAGA_VERSION, TLB_Path, Get_Info, Create_Tool) );\
}\
#define SG_Char
Definition api_core.h:536
#define SAGA_VERSION
Definition saga_api.h:90

Definition at line 707 of file tool.h.

◆ TLB_INTERFACE_SKIP_TOOL

#define TLB_INTERFACE_SKIP_TOOL   ((CSG_Tool *)0x1)

◆ TOOL_INTERACTIVE_KEY_ALT

#define TOOL_INTERACTIVE_KEY_ALT   0x10

Definition at line 506 of file tool.h.

Referenced by CSG_Tool_Interactive_Base::is_Alt().

◆ TOOL_INTERACTIVE_KEY_CTRL

#define TOOL_INTERACTIVE_KEY_CTRL   0x20

Definition at line 507 of file tool.h.

Referenced by CSG_Tool_Interactive_Base::is_Ctrl().

◆ TOOL_INTERACTIVE_KEY_LEFT

#define TOOL_INTERACTIVE_KEY_LEFT   0x01

Definition at line 502 of file tool.h.

◆ TOOL_INTERACTIVE_KEY_MIDDLE

#define TOOL_INTERACTIVE_KEY_MIDDLE   0x02

Definition at line 503 of file tool.h.

◆ TOOL_INTERACTIVE_KEY_RIGHT

#define TOOL_INTERACTIVE_KEY_RIGHT   0x04

Definition at line 504 of file tool.h.

◆ TOOL_INTERACTIVE_KEY_SHIFT

#define TOOL_INTERACTIVE_KEY_SHIFT   0x08

Definition at line 505 of file tool.h.

Referenced by CSG_Tool_Interactive_Base::is_Shift().

Typedef Documentation

◆ TSG_PFNC_TLB_Create_Tool

typedef CSG_Tool *(* TSG_PFNC_TLB_Create_Tool) (int i)

Definition at line 652 of file tool.h.

◆ TSG_PFNC_TLB_Finalize

typedef bool(* TSG_PFNC_TLB_Finalize) (void)

Definition at line 690 of file tool.h.

◆ TSG_PFNC_TLB_Get_Info

typedef CSG_String(* TSG_PFNC_TLB_Get_Info) (int i)

Definition at line 653 of file tool.h.

◆ TSG_PFNC_TLB_Get_Interface

typedef CSG_Tool_Library_Interface *(* TSG_PFNC_TLB_Get_Interface) (void)

Definition at line 693 of file tool.h.

◆ TSG_PFNC_TLB_Initialize

typedef bool(* TSG_PFNC_TLB_Initialize) (const SG_Char *)

Definition at line 687 of file tool.h.

Enumeration Type Documentation

◆ TSG_Summary_Format

Enumerator
SG_SUMMARY_FMT_FLAT 
SG_SUMMARY_FMT_HTML 
SG_SUMMARY_FMT_XML 

Definition at line 91 of file tool.h.

◆ TSG_TLB_Info

Enumerator
TLB_INFO_Name 
TLB_INFO_Description 
TLB_INFO_Author 
TLB_INFO_Version 
TLB_INFO_Menu_Path 
TLB_INFO_Category 
TLB_INFO_User 
TLB_INFO_File 
TLB_INFO_Library 
TLB_INFO_SAGA_Version 
TLB_INFO_Count 

Definition at line 635 of file tool.h.

◆ TSG_Tool_Error

Enumerator
TOOL_ERROR_Unknown 
TOOL_ERROR_Calculation 

Definition at line 111 of file tool.h.

◆ TSG_Tool_Interactive_DragMode

Enumerator
TOOL_INTERACTIVE_DRAG_NONE 
TOOL_INTERACTIVE_DRAG_LINE 
TOOL_INTERACTIVE_DRAG_BOX 
TOOL_INTERACTIVE_DRAG_CIRCLE 

Definition at line 492 of file tool.h.

◆ TSG_Tool_Interactive_Mode

Enumerator
TOOL_INTERACTIVE_UNDEFINED 
TOOL_INTERACTIVE_LDOWN 
TOOL_INTERACTIVE_LUP 
TOOL_INTERACTIVE_LDCLICK 
TOOL_INTERACTIVE_MDOWN 
TOOL_INTERACTIVE_MUP 
TOOL_INTERACTIVE_MDCLICK 
TOOL_INTERACTIVE_RDOWN 
TOOL_INTERACTIVE_RUP 
TOOL_INTERACTIVE_RDCLICK 
TOOL_INTERACTIVE_MOVE 
TOOL_INTERACTIVE_MOVE_LDOWN 
TOOL_INTERACTIVE_MOVE_MDOWN 
TOOL_INTERACTIVE_MOVE_RDOWN 

Definition at line 472 of file tool.h.

◆ TSG_Tool_Type

Enumerator
TOOL_TYPE_Base 
TOOL_TYPE_Interactive 
TOOL_TYPE_Grid 
TOOL_TYPE_Grid_Interactive 
TOOL_TYPE_Chain 

Definition at line 100 of file tool.h.

Variable Documentation

◆ TLB_Interface

CSG_Tool_Library_Interface TLB_Interface
extern