53#ifndef HEADER_INCLUDED__SAGA_API__parameters_H
54#define HEADER_INCLUDED__SAGA_API__parameters_H
94#define PARAMETER_INPUT 0x01
95#define PARAMETER_OUTPUT 0x02
96#define PARAMETER_OPTIONAL 0x04
97#define PARAMETER_INFORMATION 0x08
98#define PARAMETER_IGNORE_PROJECTION 0x10
99#define PARAMETER_NOT_FOR_GUI 0x20
100#define PARAMETER_NOT_FOR_CMD 0x40
101#define PARAMETER_GUI_COLLAPSED 0x80
103#define PARAMETER_INPUT_OPTIONAL (PARAMETER_INPUT | PARAMETER_OPTIONAL)
104#define PARAMETER_OUTPUT_OPTIONAL (PARAMETER_OUTPUT | PARAMETER_OPTIONAL)
107#define PARAMETER_DESCRIPTION_NAME 0x01
108#define PARAMETER_DESCRIPTION_TYPE 0x02
109#define PARAMETER_DESCRIPTION_OPTIONAL 0x04
110#define PARAMETER_DESCRIPTION_PROPERTIES 0x08
111#define PARAMETER_DESCRIPTION_TEXT 0x10
112#define PARAMETER_DESCRIPTION_ALL (PARAMETER_DESCRIPTION_NAME | PARAMETER_DESCRIPTION_TYPE | PARAMETER_DESCRIPTION_OPTIONAL | PARAMETER_DESCRIPTION_PROPERTIES | PARAMETER_DESCRIPTION_TEXT)
190#define PARAMETER_CHECK_VALUES 0x01
191#define PARAMETER_CHECK_ENABLE 0x02
192#define PARAMETER_CHECK_ALL (PARAMETER_CHECK_VALUES | PARAMETER_CHECK_ENABLE)
195#define SG_PARAMETER_DATA_SET_FALSE 0
196#define SG_PARAMETER_DATA_SET_TRUE 1
197#define SG_PARAMETER_DATA_SET_CHANGED 2
230 bool is_Enabled (
bool bCheckEnv =
true)
const;
235 virtual bool is_Valid (
void)
const {
return(
true ); }
240 bool is_Option (
void)
const;
241 bool is_DataObject (
void)
const;
242 bool is_DataObject_List (
void)
const;
243 bool is_Parameters (
void)
const;
244 bool is_Serializable (
void)
const;
248 void Set_UseInGUI (
bool bOn =
false);
249 void Set_UseInCMD (
bool bOn =
false);
251 bool do_UseInGUI (
void)
const;
252 bool do_UseInCMD (
void)
const;
254 void ignore_Projection (
bool bIgnore);
260 CSG_Parameter *
Get_Child (
int iChild)
const {
return( iChild >= 0 && iChild < m_nChildren ? m_Children[iChild] : NULL ); }
261 bool Set_Children_Enabled (
bool bEnabled =
true);
264 virtual bool Set_Value (
int Value);
265 virtual bool Set_Value (
double Value);
267 virtual bool Set_Value (
const CSG_String &Value);
268 virtual bool Set_Value (
const char *Value);
269 virtual bool Set_Value (
const wchar_t *Value);
270 virtual bool Set_Value (
void *Value);
273 virtual bool Toggle_Value (
void);
275 bool Set_Default (
int Value);
276 bool Set_Default (
double Value);
279 virtual bool is_Default (
void)
const;
280 virtual bool Restore_Default (
void);
282 bool Check (
bool bSilent =
true);
294 const SG_Char * asFont (
void)
const;
348 virtual int _asInt (
void)
const;
364 int m_Constraint, m_nChildren;
368 CSG_String m_Identifier, m_Name, m_Description, m_Default;
408 virtual bool is_Default (
void)
const;
410 virtual bool Toggle_Value (
void);
429 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
451 void Set_Maximum (
double Maximum,
bool bOn =
true);
483 virtual bool is_Default (
void)
const;
503 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
521 virtual bool is_Default (
void)
const;
541 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
564 virtual int _Set_Value (
const CSG_String &Value);
566 virtual void _Set_String (
void);
601 virtual int _asInt (
void)
const;
623 bool Set_Range (
double Min,
double Max);
626 bool Set_Min (
double Min);
627 double Get_Min (
void)
const;
630 bool Set_Max (
double Max);
631 double Get_Max (
void)
const;
634 virtual bool is_Default (
void)
const;
636 virtual bool Restore_Default (
void);
672 virtual bool is_Default (
void)
const;
674 virtual bool Toggle_Value (
void);
676 bool Del_Items (
void);
679 bool Set_Items (
const SG_Char *String);
680 CSG_String Get_Items (
bool bIncludeData=
false)
const;
682 const SG_Char * Get_Item (
int Index)
const;
687 bool Get_Data (
int &Value)
const;
688 bool Get_Data (
double &Value)
const;
713 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
743 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
764 void Del_Items (
void);
776 bool is_Selected (
int Index);
777 bool Select (
int Index,
bool bSelect =
true);
778 bool Clr_Selection (
void);
813 virtual bool is_Valid (
void)
const;
815 void Set_Password (
bool bOn);
816 bool is_Password (
void)
const;
867 void Set_Filter (
const SG_Char *Filter);
868 const SG_Char * Get_Filter (
void)
const;
870 void Set_Flag_Save (
bool bFlag);
873 void Set_Flag_Multiple (
bool bFlag);
876 void Set_Flag_Directory (
bool bFlag);
909 virtual bool Restore_Default (
void);
922 virtual int _asInt (
void)
const;
944 virtual int _Set_Value (
const CSG_String &Value);
952 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
984 virtual int _asInt (
void)
const;
1073 bool Add_Default (
double Value,
double Minimum,
bool bMinimum,
double Maximum,
bool bMaximum);
1131 virtual int _asInt (
void)
const;
1151 virtual bool is_Valid (
void)
const;
1220 bool Add_Default (
double Value,
double Minimum,
bool bMinimum,
double Maximum,
bool bMaximum);
1234 virtual int _asInt (
void)
const;
1281 virtual int _Set_Value (
void *Value);
1336 virtual int _Set_Value (
void *Value);
1360 virtual int _Set_Value (
void *Value);
1380 virtual bool Del_Item (
int Index ,
bool bUpdateData =
true);
1394 virtual int _Set_Value (
void *Value);
1396 virtual void _Set_String (
void);
1398 virtual int _asInt (
void)
const;
1399 virtual void * _asPointer (
void)
const;
1402 virtual bool _Serialize (
CSG_MetaData &Entry,
bool bSave);
1428 virtual bool Del_Item (
CSG_Data_Object *pItem,
bool bUpdateData =
true);
1429 virtual bool Del_Item (
int Index ,
bool bUpdateData =
true);
1430 virtual bool Del_Items (
void);
1432 virtual bool Update_Data (
void);
1586 virtual bool Restore_Default (
void);
1713 bool Create (
const SG_Char *Name,
const SG_Char *Description = NULL,
const SG_Char *Identifier = NULL,
bool bGrid_System =
false);
1716 bool Create (
void *pOwner,
const SG_Char *Name,
const SG_Char *Description = NULL,
const SG_Char *Identifier = NULL,
bool bGrid_System =
false);
1724 void Set_Tool (
class CSG_Tool *pTool);
1729 bool Push (
class CSG_Data_Manager *pManager = NULL,
bool bRestoreDefaults =
true);
1732 bool Use_Grid_System (
void);
1734 bool has_GUI (
void)
const;
1738 void Set_Identifier (
const CSG_String &Identifier);
1739 bool Cmp_Identifier (
const CSG_String &Identifier)
const;
1745 void Set_Description (
const CSG_String &Description);
1750 void Del_References (
void);
1753 void Set_Enabled (
bool bEnabled =
true);
1754 void Set_Enabled (
const CSG_String &Identifier,
bool bEnabled =
true);
1758 bool Set_Callback (
bool bActive =
true);
1764 CSG_Parameter * Get_Parameter (
int i ,
bool MsgOnError )
const;
1766 CSG_Parameter * Get_Parameter (
const char *ID,
bool MsgOnError =
false)
const;
1767 CSG_Parameter * Get_Parameter (
const wchar_t *ID,
bool MsgOnError =
false)
const;
1780 bool Del_Parameter (
int i);
1783 bool Del_Parameters (
void);
1853 bool Set_Parameter (
const wchar_t *ID,
CSG_Parameter *pValue);
1876 bool Restore_Defaults (
bool bClearData =
false);
1893 bool Serialize_Compatibility (
CSG_File &Stream);
1896 bool DataObjects_Check (
bool bSilent =
false);
1899 bool Get_String (
CSG_String &String,
bool bOptionsOnly);
1900 bool Msg_String (
bool bOptionsOnly);
1902 bool Set_History (
CSG_MetaData &History,
bool bOptions =
true,
bool bDataObjects =
true);
1909 bool Reset_Grid_System (
void);
1922 CSG_String m_Identifier, m_Name, m_Description;
1935 void _On_Construction (
void);
1937 bool _On_Parameter_Changed (
CSG_Parameter *pParameter,
int Flags);
1939 CSG_Parameter * _Add_Value (
const CSG_String &ParentID,
const CSG_String &ID,
const CSG_String &Name,
const CSG_String &Description,
bool bInformation,
TSG_Parameter_Type Type,
double Value,
double Minimum,
bool bMinimum,
double Maximum,
bool bMaximum);
1940 CSG_Parameter * _Add_Range (
const CSG_String &ParentID,
const CSG_String &ID,
const CSG_String &Name,
const CSG_String &Description,
bool bInformation,
double Range_Min,
double Range_Max,
double Minimum,
bool bMinimum,
double Maximum,
bool bMaximum);
1946 bool DataObjects_Create (
void);
1947 bool DataObjects_Synchronize (
void);
1985 {
return(
Add_FilePath (pParent ? pParent->
Get_Identifier() :
SG_T(
""), ID, Name, Description, Filter, Default, bSave, bDirectory, bMultiple) ); }
1995 {
return(
Add_Grid (pParent ? pParent->
Get_Identifier() :
SG_T(
""), ID, Name, Description, Constraint, bSystem_Dependent, Preferred_Type) ); }
#define SAGA_API_DLL_EXPORT
virtual int _Set_Value(int Value)
friend class CSG_Parameters
virtual int _asInt(void) const
CSG_Parameter_Bool(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual void _Set_String(void)
virtual TSG_Parameter_Type Get_Type(void) const
virtual void _Set_String(void)
friend class CSG_Parameters
virtual int _Set_Value(int Value)
virtual int _asInt(void) const
CSG_Parameter_Choice(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
virtual double _asDouble(void) const
int Get_Count(void) const
int Get_Selection_Count(void) const
const CSG_String & Get_Item_Data(int i) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
int Get_Item_Count(void) const
virtual void _Set_String(void)
virtual bool _Assign(CSG_Parameter *pSource)
virtual TSG_Parameter_Type Get_Type(void) const
const CSG_String & Get_Selection_Data(int i) const
CSG_Array_Int m_Selection
virtual int _Set_Value(const CSG_String &Value)
const CSG_String & Get_Selection(int i) const
const CSG_String & Get_Item(int i) const
CSG_Parameter_Choices(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
int Get_Selection_Index(int i) const
friend class CSG_Parameters
CSG_Parameter_Color(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
virtual int _asInt(void) const
CSG_Parameter_Colors(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual int _Set_Value(int Value)
virtual bool _Assign(CSG_Parameter *pSource)
friend class CSG_Parameters
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
virtual void * _asPointer(void) const
virtual TSG_Parameter_Type Get_Type(void) const
virtual void _Set_String(void)
virtual int _Set_Value(void *Value)
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
CSG_Parameter_Data_Object_Output(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
TSG_Data_Object_Type m_Type
TSG_Data_Object_Type Get_DataObject_Type(void) const
virtual bool is_Valid(void) const
virtual void _Set_String(void)
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
CSG_Parameter_Data_Object(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual int _Set_Value(void *Value)
CSG_Data_Object * m_pDataObject
virtual void * _asPointer(void) const
virtual bool _Assign(CSG_Parameter *pSource)
friend class CSG_Parameters
CSG_Parameter_Data_Type(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
virtual int _Set_Value(int Value)
friend class CSG_Parameters
virtual double _asDouble(void) const
virtual bool _Assign(CSG_Parameter *pSource)
CSG_Parameter_Date(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
virtual int _asInt(void) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
virtual void _Set_String(void)
const CSG_DateTime & Get_Date(void) const
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Degree(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
virtual double _asDouble(void) const
virtual void _Set_String(void)
CSG_Parameter_Double(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual int _Set_Value(int Value)
virtual int _asInt(void) const
virtual TSG_Parameter_Type Get_Type(void) const
bool is_Directory(void) const
virtual bool _Assign(CSG_Parameter *pSource)
friend class CSG_Parameters
bool is_Multiple(void) const
CSG_Parameter_File_Name(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Fixed_Table(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual bool _Assign(CSG_Parameter *pSource)
virtual void * _asPointer(void) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
virtual void _Set_String(void)
virtual int _Set_Value(void *Value)
virtual TSG_Parameter_Type Get_Type(void) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
virtual int _asInt(void) const
virtual bool _Assign(CSG_Parameter *pSource)
CSG_Parameter_Font(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual void * _asPointer(void) const
virtual TSG_Parameter_Type Get_Type(void) const
virtual int _Set_Value(int Value)
int Get_Grid_Count(void) const
friend class CSG_Parameters
CSG_Array_Pointer m_Grids
CSG_Grid * Get_Grid(int Index) const
CSG_Parameter_Grid_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
virtual bool _Assign(CSG_Parameter *pSource)
virtual void * _asPointer(void) const
friend class CSG_Parameters
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
virtual TSG_Parameter_Type Get_Type(void) const
virtual void _Set_String(void)
virtual int _Set_Value(const CSG_String &Value)
CSG_Parameter_Grid_System(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
CSG_Parameter_Grid(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
TSG_Data_Type Get_Preferred_Type(void) const
virtual bool _Assign(CSG_Parameter *pSource)
virtual TSG_Parameter_Type Get_Type(void) const
virtual int _Set_Value(void *Value)
virtual double _asDouble(void) const
virtual int _asInt(void) const
friend class CSG_Parameters
CSG_Grids * Get_Grids(int Index) const
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Grids_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
CSG_Parameter_Grids(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
virtual double _asDouble(void) const
virtual int _Set_Value(int Value)
virtual void _Set_String(void)
CSG_Parameter_Int(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual int _asInt(void) const
virtual bool Update_Data(void)
virtual bool Del_Item(CSG_Data_Object *pItem, bool bUpdateData=true)
friend class CSG_Parameters
CSG_Parameter_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual bool Del_Items(void)
CSG_Data_Object * Get_Item(int Index) const
virtual bool Add_Item(CSG_Data_Object *pItem)
int Get_Item_Count(void) const
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
CSG_Parameter_Node(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual void * _asPointer(void) const
CSG_Parameter_Parameters(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
virtual TSG_Parameter_Type Get_Type(void) const
virtual void _Set_String(void)
CSG_Parameters * m_pParameters
virtual bool _Assign(CSG_Parameter *pSource)
CSG_PointCloud * Get_PointCloud(int Index) const
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_PointCloud_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter_PointCloud(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
double Get_Max(void) const
double Get_Min(void) const
CSG_Parameter_Double * Get_Min_Parameter(void) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Double * m_pMin
virtual int _Set_Value(const CSG_String &Value)
CSG_Parameter_Double * Get_Max_Parameter(void) const
virtual void _Set_String(void)
CSG_Parameters * m_pRange
double Get_Range(void) const
virtual bool _Assign(CSG_Parameter *pSource)
CSG_Parameter_Range(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter_Double * m_pMax
virtual bool _Assign(CSG_Parameter *pSource)
virtual TSG_Parameter_Type Get_Type(void) const
TSG_Shape_Type Get_Shape_Type(void) const
friend class CSG_Parameters
CSG_Parameter_Shapes_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Shapes * Get_Shapes(int Index) const
CSG_Parameter_Shapes(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
virtual bool _Assign(CSG_Parameter *pSource)
virtual int _Set_Value(void *Value)
virtual TSG_Parameter_Type Get_Type(void) const
TSG_Shape_Type Get_Shape_Type(void) const
virtual bool _Assign(CSG_Parameter *pSource)
virtual int _Set_Value(const CSG_String &Value)
friend class CSG_Parameters
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
CSG_Parameter_String(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_TIN_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_TIN * asTIN(int Index) const
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_TIN(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual void _Set_String(void)
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Table_Field(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
virtual double _asDouble(void) const
virtual bool _Assign(CSG_Parameter *pSource)
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
virtual int _Set_Value(int Value)
int Get_Index(int i) const
virtual int _asInt(void) const
int Get_Count(void) const
virtual int _Set_Value(const CSG_String &Value)
virtual bool _Assign(CSG_Parameter *pSource)
CSG_Parameter_Table_Fields(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual void * _asPointer(void) const
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
friend class CSG_Parameters
CSG_Table * Get_Table(int Index) const
virtual TSG_Parameter_Type Get_Type(void) const
CSG_Parameter_Table_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
virtual TSG_Parameter_Type Get_Type(void) const
friend class CSG_Parameters
CSG_Parameter_Table(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter_Text(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
friend class CSG_Parameters
virtual TSG_Parameter_Type Get_Type(void) const
double Get_Minimum(void) const
double Get_Maximum(void) const
friend class CSG_Parameters
CSG_Parameter_Value(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
void Set_Minimum(double Minimum, bool bOn=true)
bool has_Maximum(void) const
bool Set_Valid_Range(double Minimum, double Maximum)
bool has_Minimum(void) const
virtual bool _Assign(CSG_Parameter *pSource)
CSG_String Get_CmdID(void) const
const SG_Char * Get_Identifier(void) const
virtual bool _Serialize(CSG_MetaData &MetaData, bool bSave)
CSG_Parameter(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
bool Set_Name(const CSG_String &Name)
void * asPointer(void) const
virtual bool _Assign(CSG_Parameter *pSource)
virtual int _Set_Value(int Value)
CSG_String Get_Type_Identifier(void) const
friend class CSG_Parameters
CSG_String Get_Type_Name(void) const
virtual const SG_Char * _asString(void) const
bool Set_Collapsed(bool bOn=true)
bool Set_Enabled(bool bEnabled=true)
bool is_Optional(void) const
bool Set_Description(const CSG_String &Description)
virtual int _asInt(void) const
virtual bool is_Valid(void) const
int Get_Children_Count(void) const
bool ignore_Projection(void) const
double asDouble(void) const
CSG_Parameter * Get_Parent(void) const
virtual TSG_Parameter_Type Get_Type(void) const =0
bool is_Input(void) const
CSG_Parameters * Get_Parameters(void) const
const SG_Char * Get_Name(void) const
virtual void _Set_String(void)
bool is_Enabled(bool bCheckEnv=true) const
virtual double _asDouble(void) const
CSG_Parameter * Get_Child(int iChild) const
bool is_Output(void) const
virtual void * _asPointer(void) const
bool is_Information(void) const
const SG_Char * asString(void) const
bool Cmp_Identifier(const CSG_String &Identifier) const
bool is_Collapsed(void) const
const SG_Char * Get_Description(void) const
class CSG_Data_Manager * Get_Manager(void) const
bool Create(CSG_Parameters &Parameters, const CSG_String &ParentID="")
static bool On_Parameter_Changed(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
bool Deactivate_GUI(void)
bool Activate_GUI(bool bReset=false)
bool Get_CRS(CSG_Projection &Projection, bool bMessage=false) const
static bool On_Parameters_Enable(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
CSG_Parameters_CRSPicker(void)
bool Set_User_Defined_ZLevels(CSG_Parameters *pParameters, double zMin, double zMax, int nLevels, int Rounding=2)
bool On_Parameter_Changed(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
bool Create(CSG_Parameters *pParameters, bool bAddDefaultGrid, CSG_Parameter *pParent, const CSG_String &Prefix="")
CSG_Parameters_Grid_Target(void)
bool Add_Grid(const CSG_String &ID, const CSG_String &Name, bool bOptional)
bool Set_User_Defined(CSG_Parameters *pParameters, const TSG_Rect &Extent, int Rows=0, int Rounding=2)
bool On_Parameters_Enable(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
bool Add_Grids(const CSG_String &ID, const CSG_String &Name, bool bOptional, bool bZLevels=false)
CSG_Grid_System Get_System(void) const
CSG_Grids * Get_Grids(const CSG_String &ID, TSG_Data_Type Type=SG_DATATYPE_Float)
CSG_Grid * Get_Grid(const CSG_String &ID, TSG_Data_Type Type=SG_DATATYPE_Float)
CSG_Parameter * Add_Parameters(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Double(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_TIN_List(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Grid_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Shapes_Output(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
bool is_Managed(void) const
CSG_Parameter * Add_Table_Fields(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_TIN(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_TIN(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Table_List(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Font(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *pInit=NULL)
CSG_Parameter * Add_Table(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Bool(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value=false)
CSG_Parameter * Add_Choice(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &Items, int Default=0)
const CSG_String & Get_Identifier(void) const
CSG_Parameter * Add_Info_Range(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Range_Min=0.0, double Range_Max=0.0)
CSG_Parameter * Add_Shapes(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, TSG_Shape_Type Shape_Type=SHAPE_TYPE_Undefined)
CSG_Parameter * Add_Info_Value(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, TSG_Parameter_Type Type, double Value=0.0)
CSG_Parameter * Add_Shapes_List(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, TSG_Shape_Type=SHAPE_TYPE_Undefined)
CSG_Parameter * Add_Table_Field_or_Const(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Grid_System(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Grid_System *pInit=NULL)
CSG_Parameter * Add_Choice(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &Items, int Default=0)
CSG_Parameter * Get_Grid_System_Parameter(void) const
bool Serialize(const CSG_String &File) const
CSG_Parameter * Add_PointCloud(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Colors(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Colors *pInit=NULL)
CSG_Parameter * Add_Table_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Shapes(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, TSG_Shape_Type Shape_Type=SHAPE_TYPE_Undefined)
int Get_Count(void) const
bool Serialize(CSG_MetaData &Data) const
CSG_Parameter * Add_String(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &String, bool bLongText=false, bool bPassword=false)
CSG_Parameter * Add_TIN_Output(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Table_Field_or_Const(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
class CSG_Tool * Get_Tool(void) const
class CSG_Data_Manager * Get_Manager(void) const
CSG_Parameter * Add_Color(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value=0)
CSG_Parameter * Add_Grid_or_Const(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false, bool bSystem_Dependent=true)
CSG_Parameter * Add_Shapes_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, TSG_Shape_Type Shape_Type=SHAPE_TYPE_Undefined)
CSG_Grid_System * Get_Grid_System(void) const
CSG_Parameter * Add_Grid(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, bool bSystem_Dependent=true, TSG_Data_Type Preferred_Type=SG_DATATYPE_Undefined)
CSG_Parameter * Add_Degree(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Grid_Output(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Shapes_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Table(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_FilePath(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *Filter=NULL, const SG_Char *Default=NULL, bool bSave=false, bool bDirectory=false, bool bMultiple=false)
CSG_Parameter * Add_Table_Field(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bAllowNone=false)
CSG_Parameter * Add_PointCloud_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Grid_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, bool bSystem_Dependent=true)
CSG_Parameter * Add_Value(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, TSG_Parameter_Type Type, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Double(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
const CSG_String & Get_Name(void) const
CSG_Parameter * Add_PointCloud_List(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Get_Parameter(int i) const
bool Serialize(CSG_MetaData &Data, bool bSave)
bool Create(const CSG_Parameters &Parameters)
CSG_Parameter * Add_PointCloud_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_TIN_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Parameters(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
const CSG_Strings & Get_References(void) const
CSG_Parameter * Add_Int(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value=0, int Minimum=0, bool bMinimum=false, int Maximum=0, bool bMaximum=false)
CSG_Parameter * Add_TIN_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Range(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Range_Min=0.0, double Range_Max=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Node(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bCollapsed=false)
bool Serialize(const CSG_String &File, bool bSave)
CSG_Parameter * Add_PointCloud(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
CSG_Parameter * Add_Color(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value=0)
CSG_Parameter * Add_Grid_List(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, bool bSystem_Dependent=true)
CSG_Parameter * Add_Table_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
void * Get_Owner(void) const
const CSG_String & Get_Description(void) const
CSG_Parameter * Add_FixedTable(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Table *pInit=NULL)
CSG_Parameter * Add_Info_Value(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, TSG_Parameter_Type Type, double Value=0.0)
CSG_Parameter * Add_Value(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, TSG_Parameter_Type Type, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Table_Output(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Font(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *pInit=NULL)
CSG_Parameter * Add_Degree(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Grid_or_Const(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false, bool bSystem_Dependent=true)
bool Save(CSG_MetaData &Data) const
CSG_Parameter * Add_Bool(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value=false)
CSG_Parameter * Add_FixedTable(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Table *pInit=NULL)
CSG_Parameter * Add_String(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &String, bool bLongText=false, bool bPassword=false)
CSG_Parameter * Add_Date(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0)
CSG_Parameter * Add_Node(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
friend class CSG_Parameter
CSG_Parameter * Add_Info_String(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &String, bool bLongText=false)
CSG_Parameter * Add_Date(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0)
CSG_Parameter * Add_FilePath(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *Filter=NULL, const SG_Char *Default=NULL, bool bSave=false, bool bDirectory=false, bool bMultiple=false)
CSG_Parameter * Add_Int(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value=0, int Minimum=0, bool bMinimum=false, int Maximum=0, bool bMaximum=false)
CSG_Parameter * Add_Range(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Range_Min=0.0, double Range_Max=0.0, double Minimum=0.0, bool bMinimum=false, double Maximum=0.0, bool bMaximum=false)
CSG_Parameter * Add_Info_String(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &String, bool bLongText=false)
CSG_Parameter * Add_Table_Fields(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Grid_System(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Grid_System *pInit=NULL)
CSG_Parameter * Add_Grid(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, bool bSystem_Dependent=true, TSG_Data_Type Preferred_Type=SG_DATATYPE_Undefined)
CSG_Parameter * Add_PointCloud_Output(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
CSG_Parameter * Add_Colors(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Palette=0, int nColors=11, bool bRevert=false)
CSG_Parameter * Add_Info_Range(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Range_Min=0.0, double Range_Max=0.0)
CSG_Parameter * Add_Table_Field(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bAllowNone=false)
bool Load(const CSG_MetaData &Data)
SAGA_API_DLL_EXPORT CSG_String SG_Parameter_Type_Get_Name(TSG_Parameter_Type Type)
int(* TSG_PFNC_Parameter_Changed)(CSG_Parameter *pParameter, int Flags)
SAGA_API_DLL_EXPORT CSG_String SG_Parameter_Type_Get_Identifier(TSG_Parameter_Type Type)
#define PARAMETER_INFORMATION
#define PARAMETER_IGNORE_PROJECTION
#define PARAMETER_OPTIONAL
#define PARAMETER_GUI_COLLAPSED
#define PARAMETER_CHECK_ALL
SAGA_API_DLL_EXPORT TSG_Parameter_Type SG_Parameter_Type_Get_Type(const CSG_String &Identifier)
@ PARAMETER_TYPE_FixedTable
@ PARAMETER_TYPE_Grid_List
@ PARAMETER_TYPE_Table_Fields
@ PARAMETER_TYPE_DataObject_Output
@ PARAMETER_TYPE_Table_List
@ PARAMETER_TYPE_TIN_List
@ PARAMETER_TYPE_Grid_System
@ PARAMETER_TYPE_PointCloud_List
@ PARAMETER_TYPE_Undefined
@ PARAMETER_TYPE_Data_Type
@ PARAMETER_TYPE_Shapes_List
@ PARAMETER_TYPE_PointCloud
@ PARAMETER_TYPE_Table_Field
@ PARAMETER_TYPE_Parameters
@ PARAMETER_TYPE_FilePath
@ PARAMETER_TYPE_Grids_List