 |
SAGA API
v9.9
|
Go to the documentation of this file.
66 m_pParameters = pParameters;
68 m_Identifier = Identifier;
70 m_Description = Description;
71 m_Constraint = Constraint;
81 m_pParent->_Add_Child(
this);
102 return( m_pParameters );
114 return( m_pParameters ? m_pParameters->
Get_Manager() : NULL );
213 if( m_bEnabled != bEnabled )
215 m_bEnabled = bEnabled;
239 return( m_bEnabled && (m_pParent == NULL || m_pParent->
is_Enabled()) );
564 return( m_Identifier );
570 return( !m_Identifier.
Cmp(Identifier) || !m_Identifier.
Cmp(Identifier +
".Default") );
612 m_Description = Description;
619 return( m_Description );
631 #define SEPARATE if( !s.is_Empty() ) { s.Append(Separator); }
633 if( !Separator || !Separator[0] )
905 return( m_pParameters && m_pParameters->_On_Parameter_Changed(
this, Check_Flags) );
922 m_Default.
Printf(
"%d", Value);
930 m_Default.
Printf(
"%f", Value);
981 for(
size_t i=0; !bExists && i<Manager.
Grid ().Count(); i++)
986 for(
size_t i=0; !bExists && i<Manager.
Grids().Count(); i++)
991 if( bExists ==
false )
1017 for(
int j=
asList()->Get_Item_Count()-1; j>=0; j--)
1064 case (
int)CSG_Grid_Resampling::NearestNeighbour:
return( CSG_Grid_Resampling::NearestNeighbour );
1065 case (
int)CSG_Grid_Resampling::Bilinear :
return( CSG_Grid_Resampling::Bilinear );
1066 case (
int)CSG_Grid_Resampling::Bicubic_1 :
return( CSG_Grid_Resampling::Bicubic_1 );
1067 case (
int)CSG_Grid_Resampling::Bicubic_2 :
return( CSG_Grid_Resampling::Bicubic_2 );
1068 case (
int)CSG_Grid_Resampling::Mean_Nodes :
return( CSG_Grid_Resampling::Mean_Nodes );
1069 case (
int)CSG_Grid_Resampling::Mean_Cells :
return( CSG_Grid_Resampling::Mean_Cells );
1072 case (
int)CSG_Grid_Resampling::Majority :
return( CSG_Grid_Resampling::Majority );
1171 m_Children[m_nChildren++] = pChild;
1184 m_bEnabled = pSource->m_bEnabled;
1185 m_Default = pSource->m_Default;
1265 m_pParameters = &Parameters;
1267 Parameters.
Add_String(ParentID,
"CRS_STRING",
_TL(
"Coordinate System Definition"),
1268 _TL(
"Supported formats comprise PROJ and WKT strings, object codes (e.g. \"EPSG:4326\")."),
""
1282 if( !m_pParameters || !m_pParameters->
has_GUI() || m_pCRS )
1294 m_pCRS->
Set_Parameter(
"CRS_STRING", (*m_pParameters)[
"CRS_STRING"].asString());
1296 m_pParameters->
Add_Parameters((*m_pParameters)(
"CRS_STRING")->Get_Parent(),
1297 "CRS_PICKER",
_TL(
"Coordinate Reference System"),
_TL(
"")
1350 if( Projection.
Create((*m_pParameters)[
"CRS_STRING"].asString()) )
1378 m_pParameters = NULL;
1389 if( pParameters == NULL )
1394 m_pParameters = pParameters;
1398 CSG_String TargetID(m_Prefix +
"DEFINITION");
1401 ParentID, TargetID,
_TL(
"Target Grid System"),
1404 _TL(
"user defined"),
1405 _TL(
"grid or grid system")
1410 m_pParameters->
Add_Double(TargetID, m_Prefix +
"USER_SIZE",
_TL(
"Cellsize"),
_TL(
""), 1., 0.,
true);
1411 m_pParameters->
Add_Double(TargetID, m_Prefix +
"USER_XMIN",
_TL(
"West" ),
_TL(
""), 0.);
1412 m_pParameters->
Add_Double(TargetID, m_Prefix +
"USER_XMAX",
_TL(
"East" ),
_TL(
""), 100.);
1413 m_pParameters->
Add_Double(TargetID, m_Prefix +
"USER_YMIN",
_TL(
"South" ),
_TL(
""), 0.);
1414 m_pParameters->
Add_Double(TargetID, m_Prefix +
"USER_YMAX",
_TL(
"North" ),
_TL(
""), 100.);
1415 m_pParameters->
Add_Int (TargetID, m_Prefix +
"USER_COLS",
_TL(
"Columns" ),
_TL(
"Number of cells in East-West direction." ), 101, 1,
true);
1416 m_pParameters->
Add_Int (TargetID, m_Prefix +
"USER_ROWS",
_TL(
"Rows" ),
_TL(
"Number of cells in North-South direction."), 101, 1,
true);
1417 m_pParameters->
Add_Bool (TargetID, m_Prefix +
"USER_FLAT",
_TL(
"Rounding"),
_TL(
"Round bounding coordinates to multiples of cell size. Ignored if cell size has decimal places."),
true);
1418 m_pParameters->
Add_Choice(TargetID, m_Prefix +
"USER_FITS",
_TL(
"Fit" ),
_TL(
""),
1428 m_pParameters->
Add_Grid(m_Prefix +
"SYSTEM", m_Prefix +
"TEMPLATE",
_TL(
"Target System"),
1433 if( bAddDefaultGrid )
1435 Add_Grid(m_Prefix +
"OUT_GRID",
_TL(
"Target Grid"),
false);
1457 if( !pParameters || !pParameter )
1475 CSG_Parameter *pSize = (*pParameters)(Prefix +
"USER_SIZE");
1476 CSG_Parameter *pXMin = (*pParameters)(Prefix +
"USER_XMIN");
1477 CSG_Parameter *pXMax = (*pParameters)(Prefix +
"USER_XMAX");
1478 CSG_Parameter *pYMin = (*pParameters)(Prefix +
"USER_YMIN");
1479 CSG_Parameter *pYMax = (*pParameters)(Prefix +
"USER_YMAX");
1480 CSG_Parameter *pRows = (*pParameters)(Prefix +
"USER_ROWS");
1481 CSG_Parameter *pCols = (*pParameters)(Prefix +
"USER_COLS");
1482 CSG_Parameter *pFlat = (*pParameters)(Prefix +
"USER_FLAT");
1483 CSG_Parameter *pFits = (*pParameters)(Prefix +
"USER_FITS");
1487 double xMin = pXMin->asDouble(), xMax = pXMax->asDouble();
1488 double yMin = pYMin->asDouble(), yMax = pYMax->asDouble();
1491 bool bChanged =
true;
1495 if( pFits->asInt() == 0 )
1497 xMin += 0.5 * Size; xMax -= 0.5 * Size;
1498 yMin += 0.5 * Size; yMax -= 0.5 * Size;
1503 if( pFits->asInt() == 1 )
1505 xMin += 0.5 * Size; xMax -= 0.5 * Size;
1506 yMin += 0.5 * Size; yMax -= 0.5 * Size;
1511 xMax = xMin + Size * (int)(0.5 + (xMax - xMin) / Size);
1512 yMax = yMin + Size * (int)(0.5 + (yMax - yMin) / Size);
1514 else if( pParameter->
Cmp_Identifier(pCols->Get_Identifier()) && pCols->asInt() > 0 )
1516 xMax = xMin + Size * (pCols->asInt() - 1);
1520 xMax = xMin + Size * (xMin > xMax ? (pCols->asInt() - 1) : (
int)(0.5 + (xMax - xMin) / Size));
1524 xMin = xMax - Size * (xMin > xMax ? (pCols->asInt() - 1) : (
int)(0.5 + (xMax - xMin) / Size));
1526 else if( pParameter->
Cmp_Identifier(pRows->Get_Identifier()) && pRows->asInt() > 0 )
1528 yMax = yMin + Size * (pRows->asInt() - 1);
1532 yMax = yMin + Size * (yMin > yMax ? (pRows->asInt() - 1) : (
int)(0.5 + (yMax - yMin) / Size));
1536 yMin = yMax - Size * (yMin > yMax ? (pRows->asInt() - 1) : (
int)(0.5 + (yMax - yMin) / Size));
1540 bChanged = pFlat->asBool();
1554 xMin = floor(xMin / Size) * Size; xMax = ceil(xMax / Size) * Size;
1555 yMin = floor(yMin / Size) * Size; yMax = ceil(yMax / Size) * Size;
1558 pCols->Set_Value(1 + (
int)((xMax - xMin) / Size));
1559 pRows->Set_Value(1 + (
int)((yMax - yMin) / Size));
1561 if( pFits->asInt() == 1 )
1563 xMin -= 0.5 * Size; xMax += 0.5 * Size;
1564 yMin -= 0.5 * Size; yMax += 0.5 * Size;
1567 pXMin->Set_Value(xMin);
1568 pXMax->Set_Value(xMax);
1569 pYMin->Set_Value(yMin);
1570 pYMax->Set_Value(yMax);
1576 CSG_Parameter *pZSize = (*pParameters)(Prefix +
"USER_ZSIZE");
1577 CSG_Parameter *pZMin = (*pParameters)(Prefix +
"USER_ZMIN" );
1578 CSG_Parameter *pZMax = (*pParameters)(Prefix +
"USER_ZMAX" );
1579 CSG_Parameter *pZNum = (*pParameters)(Prefix +
"USER_ZNUM" );
1581 if( pZSize && pZMin && pZMax && pZNum )
1583 double zSize = pZSize->
asDouble(), zMin = pZMin ->asDouble(), zMax = pZMax ->asDouble();
1589 zMax = zMin + zSize * (int)(0.5 + (zMax - zMin) / zSize);
1591 else if( pParameter->
Cmp_Identifier(pZNum->Get_Identifier()) && pZNum->asInt() > 0 )
1593 zMax = zMin + zSize * pZNum->asInt();
1597 zMax = zMin + zSize * (zMin > zMax ? pZNum->asInt() : (int)(0.5 + (zMax - zMin) / zSize));
1601 zMin = zMax - zSize * (zMin > zMax ? pZNum->asInt() : (int)(0.5 + (zMax - zMin) / zSize));
1610 pZNum->Set_Value(1 + (
int)((zMax - zMin) / zSize));
1612 pZMin->Set_Value(zMin);
1613 pZMax->Set_Value(zMax);
1631 if( !pParameter || !pParameters || !(pParameter = (*pParameters)(Prefix +
"DEFINITION")) )
1672 pParameters = m_pParameters;
1680 if( Rows < 1 && (Rows = (*m_pParameters)(m_Prefix +
"USER_ROWS")->asInt()) < 1 )
1704 int Cols = 1 + (int)(0.5 + r.
Get_XRange() / Size);
1718 if( (*pParameters)(m_Prefix +
"USER_FLAT")->asBool() && !
M_HAS_DECIMALS(Size) )
1725 if( (*pParameters)(m_Prefix +
"USER_FITS")->asInt() == 1 )
1759 double Size = sqrt(r.
Get_Area() / pPoints->
Get_Count()) / (Scale > 1 ? Scale : 1);
1761 if( Size >= 1. && Rounding > 0 )
1765 r.
xMin = Size * floor(r.
xMin / Size);
1766 r.
xMax = Size * ceil (r.
xMax / Size);
1767 r.
yMin = Size * floor(r.
yMin / Size);
1768 r.
yMax = Size * ceil (r.
yMax / Size);
1771 int Rows = 1 + (int)(0.5 + r.
Get_YRange() / Size);
1802 pParameters = m_pParameters;
1818 double z = zMin; zMin = zMax; zMax = z;
1821 if( zMax - zMin <= 0. )
1823 zMin -= 0.5 * nLevels;
1824 zMax += 0.5 * nLevels;
1828 double Size = (zMax - zMin) / (nLevels - 1.);
1834 zMin = Size * floor(zMin / Size);
1835 zMax = Size * ceil (zMax / Size);
1839 if( (*pParameters)(m_Prefix +
"USER_FITS")->asInt() == 1 )
1850 pParameters->
Set_Parameter(m_Prefix +
"USER_ZNUM" , nLevels);
1865 if( !m_pParameters || Identifier.
Length() == 0 || (*m_pParameters)(Identifier) != NULL )
1870 CSG_Parameter *pTarget = (*m_pParameters)(m_Prefix +
"DEFINITION");
1885 CSG_Parameter *pNode = (*m_pParameters)(m_Prefix +
"USER_OPTS");
1901 if( !m_pParameters || Identifier.
Length() == 0 || (*m_pParameters)(Identifier) != NULL )
1906 CSG_Parameter *pTarget = (*m_pParameters)(m_Prefix +
"DEFINITION");
1921 CSG_Parameter *pNode = (*m_pParameters)(m_Prefix +
"USER_OPTS");
1933 pTarget = m_pParameters->
Add_Node(pTarget,
"USER_Z",
_TL(
"Z Levels"),
_TL(
""));
1935 m_pParameters->
Add_Double(pTarget, m_Prefix +
"USER_ZSIZE",
_TL(
"Cellsize"),
_TL(
""), 1., 0.,
true);
1936 m_pParameters->
Add_Double(pTarget, m_Prefix +
"USER_ZMIN" ,
_TL(
"Bottom" ),
_TL(
""), 0.);
1937 m_pParameters->
Add_Double(pTarget, m_Prefix +
"USER_ZMAX" ,
_TL(
"Top" ),
_TL(
""), 100.);
1938 m_pParameters->
Add_Int (pTarget, m_Prefix +
"USER_ZNUM" ,
_TL(
"Levels" ),
_TL(
""), 101, 1,
true);
1960 if( pParameters && (*pParameters)(m_Prefix +
"DEFINITION") )
1962 if( (*pParameters)(m_Prefix +
"DEFINITION")->asInt() == 0 )
1964 if( (*pParameters)(m_Prefix +
"USER_SIZE")
1965 && (*pParameters)(m_Prefix +
"USER_XMIN")
1966 && (*pParameters)(m_Prefix +
"USER_YMIN")
1967 && (*pParameters)(m_Prefix +
"USER_XMAX")
1968 && (*pParameters)(m_Prefix +
"USER_YMAX")
1969 && (*pParameters)(m_Prefix +
"USER_FITS") )
1971 double Size = (*pParameters)(m_Prefix +
"USER_SIZE")->asDouble();
1974 (*pParameters)(m_Prefix +
"USER_XMIN")->asDouble(),
1975 (*pParameters)(m_Prefix +
"USER_YMIN")->asDouble(),
1976 (*pParameters)(m_Prefix +
"USER_XMAX")->asDouble(),
1977 (*pParameters)(m_Prefix +
"USER_YMAX")->asDouble()
1980 if( (*pParameters)(m_Prefix +
"USER_FITS")->asInt() == 1 )
1988 else if( (*pParameters)(m_Prefix +
"SYSTEM") )
1990 CSG_Parameter *pParameter = (*pParameters)(m_Prefix +
"SYSTEM");
2005 if( !m_pParameters )
2033 if( (*m_pParameters)(m_Prefix +
"DEFINITION")->asInt() == 0 && m_pParameters->
Get_Tool()->
has_GUI() )
2035 if( (*m_pParameters)(Identifier +
"_CREATE") == NULL
2036 || (*m_pParameters)(Identifier +
"_CREATE")->asBool() )
2043 pGrid = pParameter->
asGrid();
2051 pGrid->
Create(System, Type);
2057 if( pGrid != pParameter->
asGrid() )
2084 return(
Get_Grid(m_Prefix +
"OUT_GRID", Type) );
2090 if( !m_pParameters )
2118 if( (*m_pParameters)(m_Prefix +
"DEFINITION")->asInt() == 0 && m_pParameters->
Get_Tool()->
has_GUI() )
2120 if( (*m_pParameters)(Identifier +
"_CREATE") == NULL
2121 || (*m_pParameters)(Identifier +
"_CREATE")->asBool() )
2128 pGrids = pParameter->
asGrids();
2136 pGrids->
Create(System, 0, 0., Type);
2140 if( pGrids && pGrids != pParameter->
asGrids() )
2157 && (*m_pParameters)(m_Prefix +
"USER_ZSIZE")
2158 && (*m_pParameters)(m_Prefix +
"USER_ZMIN" )
2159 && (*m_pParameters)(m_Prefix +
"USER_ZNUM" ) )
2161 int nz = (*m_pParameters)(m_Prefix +
"USER_ZNUM" )->asInt ();
2162 double z = (*m_pParameters)(m_Prefix +
"USER_ZMIN" )->asDouble();
2163 double dz = (*m_pParameters)(m_Prefix +
"USER_ZSIZE")->asDouble();
2167 for(
int iz=0; iz<nz; iz++, z+=dz)
2179 return(
Get_Grids(m_Prefix +
"OUT_GRIDS", Type) );
CSG_Colors * asColors(void) const
TSG_Data_Type Get_Type(void) const
class CSG_Parameter_Grids_List * asGridsList(void) const
virtual bool Set_Value(int Value)
void * asPointer(void) const
int Get_Selection_Count(void) const
CSG_Parameter * Get_Parameter(int i) const
@ PARAMETER_TYPE_FilePath
bool Add_Grid(const CSG_String &ID, const CSG_String &Name, bool bOptional)
CSG_Rect & Deflate(double d, bool bPercent=true)
static bool On_Parameters_Enable(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
int Printf(const char *Format,...)
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)
class CSG_Parameter_Shapes_List * asShapesList(void) const
bool Set_Collapsed(bool bOn=true)
@ PARAMETER_TYPE_Table_Fields
size_t Length(void) const
double Get_Max(void) const
const SG_Char * Get_Identifier(void) const
class CSG_Data_Manager * Get_Manager(void) const
const SG_Char * asString(void) const
CSG_String Get_Type_Name(void) const
CSG_Table * asTable(void) const
double Get_XMax(void) const
@ PARAMETER_TYPE_Grids_List
class CSG_Parameter_TIN_List * asTINList(void) const
virtual bool _Assign(CSG_Parameter *pSource)
class CSG_Parameter_Date * asDate(void) const
CSG_String SG_Get_DataObject_Name(TSG_Data_Object_Type Type)
virtual CSG_Table_Record * Get_Record(sLong Index) const
bool Create(const CSG_Grid &Grid)
CSG_Data_Object * Get_Item(int Index) const
void SG_UI_Msg_Add_Execution(const char *Message, bool bNewLine, TSG_UI_MSG_STYLE Style)
bool is_Input(void) const
bool is_Compatible(CSG_Parameter *pParameter) const
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)
const SG_Char * Get_Description(void) const
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)
bool Set_User_Defined(CSG_Parameters *pParameters, const TSG_Rect &Extent, int Rows=0, int Rounding=2)
CSG_Data_Manager & SG_Get_Data_Manager(void)
bool Create(const CSG_Grid_System &System, int Precision=-1)
bool Cmp_Identifier(const CSG_String &Identifier) const
CSG_TIN * asTIN(void) const
int Get_Item_Count(void) const
@ SG_DATAOBJECT_TYPE_Grids
TSG_Data_Type Get_Type(void) const
bool do_UseInCMD(void) const
@ PARAMETER_TYPE_FixedTable
bool Create(CSG_Parameters *pParameters, bool bAddDefaultGrid, CSG_Parameter *pParent, const CSG_String &Prefix="")
int Get_Field_Count(void) const
bool Exists(CSG_Data_Object *pObject) const
virtual const SG_Char * _asString(void) const
virtual double _asDouble(void) const
SAGA_API_DLL_EXPORT void SG_Free(void *memblock)
virtual TSG_Data_Object_Type Get_ObjectType(void) const =0
Returns the object type as defined by TSG_Data_Object_Type. Used for run time type checking.
CSG_Data_Object * asDataObject(void) const
bool Assign(CSG_Parameter *pSource)
#define SG_STR_CMP(s1, s2)
double Get_Area(void) const
@ PARAMETER_TYPE_PointCloud
CSG_Parameter(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
void Set_UseInCMD(bool bOn=false)
class CSG_Parameter_Value * asValue(void) const
bool Set_Description(const CSG_String &Description)
CSG_Parameters * Get_Parameters(void) const
bool Get_CRS(CSG_Projection &Projection, bool bMessage=false) const
virtual int _Set_Value(int Value)
const CSG_Grid_System & Get_System(void) const
int Cmp(const CSG_String &String) const
#define PARAMETER_INPUT_OPTIONAL
CSG_String SG_Parameter_Type_Get_Name(TSG_Parameter_Type Type)
@ PARAMETER_TYPE_Shapes_List
class CSG_Parameter_Grid_List * asGridList(void) const
virtual TSG_Parameter_Type Get_Type(void) const =0
bool Serialize(CSG_MetaData &MetaData, bool bSave)
bool is_Compatible(const CSG_Table &Table, bool bExactMatch=false) const
@ SG_UI_DATAOBJECT_UPDATE
CSG_Grid * asGrid(void) const
bool is_DataObject_List(void) const
bool ignore_Projection(void) const
@ PARAMETER_TYPE_Data_Type
virtual bool Create(const CSG_Grids &Grids)
bool On_Parameter_Changed(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
double Get_XRange(void) const
int Get_Count(void) const
const SG_Char * asString(int Field, int Decimals=-99) const
double Get_YMin(void) const
@ PARAMETER_TYPE_Undefined
const CSG_Grid_System & Get_System(void) const
virtual int _asInt(void) const
long Get_Color(int Index) const
virtual bool Update_Data(void)
int Get_Count(void) const
#define SG_PARAMETER_DATA_SET_CHANGED
#define DATAOBJECT_CREATE
CSG_PointCloud * asPointCloud(void) const
bool is_Equal(const CSG_Grid_System &System) const
@ PARAMETER_TYPE_Table_Field
CSG_Shapes * asShapes(void) const
bool is_Enabled(bool bCheckEnv=true) const
#define PARAMETER_DESCRIPTION_OPTIONAL
bool Set_Default(int Value)
CSG_Parameter * Add_Node(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bCollapsed=false)
virtual bool Del_Item(CSG_Data_Object *pItem, bool bUpdateData=true)
virtual bool _Serialize(CSG_MetaData &MetaData, bool bSave)
CSG_Grid * Get_Grid(const CSG_String &ID, TSG_Data_Type Type=SG_DATATYPE_Float)
CSG_String SG_Parameter_Type_Get_Identifier(TSG_Parameter_Type Type)
class CSG_Parameters * asParameters(void) const
bool Set_User_Defined_ZLevels(CSG_Parameters *pParameters, double zMin, double zMax, int nLevels, int Rounding=2)
class CSG_Tool * Get_Tool(void) const
bool Set_Name(const CSG_String &Name)
void Set_Enabled(bool bEnabled=true)
int Get_Count(void) const
bool SG_UI_DataObject_Add(CSG_Data_Object *pDataObject, int Show)
class CSG_Parameter_Data_Type * asDataType(void) const
virtual void * _asPointer(void) const
CSG_Parameter * Get_Child(int iChild) const
#define PARAMETER_DESCRIPTION_TYPE
virtual ~CSG_Parameter(void)
bool is_Serializable(void) const
sLong Get_Count(void) const
bool Add_Grids(const CSG_String &ID, const CSG_String &Name, bool bOptional, bool bZLevels=false)
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)
bool Assign(const CSG_Grid_System &System)
CSG_Grids * Get_Grids(const CSG_String &ID, TSG_Data_Type Type=SG_DATATYPE_Float)
#define SG_PARAMETER_DATA_SET_FALSE
CSG_Parameters_Grid_Target(void)
CSG_String Get_CmdID(void) const
class CSG_Parameter_PointCloud_List * asPointCloudList(void) const
#define PARAMETER_IGNORE_PROJECTION
virtual bool Toggle_Value(void)
CSG_Parameter * Add_Parameters(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
@ PARAMETER_TYPE_Grid_List
CSG_String SG_Data_Type_Get_Name(TSG_Data_Type Type, bool bShort)
virtual void _Set_String(void)
CSG_Parameter * Add_Grids(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)
bool is_Optional(void) const
bool Create(const CSG_Parameters &Parameters)
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)
@ SG_DATAOBJECT_TYPE_Grid
size_t Replace(const CSG_String &Old, const CSG_String &New, bool bReplaceAll=true)
bool is_Value_Equal(CSG_Parameter *pParameter) const
virtual const CSG_Rect & Get_Extent(void)
class CSG_Parameter_File_Name * asFilePath(void) const
bool Del_Parameter(int i)
CSG_Data_Object * Add(CSG_Data_Object *pObject)
void Set_UseInGUI(bool bOn=false)
bool is_Output(void) const
const CSG_String & Get_PROJ(void) const
CSG_Grids * SG_Create_Grids(void)
static CSG_String Format(const char *Format,...)
int Get_Item_Count(void) const
const CSG_String & Get_Identifier(void) const
CSG_Grid_Resampling asGrid_Resampling(void) const
bool Activate_GUI(bool bReset=false)
@ SG_DATAOBJECT_TYPE_Shapes
#define PARAMETER_NOT_FOR_GUI
@ SG_DATAOBJECT_TYPE_Undefined
#define PARAMETER_GUI_COLLAPSED
const CSG_String & Get_Default(void) const
int Get_Children_Count(void) const
const SG_Char * Get_Item(int Index) const
CSG_Parameter * Get_Parent(void) const
bool is_DataObject(void) const
const CSG_Rect & Get_Extent(bool bCells=false) const
#define PARAMETER_NOT_FOR_CMD
class CSG_Parameter_Table_Fields * asTableFields(void) const
bool Set_Children_Enabled(bool bEnabled=true)
class CSG_Parameter_Choice * asChoice(void) const
@ SG_DATAOBJECT_TYPE_Table
bool Check(bool bSilent=true)
bool is_Empty(void) const
#define PARAMETER_DESCRIPTION_TEXT
bool has_Changed(int Check_Flags=PARAMETER_CHECK_ALL)
double asDouble(void) const
@ PARAMETER_TYPE_Grid_System
@ PARAMETER_TYPE_PointCloud_List
double Get_XCenter(void) const
double Get_YMax(void) const
double Get_XMin(void) const
@ PARAMETER_TYPE_Table_List
class CSG_Parameter_Range * asRange(void) const
CSG_Rect & Inflate(double d, bool bPercent=true)
int Get_Selection_Index(int i) const
class CSG_Data_Manager * Get_Manager(void) const
class CSG_Parameter_Table_List * asTableList(void) const
CSG_Data_Collection & Grids(void) const
bool do_UseInGUI(void) const
bool is_Collapsed(void) const
double Get_YCenter(void) const
@ PARAMETER_TYPE_DataObject_Output
bool Set_Parameter(const CSG_String &ID, CSG_Parameter *pValue)
const CSG_String & Get_Item(int i) const
#define PARAMETER_DESCRIPTION_PROPERTIES
bool Set_Enabled(bool bEnabled=true)
const SG_Char * c_str(void) const
static bool On_Parameter_Changed(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
CSG_Grid * SG_Create_Grid(void)
TSG_Data_Object_Type Get_DataObject_Type(void) const
double Get_Min(void) const
SAGA_API_DLL_EXPORT void * SG_Realloc(void *memblock, size_t size)
bool Cmp_Identifier(const CSG_String &Identifier) const
bool is_Parameters(void) const
CSG_Grids * asGrids(void) const
CSG_Grid_System * asGrid_System(void) const
CSG_Data_Collection & Grid(void) const
const SG_Char * Get_Name(void) const
const SG_Char * asFont(void) const
virtual bool is_Default(void) const
bool is_Option(void) const
bool Create(const CSG_Projection &Projection)
@ PARAMETER_TYPE_TIN_List
@ PARAMETER_TYPE_Parameters
bool Deactivate_GUI(void)
bool Create(CSG_Parameters &Parameters, const CSG_String &ParentID="")
class CSG_Parameter_List * asList(void) const
virtual bool Restore_Default(void)
bool On_Parameters_Enable(CSG_Parameters *pParameters, CSG_Parameter *pParameter)
double Get_YRange(void) const
@ SG_DATAOBJECT_TYPE_PointCloud
bool Set_Callback(bool bActive=true)
class CSG_Parameter_Choices * asChoices(void) const
bool is_Information(void) const
#define PARAMETER_DESCRIPTION_NAME
CSG_Parameters_CRSPicker(void)
CSG_Parameter * Add_Bool(const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value=false)
bool is_Valid(void) const
CSG_Grid_System Get_System(void) const
CSG_String Get_Type_Identifier(void) const
bool Del_Grids(bool bDetach=false)
#define PARAMETER_OUTPUT_OPTIONAL
#define DATAOBJECT_NOTSET
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)