SAGA API  v9.2
parameters.h
Go to the documentation of this file.
1 
3 // //
4 // SAGA //
5 // //
6 // System for Automated Geoscientific Analyses //
7 // //
8 // Application Programming Interface //
9 // //
10 // Library: SAGA_API //
11 // //
12 //-------------------------------------------------------//
13 // //
14 // parameters.h //
15 // //
16 // Copyright (C) 2005 by Olaf Conrad //
17 // //
18 //-------------------------------------------------------//
19 // //
20 // This file is part of 'SAGA - System for Automated //
21 // Geoscientific Analyses'. //
22 // //
23 // This library is free software; you can redistribute //
24 // it and/or modify it under the terms of the GNU Lesser //
25 // General Public License as published by the Free //
26 // Software Foundation, either version 2.1 of the //
27 // License, or (at your option) any later version. //
28 // //
29 // This library is distributed in the hope that it will //
30 // be useful, but WITHOUT ANY WARRANTY; without even the //
31 // implied warranty of MERCHANTABILITY or FITNESS FOR A //
32 // PARTICULAR PURPOSE. See the GNU Lesser General Public //
33 // License for more details. //
34 // //
35 // You should have received a copy of the GNU Lesser //
36 // General Public License along with this program; if //
37 // not, see <http://www.gnu.org/licenses/>. //
38 // //
39 //-------------------------------------------------------//
40 // //
41 // contact: Olaf Conrad //
42 // Institute of Geography //
43 // University of Goettingen //
44 // Goldschmidtstr. 5 //
45 // 37077 Goettingen //
46 // Germany //
47 // //
48 // e-mail: oconrad@saga-gis.org //
49 // //
51 
52 //---------------------------------------------------------
53 #ifndef HEADER_INCLUDED__SAGA_API__parameters_H
54 #define HEADER_INCLUDED__SAGA_API__parameters_H
55 
56 
58 // //
59 // //
60 // //
62 
63 //---------------------------------------------------------
72 // //
74 // //
75 // //
77 
78 //---------------------------------------------------------
79 #include "grids.h"
80 #include "table.h"
81 #include "shapes.h"
82 #include "tin.h"
83 #include "pointcloud.h"
84 #include "datetime.h"
85 
86 
88 // //
89 // //
90 // //
92 
93 //---------------------------------------------------------
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 
102 #define PARAMETER_INPUT_OPTIONAL (PARAMETER_INPUT | PARAMETER_OPTIONAL)
103 #define PARAMETER_OUTPUT_OPTIONAL (PARAMETER_OUTPUT | PARAMETER_OPTIONAL)
104 
105 //---------------------------------------------------------
106 #define PARAMETER_DESCRIPTION_NAME 0x01
107 #define PARAMETER_DESCRIPTION_TYPE 0x02
108 #define PARAMETER_DESCRIPTION_OPTIONAL 0x04
109 #define PARAMETER_DESCRIPTION_PROPERTIES 0x08
110 #define PARAMETER_DESCRIPTION_TEXT 0x10
111 #define PARAMETER_DESCRIPTION_ALL (PARAMETER_DESCRIPTION_NAME | PARAMETER_DESCRIPTION_TYPE | PARAMETER_DESCRIPTION_OPTIONAL | PARAMETER_DESCRIPTION_PROPERTIES | PARAMETER_DESCRIPTION_TEXT)
112 
113 
115 // //
116 // //
117 // //
119 
120 //---------------------------------------------------------
121 typedef enum
122 {
124 
137 
142 
146 
153 
160 
162 
164 
166 }
168 
169 
171 // //
172 // //
173 // //
175 
176 //---------------------------------------------------------
180 
181 
183 // //
184 // //
185 // //
187 
188 //---------------------------------------------------------
189 #define PARAMETER_CHECK_VALUES 0x01
190 #define PARAMETER_CHECK_ENABLE 0x02
191 #define PARAMETER_CHECK_ALL (PARAMETER_CHECK_VALUES | PARAMETER_CHECK_ENABLE)
192 
193 //---------------------------------------------------------
194 #define SG_PARAMETER_DATA_SET_FALSE 0
195 #define SG_PARAMETER_DATA_SET_TRUE 1
196 #define SG_PARAMETER_DATA_SET_CHANGED 2
197 
198 
200 // //
201 // CSG_Parameter //
202 // //
204 
205 //---------------------------------------------------------
207 {
208 public:
209 
210  CSG_Parameters * Get_Parameters (void) const;
211  CSG_Parameter * Get_Parent (void) const;
212  class CSG_Data_Manager * Get_Manager (void) const;
213 
214  virtual TSG_Parameter_Type Get_Type (void) const = 0;
215  CSG_String Get_Type_Identifier (void) const;
216  CSG_String Get_Type_Name (void) const;
217 
218  const SG_Char * Get_Identifier (void) const;
219  bool Cmp_Identifier (const CSG_String &Identifier) const;
220  bool Set_Name (const CSG_String &Name);
221  const SG_Char * Get_Name (void) const;
222  const SG_Char * Get_Description (void) const;
223  bool Set_Description (const CSG_String &Description);
224  CSG_String Get_Description (int Flags) const;
225  CSG_String Get_Description (int Flags, const SG_Char *Separator) const;
226 
227  bool Set_Enabled (bool bEnabled = true);
228  bool is_Enabled (bool bCheckEnv = true) const;
229 
230  virtual bool is_Valid (void) const { return( true ); }
231  bool is_Input (void) const { return( !!(m_Constraint & PARAMETER_INPUT ) ); }
232  bool is_Output (void) const { return( !!(m_Constraint & PARAMETER_OUTPUT ) ); }
233  bool is_Optional (void) const { return( !!(m_Constraint & PARAMETER_OPTIONAL ) ); }
234  bool is_Information (void) const { return( !!(m_Constraint & PARAMETER_INFORMATION) ); }
235  bool is_Option (void) const;
236  bool is_DataObject (void) const;
237  bool is_DataObject_List (void) const;
238  bool is_Parameters (void) const;
239  bool is_Serializable (void) const;
240  bool is_Compatible (CSG_Parameter *pParameter) const;
241  bool is_Value_Equal (CSG_Parameter *pParameter) const;
242 
243  void Set_UseInGUI (bool bDoUse = false);
244  void Set_UseInCMD (bool bDoUse = false);
245 
246  bool do_UseInGUI (void) const;
247  bool do_UseInCMD (void) const;
248 
249  void ignore_Projection (bool bIgnore);
250  bool ignore_Projection (void) const { return( !!(m_Constraint & PARAMETER_IGNORE_PROJECTION) ); }
251 
252  TSG_Data_Object_Type Get_DataObject_Type (void) const;
253 
254  int Get_Children_Count (void) const { return( m_nChildren ); }
255  CSG_Parameter * Get_Child (int iChild) const { return( iChild >= 0 && iChild < m_nChildren ? m_Children[iChild] : NULL ); }
256  bool Set_Children_Enabled (bool bEnabled = true);
257 
258  //-----------------------------------------------------
259  virtual bool Set_Value (int Value);
260  virtual bool Set_Value (double Value);
261  virtual bool Set_Value (const CSG_String &Value);
262  virtual bool Set_Value (const char *Value);
263  virtual bool Set_Value (const wchar_t *Value);
264  virtual bool Set_Value (void *Value);
265  virtual bool Set_Value (CSG_Parameter *Value);
266 
267  virtual bool Toggle_Value (void);
268 
269  bool Set_Default (int Value);
270  bool Set_Default (double Value);
271  bool Set_Default (const CSG_String &Value);
272  const CSG_String & Get_Default (void) const;
273  virtual bool is_Default (void) const;
274  virtual bool Restore_Default (void);
275 
276  bool Check (bool bSilent = true);
277 
278  bool has_Changed (int Check_Flags = PARAMETER_CHECK_ALL);
279 
280  bool asBool (void) const { return( (bool )!!_asInt () ); }
281  int asInt (void) const { return( (int )_asInt () ); }
282  long asColor (void) const { return( (long )_asInt () ); }
283  double asDouble (void) const { return( (double )_asDouble () ); }
284  const SG_Char * asString (void) const { return( (const SG_Char *)_asString () ); }
285  void * asPointer (void) const { return( (void *)_asPointer() ); }
286 
287  CSG_Colors * asColors (void) const;
288  const SG_Char * asFont (void) const;
289  CSG_Grid_System * asGrid_System (void) const;
290 
291  CSG_Data_Object * asDataObject (void) const;
292  CSG_Grid * asGrid (void) const;
293  CSG_Grids * asGrids (void) const;
294  CSG_Table * asTable (void) const;
295  CSG_Shapes * asShapes (void) const;
296  CSG_TIN * asTIN (void) const;
297  CSG_PointCloud * asPointCloud (void) const;
298 
299  //-----------------------------------------------------
300  class CSG_Parameter_Value * asValue (void) const;
301  class CSG_Parameter_Date * asDate (void) const;
302  class CSG_Parameter_Data_Type * asDataType (void) const;
303  class CSG_Parameter_Choice * asChoice (void) const;
304  class CSG_Parameter_Choices * asChoices (void) const;
305  class CSG_Parameter_Range * asRange (void) const;
306  class CSG_Parameter_File_Name * asFilePath (void) const;
307  class CSG_Parameter_Table_Fields * asTableFields (void) const;
308  class CSG_Parameters * asParameters (void) const;
309 
310  class CSG_Parameter_List * asList (void) const;
311  class CSG_Parameter_Grid_List * asGridList (void) const;
312  class CSG_Parameter_Grids_List * asGridsList (void) const;
313  class CSG_Parameter_Table_List * asTableList (void) const;
314  class CSG_Parameter_Shapes_List * asShapesList (void) const;
315  class CSG_Parameter_TIN_List * asTINList (void) const;
317 
318  //-----------------------------------------------------
319  bool Assign (CSG_Parameter *pSource);
320  bool Serialize (CSG_MetaData &MetaData, bool bSave);
321 
322 
323 protected:
324 
325  friend class CSG_Parameters;
326 
327  CSG_Parameter(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
328  virtual ~CSG_Parameter(void);
329 
331 
332 
333  virtual int _Set_Value (int Value);
334  virtual int _Set_Value (double Value);
335  virtual int _Set_Value (const CSG_String &Value);
336  virtual int _Set_Value (void *Value);
337 
338  virtual void _Set_String (void);
339 
340  virtual int _asInt (void) const;
341  virtual double _asDouble (void) const;
342  virtual void * _asPointer (void) const;
343  virtual const SG_Char * _asString (void) const;
344 
345  virtual bool _Assign (CSG_Parameter *pSource);
346  virtual bool _Serialize (CSG_MetaData &MetaData, bool bSave);
347 
348 
349 private:
350 
351  void _Add_Child (CSG_Parameter *pChild);
352 
353 
354  bool m_bEnabled;
355 
356  int m_Constraint, m_nChildren;
357 
358  CSG_Parameter **m_Children;
359 
360  CSG_String m_Identifier, m_Name, m_Description, m_Default;
361 
362  CSG_Parameter *m_pParent;
363 
364  CSG_Parameters *m_pParameters;
365 
366 };
367 
368 
370 // //
372 
373 //---------------------------------------------------------
375 {
376 public:
377 
378  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Node ); }
379 
380 
381 protected:
382 
383  CSG_Parameter_Node(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
384 
385  friend class CSG_Parameters;
386 };
387 
388 
390 // //
392 
393 //---------------------------------------------------------
395 {
396 public:
397 
398  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Bool ); }
399 
400  virtual bool is_Default (void) const;
401 
402  virtual bool Toggle_Value (void);
403 
404 
405 protected:
406 
407  CSG_Parameter_Bool(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
408 
409  bool m_Value;
410 
411 
412  virtual int _Set_Value (int Value);
413  virtual int _Set_Value (double Value);
414  virtual int _Set_Value (const CSG_String &Value);
415 
416  virtual void _Set_String (void);
417 
418  virtual int _asInt (void) const { return( m_Value ); }
419 
420  virtual bool _Assign (CSG_Parameter *pSource);
421  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
422 
423 
424  friend class CSG_Parameters;
425 };
426 
427 
429 // //
431 
432 //---------------------------------------------------------
434 {
435 public:
436 
437  bool Set_Valid_Range (double Minimum, double Maximum);
438 
439  void Set_Minimum (double Minimum, bool bOn = true);
440  double Get_Minimum (void) const { return( m_Minimum ); }
441  bool has_Minimum (void) const { return( m_bMinimum ); }
442 
443  void Set_Maximum (double Maximum, bool bOn = true);
444  double Get_Maximum (void) const { return( m_Maximum ); }
445  bool has_Maximum (void) const { return( m_bMaximum ); }
446 
447 
448 protected:
449 
450  CSG_Parameter_Value(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
451 
452  bool m_bMinimum, m_bMaximum;
453 
454  double m_Minimum, m_Maximum;
455 
456 
457  virtual bool _Assign (CSG_Parameter *pSource);
458 
459 
460  friend class CSG_Parameters;
461 };
462 
463 
465 // //
467 
468 //---------------------------------------------------------
470 {
471 public:
472 
473  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Int ); }
474 
475  virtual bool is_Default (void) const;
476 
477 
478 protected:
479 
480  CSG_Parameter_Int(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
481 
482  int m_Value;
483 
484 
485  virtual int _Set_Value (int Value);
486  virtual int _Set_Value (double Value);
487  virtual int _Set_Value (const CSG_String &Value);
488 
489  virtual void _Set_String (void);
490 
491  virtual int _asInt (void) const { return( m_Value ); }
492  virtual double _asDouble (void) const { return( m_Value ); }
493 
494  virtual bool _Assign (CSG_Parameter *pSource);
495  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
496 
497 
498  friend class CSG_Parameters;
499 };
500 
501 
503 // //
505 
506 //---------------------------------------------------------
508 {
509 public:
510 
511  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Double ); }
512 
513  virtual bool is_Default (void) const;
514 
515 
516 protected:
517 
518  CSG_Parameter_Double(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
519 
520  double m_Value;
521 
522 
523  virtual int _Set_Value (int Value);
524  virtual int _Set_Value (double Value);
525  virtual int _Set_Value (const CSG_String &Value);
526 
527  virtual void _Set_String (void);
528 
529  virtual int _asInt (void) const { return( (int)m_Value ); }
530  virtual double _asDouble (void) const { return( m_Value ); }
531 
532  virtual bool _Assign (CSG_Parameter *pSource);
533  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
534 
535 
536  friend class CSG_Parameters;
537 };
538 
539 
541 // //
543 
544 //---------------------------------------------------------
546 {
547 public:
548 
549  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Degree ); }
550 
551 
552 protected:
553 
554  CSG_Parameter_Degree(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
555 
556  virtual int _Set_Value (const CSG_String &Value);
557 
558  virtual void _Set_String (void);
559 
560 
561  friend class CSG_Parameters;
562 };
563 
564 
566 // //
568 
569 //---------------------------------------------------------
571 {
572 public:
573 
574  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Date ); }
575 
576  void Set_Date (const CSG_DateTime &Date);
577  const CSG_DateTime & Get_Date (void) const { return( m_Date ); }
578 
579 
580 protected:
581 
582  CSG_Parameter_Date(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
583 
585 
586 
587  virtual int _Set_Value (int Value);
588  virtual int _Set_Value (double Value);
589  virtual int _Set_Value (const CSG_String &Value);
590 
591  virtual void _Set_String (void);
592 
593  virtual int _asInt (void) const;
594  virtual double _asDouble (void) const;
595 
596  virtual bool _Assign (CSG_Parameter *pSource);
597  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
598 
599 
600  friend class CSG_Parameters;
601 };
602 
603 
605 // //
607 
608 //---------------------------------------------------------
610 {
611 public:
612 
613  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Range ); }
614 
615  bool Set_Range (double Min, double Max);
616  double Get_Range (void) const { return( Get_Max() - Get_Min() ); }
617 
618  bool Set_Min (double Min);
619  double Get_Min (void) const;
620  CSG_Parameter_Double * Get_Min_Parameter (void) const { return( m_pMin ); }
621 
622  bool Set_Max (double Max);
623  double Get_Max (void) const;
624  CSG_Parameter_Double * Get_Max_Parameter (void) const { return( m_pMax ); }
625 
626  virtual bool is_Default (void) const;
627 
628  virtual bool Restore_Default (void);
629 
630 
631 protected:
632 
633  CSG_Parameter_Range(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
634  virtual ~CSG_Parameter_Range(void);
635 
637 
639 
640 
641  virtual int _Set_Value (const CSG_String &Value);
642 
643  virtual void _Set_String (void);
644 
645  virtual bool _Assign (CSG_Parameter *pSource);
646  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
647 
648 
649  friend class CSG_Parameters;
650 };
651 
652 
654 // //
656 
657 //---------------------------------------------------------
659 {
660 public:
661 
662  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Choice ); }
663 
664  virtual bool is_Default (void) const;
665 
666  virtual bool Toggle_Value (void);
667 
668  bool Del_Items (void);
669  bool Add_Item (const CSG_String &Item, const CSG_String &Data = "");
670 
671  bool Set_Items (const SG_Char *String);
672  CSG_String Get_Items (void) const;
673 
674  const SG_Char * Get_Item (int Index) const;
675  CSG_String Get_Item_Data (int Index) const;
676 
677  CSG_String Get_Data (void) const;
678  bool Get_Data (CSG_String &Value) const;
679  bool Get_Data (int &Value) const;
680  bool Get_Data (double &Value) const;
681 
682  int Get_Count (void) const { return( m_Items.Get_Count() ); }
683 
684 
685 protected:
686 
687  CSG_Parameter_Choice(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
688 
689  int m_Value;
690 
692 
693 
694  virtual int _Set_Value (int Value);
695  virtual int _Set_Value (double Value);
696  virtual int _Set_Value (const CSG_String &Value);
697 
698  virtual void _Set_String (void);
699 
700  virtual int _asInt (void) const { return( m_Value ); }
701  virtual double _asDouble (void) const { return( m_Value ); }
702 
703  virtual bool _Assign (CSG_Parameter *pSource);
704  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
705 
706 
707  friend class CSG_Parameters;
708 };
709 
710 
712 // //
714 
715 //---------------------------------------------------------
717 {
718 public:
719 
720  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Data_Type ); }
721 
722  bool Set_Data_Types (int Data_Types, TSG_Data_Type Default = SG_DATATYPE_Undefined, const CSG_String &User = "");
723 
724  bool Set_Data_Type (TSG_Data_Type Value);
725  TSG_Data_Type Get_Data_Type (TSG_Data_Type Default = SG_DATATYPE_Undefined) const;
726 
727 
728 protected:
729 
730  CSG_Parameter_Data_Type(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
731 
732 
733  virtual bool _Assign (CSG_Parameter *pSource);
734  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
735 
736 
737  friend class CSG_Parameters;
738 };
739 
740 
742 // //
744 
745 //---------------------------------------------------------
747 {
748 public:
749 
750  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Choices ); }
751 
752  void Set_Items (const CSG_String &Items);
753  void Set_Items (const CSG_Strings &Items);
754  CSG_String Get_Items (void) const;
755  void Del_Items (void);
756  void Add_Item (const CSG_String &Item, const CSG_String &Data = "");
757 
758  int Get_Item_Count (void) const { return( m_Items[0].Get_Count() ); }
759  const CSG_String & Get_Item (int i) const { return( m_Items[0][i] ); }
760  const CSG_String & Get_Item_Data (int i) const { return( m_Items[1][i] ); }
761 
762  int Get_Selection_Count (void) const { return( (int)m_Selection.Get_Size() ); }
763  const CSG_String & Get_Selection (int i) const { return( Get_Item (Get_Selection_Index(i)) ); }
764  const CSG_String & Get_Selection_Data (int i) const { return( Get_Item_Data(Get_Selection_Index(i)) ); }
765  int Get_Selection_Index (int i) const { return( i >= 0 && i < Get_Selection_Count() ? m_Selection[i] : -1 ); }
766 
767  bool is_Selected (int Index);
768  bool Select (int Index, bool bSelect = true);
769  bool Clr_Selection (void);
770 
771 
772 protected:
773 
774  CSG_Parameter_Choices(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
775 
776  CSG_Strings m_Items[2];
777 
779 
780 
781  virtual int _Set_Value (const CSG_String &Value);
782 
783  virtual void _Set_String (void);
784 
785  virtual bool _Assign (CSG_Parameter *pSource);
786  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
787 
788 
789  friend class CSG_Parameters;
790 };
791 
792 
794 // //
796 
797 //---------------------------------------------------------
799 {
800 public:
801 
802  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_String ); }
803 
804  virtual bool is_Valid (void) const;
805 
806  void Set_Password (bool bOn);
807  bool is_Password (void) const;
808 
809 
810 protected:
811 
812  CSG_Parameter_String(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
813 
815 
816 
817  virtual int _Set_Value (const CSG_String &Value);
818 
819  virtual bool _Assign (CSG_Parameter *pSource);
820  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
821 
822 
823  friend class CSG_Parameters;
824 };
825 
826 
828 // //
830 
831 //---------------------------------------------------------
833 {
834 public:
835  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Text ); }
836 
837 
838 protected:
839 
840  CSG_Parameter_Text(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
841 
842 
843  friend class CSG_Parameters;
844 };
845 
846 
848 // //
850 
851 //---------------------------------------------------------
853 {
854 public:
855 
856  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_FilePath ); }
857 
858  void Set_Filter (const SG_Char *Filter);
859  const SG_Char * Get_Filter (void) const;
860 
861  void Set_Flag_Save (bool bFlag);
862  bool is_Save (void) const { return( m_bSave ); }
863 
864  void Set_Flag_Multiple (bool bFlag);
865  bool is_Multiple (void) const { return( m_bMultiple ); }
866 
867  void Set_Flag_Directory (bool bFlag);
868  bool is_Directory (void) const { return( m_bDirectory ); }
869 
870  bool Get_FilePaths (CSG_Strings &FilePaths) const;
871 
872 
873 protected:
874 
875  CSG_Parameter_File_Name(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
876 
877  bool m_bSave, m_bMultiple, m_bDirectory;
878 
880 
881 
882  virtual bool _Assign (CSG_Parameter *pSource);
883 
884 
885  friend class CSG_Parameters;
886 };
887 
888 
890 // //
892 
893 //---------------------------------------------------------
895 {
896 public:
897 
898  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Font ); }
899 
900  virtual bool Restore_Default (void);
901 
902 
903 protected:
904 
905  CSG_Parameter_Font(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
906 
907  int m_Color;
908 
909 
910  virtual int _Set_Value (int Value);
911  virtual int _Set_Value (const CSG_String &Value);
912 
913  virtual int _asInt (void) const;
914  virtual void * _asPointer (void) const;
915 
916  virtual bool _Assign (CSG_Parameter *pSource);
917  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
918 
919 
920  friend class CSG_Parameters;
921 };
922 
923 
925 // //
927 
928 //---------------------------------------------------------
930 {
931 public:
932 
933  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Color ); }
934 
935  virtual int _Set_Value (const CSG_String &Value);
936 
937 
938 protected:
939 
940  CSG_Parameter_Color(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
941 
942 
943  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
944 
945 
946  friend class CSG_Parameters;
947 };
948 
949 
951 // //
953 
954 //---------------------------------------------------------
956 {
957 public:
958 
959  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Colors ); }
960 
961 
962 protected:
963 
964  CSG_Parameter_Colors(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
965 
967 
968 
969  virtual int _Set_Value (int Value);
970 
971  virtual void _Set_String (void);
972 
973  virtual int _asInt (void) const;
974  virtual void * _asPointer (void) const;
975 
976  virtual bool _Assign (CSG_Parameter *pSource);
977  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
978 
979 
980  friend class CSG_Parameters;
981 };
982 
983 
985 // //
987 
988 //---------------------------------------------------------
990 {
991 public:
992 
993  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_FixedTable ); }
994 
995 
996 protected:
997 
998  CSG_Parameter_Fixed_Table(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
999 
1001 
1002 
1003  virtual void _Set_String (void);
1004 
1005  virtual void * _asPointer (void) const;
1006 
1007  virtual bool _Assign (CSG_Parameter *pSource);
1008  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1009 
1010 
1011  friend class CSG_Parameters;
1012 };
1013 
1014 
1016 // //
1018 
1019 //---------------------------------------------------------
1021 {
1022 public:
1023 
1024  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Grid_System ); }
1025 
1026 
1027 protected:
1028 
1029  CSG_Parameter_Grid_System(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1030 
1032 
1033 
1034  virtual int _Set_Value (void *Value);
1035 
1036  virtual void _Set_String (void);
1037 
1038  virtual void * _asPointer (void) const;
1039 
1040  virtual bool _Assign (CSG_Parameter *pSource);
1041  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1042 
1043 
1044  friend class CSG_Parameters;
1045 };
1046 
1047 
1049 // //
1051 
1052 //---------------------------------------------------------
1054 {
1055 public:
1056 
1057  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Table_Field ); }
1058 
1059  bool Add_Default (double Value, double Minimum, bool bMinimum, double Maximum, bool bMaximum);
1060 
1061  CSG_Table * Get_Table (void) const;
1062 
1063  static CSG_String Get_Choices (const class CSG_Table &Table, bool bAllowNone = false);
1064 
1065 
1066 protected:
1067 
1068  CSG_Parameter_Table_Field(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1069 
1071 
1072 
1073  virtual int _Set_Value (int Value);
1074  virtual int _Set_Value (const CSG_String &Value);
1075 
1076  virtual void _Set_String (void);
1077 
1078  virtual double _asDouble (void) const;
1079 
1080  virtual bool _Assign (CSG_Parameter *pSource);
1081  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1082 
1083 
1084  friend class CSG_Parameters;
1085 };
1086 
1087 
1089 // //
1091 
1092 //---------------------------------------------------------
1094 {
1095 public:
1096 
1097  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Table_Fields ); }
1098 
1099  int Get_Count (void) const { return( m_nFields ); }
1100  int Get_Index (int i) const { return( i >= 0 && i < m_nFields ? m_Fields[i] : -1 ); }
1101 
1102  CSG_Table * Get_Table (void) const;
1103 
1104 
1105 protected:
1106 
1107  CSG_Parameter_Table_Fields(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1108  virtual ~CSG_Parameter_Table_Fields(void);
1109 
1110  int m_nFields, *m_Fields;
1111 
1112 
1113  virtual int _Set_Value (const CSG_String &Value);
1114 
1115  virtual int _asInt (void) const;
1116  virtual void * _asPointer (void) const;
1117 
1118  virtual bool _Assign (CSG_Parameter *pSource);
1119  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1120 
1121 
1122  friend class CSG_Parameters;
1123 };
1124 
1125 
1127 // //
1129 
1130 //---------------------------------------------------------
1132 {
1133 public:
1134 
1135  virtual bool is_Valid (void) const;
1136 
1137 
1138 protected:
1139 
1140  CSG_Parameter_Data_Object(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1141 
1143 
1144 
1145  virtual int _Set_Value (void *Value);
1146 
1147  virtual void _Set_String (void);
1148 
1149  virtual void * _asPointer (void) const;
1150 
1151  virtual bool _Assign (CSG_Parameter *pSource);
1152  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1153 
1154 
1155  friend class CSG_Parameters;
1156 };
1157 
1158 
1160 // //
1162 
1163 //---------------------------------------------------------
1165 {
1166 public:
1167 
1169 
1170  bool Set_DataObject_Type (TSG_Data_Object_Type Type);
1171  TSG_Data_Object_Type Get_DataObject_Type (void) const { return( m_Type ); }
1172 
1173 
1174 protected:
1175 
1176  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);
1177 
1179 
1180 
1181  virtual int _Set_Value (void *Value);
1182 
1183 
1184  friend class CSG_Parameters;
1185 };
1186 
1187 
1189 // //
1191 
1192 //---------------------------------------------------------
1194 {
1195 public:
1196 
1197  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Grid ); }
1198 
1199  void Set_Preferred_Type (TSG_Data_Type Type);
1200  TSG_Data_Type Get_Preferred_Type (void) const { return( m_Type ); }
1201 
1202  CSG_Grid_System * Get_System (void) const;
1203 
1204  bool Add_Default (double Value, double Minimum, bool bMinimum, double Maximum, bool bMaximum);
1205 
1206 
1207 protected:
1208 
1209  CSG_Parameter_Grid(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1210 
1212 
1214 
1215 
1216  virtual int _Set_Value (void *Value);
1217 
1218  virtual int _asInt (void) const;
1219  virtual double _asDouble (void) const;
1220 
1221  virtual bool _Assign (CSG_Parameter *pSource);
1222 
1223 
1224  friend class CSG_Parameters;
1225 };
1226 
1227 
1229 // //
1231 
1232 //---------------------------------------------------------
1234 {
1235 public:
1236 
1237  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Grids ); }
1238 
1239 
1240 protected:
1241 
1242  CSG_Parameter_Grids(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1243 
1244 
1245  friend class CSG_Parameters;
1246 };
1247 
1248 
1250 // //
1252 
1253 //---------------------------------------------------------
1255 {
1256 public:
1257 
1258  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Table ); }
1259 
1260  CSG_Parameter_Table(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1261 
1262 
1263 protected:
1264 
1265  virtual int _Set_Value (void *Value);
1266 
1267 
1268  friend class CSG_Parameters;
1269 };
1270 
1271 
1273 // //
1275 
1276 //---------------------------------------------------------
1278 {
1279 public:
1280 
1281  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Shapes ); }
1282 
1283  void Set_Shape_Type (TSG_Shape_Type Type);
1284  TSG_Shape_Type Get_Shape_Type (void) const { return( m_Type ); }
1285 
1286 
1287 protected:
1288 
1289  CSG_Parameter_Shapes(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1290 
1292 
1293 
1294  virtual int _Set_Value (void *Value);
1295 
1296  virtual bool _Assign (CSG_Parameter *pSource);
1297 
1298 
1299  friend class CSG_Parameters;
1300 };
1301 
1302 
1304 // //
1306 
1307 //---------------------------------------------------------
1309 {
1310 public:
1311 
1312  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_TIN ); }
1313 
1314 
1315 protected:
1316 
1317  CSG_Parameter_TIN(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1318 
1319 
1320  virtual int _Set_Value (void *Value);
1321 
1322 
1323  friend class CSG_Parameters;
1324 };
1325 
1326 
1328 // //
1330 
1331 //---------------------------------------------------------
1333 {
1334 public:
1335 
1336  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_PointCloud ); }
1337 
1338 
1339 protected:
1340 
1341  CSG_Parameter_PointCloud(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1342 
1343 
1344  virtual int _Set_Value (void *Value);
1345 
1346  virtual bool _Assign (CSG_Parameter *pSource);
1347 
1348 
1349  friend class CSG_Parameters;
1350 };
1351 
1352 
1354 // //
1356 
1357 //---------------------------------------------------------
1359 {
1360 public:
1361 
1362  virtual bool Add_Item (CSG_Data_Object *pItem);
1363  virtual bool Del_Item (CSG_Data_Object *pItem, bool bUpdateData = true);
1364  virtual bool Del_Item (int Index , bool bUpdateData = true);
1365  virtual bool Del_Items (void);
1366 
1367  int Get_Item_Count (void) const { return( (int)m_Objects.Get_Size() ); }
1368  CSG_Data_Object * Get_Item (int Index) const { return( Index >= 0 && Index < Get_Item_Count() ? (CSG_Data_Object *)m_Objects[Index] : NULL ); }
1369 
1370  virtual bool Update_Data (void) { return( true ); }
1371 
1372 
1373 protected:
1374 
1375  CSG_Parameter_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1376 
1377 
1378  virtual void _Set_String (void);
1379 
1380  virtual int _asInt (void) const;
1381  virtual void * _asPointer (void) const;
1382 
1383  virtual bool _Assign (CSG_Parameter *pSource);
1384  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1385 
1386 
1387 private:
1388 
1389  CSG_Array_Pointer m_Objects;
1390 
1391 
1392  friend class CSG_Parameters;
1393 };
1394 
1395 
1397 // //
1399 
1400 //---------------------------------------------------------
1402 {
1403 public:
1404 
1405  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Grid_List ); }
1406 
1407  CSG_Grid_System * Get_System (void) const;
1408 
1409  virtual bool Add_Item (CSG_Data_Object *pItem);
1410  virtual bool Del_Item (CSG_Data_Object *pItem, bool bUpdateData = true);
1411  virtual bool Del_Item (int Index , bool bUpdateData = true);
1412  virtual bool Del_Items (void);
1413 
1414  virtual bool Update_Data (void);
1415 
1416  int Get_Grid_Count (void) const { return( (int)m_Grids.Get_Size() ); }
1417  CSG_Grid * Get_Grid (int Index) const { return( Index >= 0 && Index < Get_Grid_Count() ? (CSG_Grid *)m_Grids[Index] : NULL ); }
1418 
1419 
1420 protected:
1421 
1422  CSG_Parameter_Grid_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1423 
1425 
1426 
1427  friend class CSG_Parameters;
1428 };
1429 
1430 
1432 // //
1434 
1435 //---------------------------------------------------------
1437 {
1438 public:
1439  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Grids_List ); }
1440 
1441  CSG_Grid_System * Get_System (void) const;
1442 
1443  virtual bool Add_Item (CSG_Data_Object *pItem);
1444 
1445  CSG_Grids * Get_Grids (int Index) const { return( (CSG_Grids *)Get_Item(Index) ); }
1446 
1447 
1448 protected:
1449 
1450  CSG_Parameter_Grids_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1451 
1452 
1453  friend class CSG_Parameters;
1454 };
1455 
1456 
1458 // //
1460 
1461 //---------------------------------------------------------
1463 {
1464 public:
1465 
1466  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Table_List ); }
1467 
1468  CSG_Table * Get_Table (int Index) const { return( (CSG_Table *)Get_Item(Index) ); }
1469 
1470 
1471 protected:
1472 
1473  CSG_Parameter_Table_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1474 
1475 
1476  friend class CSG_Parameters;
1477 };
1478 
1479 
1481 // //
1483 
1484 //---------------------------------------------------------
1486 {
1487 public:
1488 
1489  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Shapes_List ); }
1490 
1491  void Set_Shape_Type (TSG_Shape_Type Type);
1492  TSG_Shape_Type Get_Shape_Type (void) const { return( m_Type );}
1493 
1494  CSG_Shapes * Get_Shapes (int Index) const { return( (CSG_Shapes *)Get_Item(Index) ); }
1495 
1496 
1497 protected:
1498 
1499  CSG_Parameter_Shapes_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1500 
1502 
1503 
1504  virtual bool _Assign (CSG_Parameter *pSource);
1505 
1506 
1507  friend class CSG_Parameters;
1508 };
1509 
1510 
1512 // //
1514 
1515 //---------------------------------------------------------
1517 {
1518 public:
1519 
1520  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_TIN_List ); }
1521 
1522  CSG_TIN * asTIN (int Index) const { return( (CSG_TIN *)Get_Item(Index) ); }
1523 
1524 
1525 protected:
1526 
1527  CSG_Parameter_TIN_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1528 
1529 
1530  friend class CSG_Parameters;
1531 };
1532 
1533 
1535 // //
1537 
1538 //---------------------------------------------------------
1540 {
1541 public:
1542 
1543  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_PointCloud_List ); }
1544 
1545  CSG_PointCloud * Get_PointCloud (int Index) const { return( (CSG_PointCloud *)Get_Item(Index) ); }
1546 
1547 
1548 protected:
1549 
1550  CSG_Parameter_PointCloud_List(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1551 
1552 
1553  friend class CSG_Parameters;
1554 };
1555 
1556 
1558 // //
1560 
1561 //---------------------------------------------------------
1563 {
1564 public:
1565 
1566  virtual TSG_Parameter_Type Get_Type (void) const { return( PARAMETER_TYPE_Parameters ); }
1567 
1568  virtual bool Restore_Default (void);
1569 
1570 
1571 protected:
1572 
1573  CSG_Parameter_Parameters(CSG_Parameters *pOwner, CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1574  virtual ~CSG_Parameter_Parameters(void);
1575 
1577 
1578 
1579  virtual void _Set_String (void);
1580 
1581  virtual void * _asPointer (void) const;
1582 
1583  virtual bool _Assign (CSG_Parameter *pSource);
1584  virtual bool _Serialize (CSG_MetaData &Entry, bool bSave);
1585 
1586 
1587  friend class CSG_Parameters;
1588 };
1589 
1590 
1592 // //
1593 // Grid Target Selector //
1594 // //
1596 
1597 //---------------------------------------------------------
1599 {
1600 public:
1602 
1603  bool Create (CSG_Parameters *pParameters, bool bAddDefaultGrid , CSG_Parameter *pParent , const CSG_String &Prefix = "");
1604  bool Create (CSG_Parameters *pParameters, bool bAddDefaultGrid = true, const CSG_String &ParentID = "", const CSG_String &Prefix = "");
1605 
1606  bool Add_Grid (const CSG_String &ID, const CSG_String &Name, bool bOptional);
1607  bool Add_Grids (const CSG_String &ID, const CSG_String &Name, bool bOptional, bool bZLevels = false);
1608 
1609  bool On_Parameter_Changed (CSG_Parameters *pParameters, CSG_Parameter *pParameter);
1610  static bool On_Parameter_Changed (CSG_Parameters *pParameters, CSG_Parameter *pParameter, const CSG_String Prefix);
1611  bool On_Parameters_Enable (CSG_Parameters *pParameters, CSG_Parameter *pParameter);
1612  static bool On_Parameters_Enable (CSG_Parameters *pParameters, CSG_Parameter *pParameter, const CSG_String Prefix);
1613 
1614  bool Set_User_Defined (CSG_Parameters *pParameters, const TSG_Rect &Extent, int Rows = 0, int Rounding = 2);
1615  bool Set_User_Defined (CSG_Parameters *pParameters, CSG_Shapes *pPoints, int Scale = 4 , int Rounding = 2);
1616  bool Set_User_Defined (CSG_Parameters *pParameters, double xMin, double yMin, double Size, int nx, int ny);
1617  bool Set_User_Defined (CSG_Parameters *pParameters, const CSG_Grid_System &System);
1618 
1619  bool Set_User_Defined_ZLevels (CSG_Parameters *pParameters, double zMin, double zMax, int nLevels, int Rounding = 2);
1620 
1621  CSG_Grid_System Get_System (void);
1622 
1623  CSG_Grid * Get_Grid (const CSG_String &ID, TSG_Data_Type Type = SG_DATATYPE_Float);
1624  CSG_Grid * Get_Grid ( TSG_Data_Type Type = SG_DATATYPE_Float);
1625 
1626  CSG_Grids * Get_Grids (const CSG_String &ID, TSG_Data_Type Type = SG_DATATYPE_Float);
1627  CSG_Grids * Get_Grids ( TSG_Data_Type Type = SG_DATATYPE_Float);
1628 
1629 
1630 private:
1631 
1632  CSG_String m_Prefix;
1633 
1634  CSG_Parameters *m_pParameters;
1635 
1636 };
1637 
1638 
1640 // //
1641 // CSG_Parameters //
1642 // //
1644 
1645 //---------------------------------------------------------
1646 typedef int (* TSG_PFNC_Parameter_Changed) (CSG_Parameter *pParameter, int Flags);
1647 
1648 //---------------------------------------------------------
1650 {
1651  friend class CSG_Parameter;
1652  friend class CSG_Tool;
1653 
1654 public:
1655  CSG_Parameters(void);
1656  virtual ~CSG_Parameters(void);
1657 
1659  bool Create (const CSG_Parameters &Parameters);
1660 
1661  CSG_Parameters (const SG_Char *Name, const SG_Char *Description = NULL, const SG_Char *Identifier = NULL, bool bGrid_System = false);
1662  bool Create (const SG_Char *Name, const SG_Char *Description = NULL, const SG_Char *Identifier = NULL, bool bGrid_System = false);
1663 
1664  CSG_Parameters (void *pOwner, const SG_Char *Name, const SG_Char *Description = NULL, const SG_Char *Identifier = NULL, bool bGrid_System = false);
1665  bool Create (void *pOwner, const SG_Char *Name, const SG_Char *Description = NULL, const SG_Char *Identifier = NULL, bool bGrid_System = false);
1666 
1667  void Destroy (void);
1668 
1669  //-----------------------------------------------------
1670  void * Get_Owner (void) const { return( m_pOwner ); }
1671 
1672  class CSG_Tool * Get_Tool (void) const { return( m_pTool ); }
1673 
1674  class CSG_Data_Manager * Get_Manager (void) const { return( m_pManager ); }
1675  void Set_Manager (class CSG_Data_Manager *pManager);
1676 
1677  bool Use_Grid_System (void);
1678 
1679  bool has_GUI (void) const;
1680 
1681  int Get_Count (void) const { return( m_nParameters ); }
1682 
1683  void Set_Identifier (const CSG_String &Identifier);
1684  bool Cmp_Identifier (const CSG_String &Identifier) const;
1685  const CSG_String & Get_Identifier (void) const { return( m_Identifier ); }
1686 
1687  void Set_Name (const CSG_String &Name);
1688  const CSG_String & Get_Name (void) const { return( m_Name ); }
1689 
1690  void Set_Description (const CSG_String &Description);
1691  const CSG_String & Get_Description (void) const { return( m_Description ); }
1692 
1693  void Add_Reference (const CSG_String &Authors, const CSG_String &Year, const CSG_String &Title, const CSG_String &Where, const SG_Char *Link = NULL, const SG_Char *Link_Text = NULL);
1694  void Add_Reference (const CSG_String &Link, const SG_Char *Link_Text = NULL);
1695  void Del_References (void);
1696  const CSG_Strings & Get_References (void) const { return( m_References ); }
1697 
1698  void Set_Enabled (bool bEnabled = true);
1699  void Set_Enabled (const CSG_String &Identifier, bool bEnabled = true);
1700 
1701  //-----------------------------------------------------
1702  TSG_PFNC_Parameter_Changed Set_Callback_On_Parameter_Changed (TSG_PFNC_Parameter_Changed pCallback);
1703  bool Set_Callback (bool bActive = true);
1704 
1705  //-----------------------------------------------------
1706  CSG_Parameters & operator = (const CSG_Parameters &Parameters) { Create(Parameters); return( *this ); }
1707 
1708  CSG_Parameter * Get_Parameter (int i ) const { return( i >= 0 && i < m_nParameters ? m_Parameters[i] : NULL ); }
1709  CSG_Parameter * Get_Parameter (const CSG_String &ID) const;
1710 
1711  CSG_Parameter * operator() (int i ) const { return( Get_Parameter(i ) ); }
1712  CSG_Parameter * operator() (const CSG_String &ID) const { return( Get_Parameter(ID) ); }
1713  CSG_Parameter * operator() (const char *ID) const { return( Get_Parameter(ID) ); }
1714  CSG_Parameter * operator() (const wchar_t *ID) const { return( Get_Parameter(ID) ); }
1715 
1716  CSG_Parameter & operator[] (int i ) const { return( *Get_Parameter(i ) ); }
1717  CSG_Parameter & operator[] (const CSG_String &ID) const { return( *Get_Parameter(ID) ); }
1718  CSG_Parameter & operator[] (const char *ID) const { return( *Get_Parameter(ID) ); }
1719  CSG_Parameter & operator[] (const wchar_t *ID) const { return( *Get_Parameter(ID) ); }
1720 
1721  //-----------------------------------------------------
1722  bool Del_Parameter (int i);
1723  bool Del_Parameter (const CSG_String &ID);
1724 
1725  bool Del_Parameters (void);
1726 
1727  //-----------------------------------------------------
1728  CSG_Parameter * Add_Parameter (CSG_Parameter *pParameter);
1729 
1730  CSG_Parameter * Add_Node (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1731 
1732  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);
1733  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);
1734 
1735  CSG_Parameter * Add_Bool (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value = false);
1736  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);
1737  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);
1738  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);
1739  CSG_Parameter * Add_Date (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value = 0.0); // Julian Day Number
1740  CSG_Parameter * Add_Color (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value = 0);
1741 
1742  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);
1743  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);
1744 
1745  CSG_Parameter * Add_Data_Type (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Data_Types, TSG_Data_Type Default = SG_DATATYPE_Undefined, const CSG_String &User = "");
1746 
1747  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);
1748  CSG_Parameter * Add_Choices (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const CSG_String &Items);
1749 
1750  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);
1751  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);
1752 
1753  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);
1754 
1755  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);
1756  CSG_Parameter * Add_Colors (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Colors *pInit = NULL);
1757  CSG_Parameter * Add_FixedTable (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Table *pInit = NULL);
1758 
1759  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);
1760  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);
1761  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);
1762  CSG_Parameter * Add_Grid_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1763  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);
1764 
1765  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);
1766  CSG_Parameter * Add_Grids_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1767  CSG_Parameter * Add_Grids_List (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint, bool bSystem_Dependent = true);
1768 
1769  CSG_Parameter * Add_Table_Field (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bAllowNone = false);
1770  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);
1771  CSG_Parameter * Add_Table_Fields (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1772  CSG_Parameter * Add_Table (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1773  CSG_Parameter * Add_Table_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1774  CSG_Parameter * Add_Table_List (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1775 
1776  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);
1777  CSG_Parameter * Add_Shapes_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1778  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);
1779 
1780  CSG_Parameter * Add_TIN (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1781  CSG_Parameter * Add_TIN_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1782  CSG_Parameter * Add_TIN_List (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1783 
1784  CSG_Parameter * Add_PointCloud (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1785  CSG_Parameter * Add_PointCloud_Output (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1786  CSG_Parameter * Add_PointCloud_List (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint);
1787 
1788  CSG_Parameter * Add_Parameters (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description);
1789 
1790  //-----------------------------------------------------
1791  bool Set_Parameter (const CSG_String &ID, CSG_Parameter *pValue);
1792  bool Set_Parameter (const char *ID, CSG_Parameter *pValue);
1793  bool Set_Parameter (const wchar_t *ID, CSG_Parameter *pValue);
1794  bool Set_Parameter (const CSG_String &ID, void *Value, int Type = PARAMETER_TYPE_Undefined);
1795  bool Set_Parameter (const char *ID, void *Value, int Type = PARAMETER_TYPE_Undefined);
1796  bool Set_Parameter (const wchar_t *ID, void *Value, int Type = PARAMETER_TYPE_Undefined);
1797  bool Set_Parameter (const CSG_String &ID, CSG_Data_Object *Value, int Type = PARAMETER_TYPE_Undefined);
1798  bool Set_Parameter (const char *ID, CSG_Data_Object *Value, int Type = PARAMETER_TYPE_Undefined);
1799  bool Set_Parameter (const wchar_t *ID, CSG_Data_Object *Value, int Type = PARAMETER_TYPE_Undefined);
1800  bool Set_Parameter (const CSG_String &ID, int Value, int Type = PARAMETER_TYPE_Undefined);
1801  bool Set_Parameter (const char *ID, int Value, int Type = PARAMETER_TYPE_Undefined);
1802  bool Set_Parameter (const wchar_t *ID, int Value, int Type = PARAMETER_TYPE_Undefined);
1803  bool Set_Parameter (const CSG_String &ID, double Value, int Type = PARAMETER_TYPE_Undefined);
1804  bool Set_Parameter (const char *ID, double Value, int Type = PARAMETER_TYPE_Undefined);
1805  bool Set_Parameter (const wchar_t *ID, double Value, int Type = PARAMETER_TYPE_Undefined);
1806  bool Set_Parameter (const CSG_String &ID, const CSG_String &Value, int Type = PARAMETER_TYPE_Undefined);
1807  bool Set_Parameter (const char *ID, const CSG_String &Value, int Type = PARAMETER_TYPE_Undefined);
1808  bool Set_Parameter (const wchar_t *ID, const CSG_String &Value, int Type = PARAMETER_TYPE_Undefined);
1809  bool Set_Parameter (const CSG_String &ID, const char *Value, int Type = PARAMETER_TYPE_Undefined);
1810  bool Set_Parameter (const char *ID, const char *Value, int Type = PARAMETER_TYPE_Undefined);
1811  bool Set_Parameter (const wchar_t *ID, const char *Value, int Type = PARAMETER_TYPE_Undefined);
1812  bool Set_Parameter (const CSG_String &ID, const wchar_t *Value, int Type = PARAMETER_TYPE_Undefined);
1813  bool Set_Parameter (const char *ID, const wchar_t *Value, int Type = PARAMETER_TYPE_Undefined);
1814  bool Set_Parameter (const wchar_t *ID, const wchar_t *Value, int Type = PARAMETER_TYPE_Undefined);
1815 
1816  bool Restore_Defaults (bool bClearData = false);
1817 
1818  bool Assign (CSG_Parameters *pSource);
1819  bool Assign_Values (CSG_Parameters *pSource);
1820  bool Assign_Parameters (CSG_Parameters *pSource);
1821 
1822  bool Load (const CSG_MetaData &Data);
1823  bool Save ( CSG_MetaData &Data) const;
1824 
1825  bool Load (const CSG_String &File);
1826  bool Save (const CSG_String &File) const;
1827 
1828  bool Serialize ( CSG_MetaData &Data, bool bSave) { return( bSave ? Save(Data) : Load(Data) ); }
1829  bool Serialize ( CSG_MetaData &Data ) const { return( Save(Data) ); }
1830  bool Serialize (const CSG_String &File, bool bSave) { return( bSave ? Save(File) : Load(File) ); }
1831  bool Serialize (const CSG_String &File ) const { return( Save(File) ); }
1832 
1833  bool Serialize_Compatibility (CSG_File &Stream);
1834 
1835  //-----------------------------------------------------
1836  bool DataObjects_Check (bool bSilent = false);
1837 
1838  //-----------------------------------------------------
1839  bool Get_String (CSG_String &String, bool bOptionsOnly);
1840  bool Msg_String (bool bOptionsOnly);
1841 
1842  bool Set_History (CSG_MetaData &History, bool bOptions = true, bool bDataObjects = true);
1843 
1844  bool is_Managed (void) const { return( m_pManager != NULL ); }
1845 
1846  CSG_Parameter * Get_Grid_System_Parameter (void) const { return( m_pGrid_System ); }
1847  CSG_Grid_System * Get_Grid_System (void) const { return( m_pGrid_System ? m_pGrid_System->asGrid_System() : NULL ); }
1848  bool Set_Grid_System (const CSG_Grid_System &System);
1849  bool Reset_Grid_System (void);
1850 
1851 
1852 private:
1853 
1854  void *m_pOwner;
1855 
1856  class CSG_Tool *m_pTool;
1857 
1858  class CSG_Data_Manager *m_pManager;
1859 
1860  bool m_bCallback;
1861 
1862  CSG_String m_Identifier, m_Name, m_Description;
1863 
1864  CSG_Strings m_References;
1865 
1866  int m_nParameters;
1867 
1868  CSG_Parameter **m_Parameters, *m_pGrid_System;
1869 
1870  TSG_PFNC_Parameter_Changed m_Callback;
1871 
1872 
1873  void _On_Construction (void);
1874 
1875  bool _On_Parameter_Changed (CSG_Parameter *pParameter, int Flags);
1876 
1877  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);
1878  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);
1879  CSG_Parameter * _Add_String (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bInformation, const SG_Char *String, bool bLongText, bool bPassword);
1880 
1881  CSG_Parameter * _Add (const CSG_String &ParentID, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, TSG_Parameter_Type Type, int Constraint);
1882  CSG_Parameter * _Add (CSG_Parameter *pSource);
1883 
1884  bool DataObjects_Create (void);
1885  bool DataObjects_Synchronize (void);
1886  bool DataObjects_Get_Projection (CSG_Projection &Projection) const;
1887  bool DataObjects_Set_Projection (const CSG_Projection &Projection);
1888 
1889 
1890 public: // DEPRECATED BEGIN
1891 
1892  // old style calls (parent as csg_parameter pointer instead of identifier)
1893 
1894  CSG_Parameter * Add_Node (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1895  { return( Add_Node (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1896  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)
1897  { return( Add_Value (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Type, Value, Minimum, bMinimum, Maximum, bMaximum) ); }
1898  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)
1899  { return( Add_Info_Value (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Type, Value) ); }
1900  CSG_Parameter * Add_Bool (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value = false)
1901  { return( Add_Bool (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value) ); }
1902  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)
1903  { return( Add_Int (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value, Minimum, bMinimum, Maximum, bMaximum) ); }
1904  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)
1905  { return( Add_Double (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value, Minimum, bMinimum, Maximum, bMaximum) ); }
1906  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)
1907  { return( Add_Degree (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value, Minimum, bMinimum, Maximum, bMaximum) ); }
1908  CSG_Parameter * Add_Date (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value = 0.0)
1909  { return( Add_Date (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value) ); }
1910  CSG_Parameter * Add_Color (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value = 0)
1911  { return( Add_Color (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value) ); }
1912  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)
1913  { return( Add_Range (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Range_Min, Range_Max, Minimum, bMinimum, Maximum, bMaximum) ); }
1914  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)
1915  { return( Add_Info_Range (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Range_Min, Range_Max) ); }
1916  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)
1917  { return( Add_Choice (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Items, Default) ); }
1918  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)
1919  { return( Add_String (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, String, bLongText, bPassword) ); }
1920  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)
1921  { return( Add_Info_String (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, String, bLongText) ); }
1922  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)
1923  { return( Add_FilePath (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Filter, Default, bSave, bDirectory, bMultiple) ); }
1924  CSG_Parameter * Add_Font (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *pInit = NULL)
1925  { return( Add_Font (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, pInit) ); }
1926  CSG_Parameter * Add_Colors (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Colors *pInit = NULL)
1927  { return( Add_Colors (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, pInit) ); }
1928  CSG_Parameter * Add_FixedTable (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Table *pInit = NULL)
1929  { return( Add_FixedTable (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, pInit) ); }
1930  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)
1931  { return( Add_Grid_System (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, pInit) ); }
1932  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)
1933  { return( Add_Grid (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint, bSystem_Dependent, Preferred_Type) ); }
1934  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)
1935  { return( Add_Grid_or_Const (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value, Minimum, bMinimum, Maximum, bMaximum, bSystem_Dependent) ); }
1936  CSG_Parameter * Add_Grid_Output (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1937  { return( Add_Grid_Output (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1938  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)
1939  { return( Add_Grid_List (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint, bSystem_Dependent) ); }
1940  CSG_Parameter * Add_Table_Field (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bAllowNone = false)
1941  { return( Add_Table_Field (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, bAllowNone) ); }
1942  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)
1943  { return( Add_Table_Field_or_Const(pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Value, Minimum, bMinimum, Maximum, bMaximum) ); }
1944  CSG_Parameter * Add_Table_Fields (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1945  { return( Add_Table_Fields (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1946  CSG_Parameter * Add_Table (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1947  { return( Add_Table (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1948  CSG_Parameter * Add_Table_Output (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1949  { return( Add_Table_Output (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1950  CSG_Parameter * Add_Table_List (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1951  { return( Add_Table_List (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1952  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)
1953  { return( Add_Shapes (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint, Shape_Type) ); }
1954  CSG_Parameter * Add_Shapes_Output (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1955  { return( Add_Shapes_Output (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1956  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)
1957  { return( Add_Shapes_List (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint, Shape_Type) ); }
1958  CSG_Parameter * Add_TIN (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1959  { return( Add_TIN (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1960  CSG_Parameter * Add_TIN_Output (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1961  { return( Add_TIN_Output (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1962  CSG_Parameter * Add_TIN_List (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1963  { return( Add_TIN_List (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1964  CSG_Parameter * Add_PointCloud (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1965  { return( Add_PointCloud (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1966  CSG_Parameter * Add_PointCloud_Output (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1967  { return( Add_PointCloud_Output (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1968  CSG_Parameter * Add_PointCloud_List (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
1969  { return( Add_PointCloud_List (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description, Constraint) ); }
1970  CSG_Parameter * Add_Parameters (CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
1971  { return( Add_Parameters (pParent ? pParent->Get_Identifier() : SG_T(""), ID, Name, Description) ); }
1972 
1973  // DEPRECATED END
1974 
1975 };
1976 
1977 
1979 // //
1980 // //
1981 // //
1983 
1984 //---------------------------------------------------------
1985 #endif // #ifndef HEADER_INCLUDED__SAGA_API__parameters_H
CSG_Parameter::asGridsList
class CSG_Parameter_Grids_List * asGridsList(void) const
Definition: parameter.cpp:1048
CSG_Parameter_Colors::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:959
CSG_Parameter_Data_Object
Definition: parameters.h:1132
CSG_Parameter_Date
Definition: parameters.h:571
CSG_Parameter_Bool::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:398
CSG_Parameter_Shapes_List::Get_Shape_Type
TSG_Shape_Type Get_Shape_Type(void) const
Definition: parameters.h:1492
CSG_Parameters::Get_Description
const CSG_String & Get_Description(void) const
Definition: parameters.h:1691
CSG_Parameter_Grid::m_Type
TSG_Data_Type m_Type
Definition: parameters.h:1213
CSG_Parameter::asPointer
void * asPointer(void) const
Definition: parameters.h:285
PARAMETER_TYPE_Double
@ PARAMETER_TYPE_Double
Definition: parameters.h:127
CSG_Parameter_Choices::Get_Selection_Count
int Get_Selection_Count(void) const
Definition: parameters.h:762
CSG_Parameters::Add_Degree
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)
Definition: parameters.h:1906
CSG_Parameters::Get_Parameter
CSG_Parameter * Get_Parameter(int i) const
Definition: parameters.h:1708
PARAMETER_TYPE_FilePath
@ PARAMETER_TYPE_FilePath
Definition: parameters.h:136
CSG_Parameters::Get_Grid_System
CSG_Grid_System * Get_Grid_System(void) const
Definition: parameters.h:1847
SG_DATATYPE_Undefined
@ SG_DATATYPE_Undefined
Definition: api_core.h:1001
PARAMETER_TYPE_Degree
@ PARAMETER_TYPE_Degree
Definition: parameters.h:128
CSG_Parameter_Grid_System::m_System
CSG_Grid_System m_System
Definition: parameters.h:1031
CSG_Tool::Parameters
CSG_Parameters Parameters
Definition: tool.h:251
CSG_Parameter_Grid
Definition: parameters.h:1194
CSG_Parameters::Add_Shapes_Output
CSG_Parameter * Add_Shapes_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1954
SG_T
#define SG_T(s)
Definition: api_core.h:531
CSG_Parameters::Add_FixedTable
CSG_Parameter * Add_FixedTable(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Table *pInit=NULL)
Definition: parameters.h:1928
CSG_Parameter::asShapesList
class CSG_Parameter_Shapes_List * asShapesList(void) const
Definition: parameter.cpp:1050
CSG_Parameters::Add_Table
CSG_Parameter * Add_Table(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1946
CSG_Parameter_List::Add_Item
virtual bool Add_Item(CSG_Data_Object *pItem)
Definition: parameter_data.cpp:3013
CSG_Parameter_Degree
Definition: parameters.h:546
CSG_Parameter_Choice::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:1095
CSG_Parameter_Parameters
Definition: parameters.h:1563
PARAMETER_TYPE_Table_Fields
@ PARAMETER_TYPE_Table_Fields
Definition: parameters.h:145
CSG_Parameter::m_String
CSG_String m_String
Definition: parameters.h:330
CSG_Parameter_Data_Object::_Set_Value
virtual int _Set_Value(void *Value)
Definition: parameter_data.cpp:2475
CSG_Parameter_Int::_Set_String
virtual void _Set_String(void)
Definition: parameter_data.cpp:483
CSG_Parameter_Table_Fields::m_nFields
int m_nFields
Definition: parameters.h:1110
CSG_Parameter_Data_Object_Output::m_Type
TSG_Data_Object_Type m_Type
Definition: parameters.h:1178
CSG_Parameter_Int::_asInt
virtual int _asInt(void) const
Definition: parameters.h:491
CSG_Parameter_Grids_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1439
CSG_Parameter::Get_Identifier
const SG_Char * Get_Identifier(void) const
Definition: parameter.cpp:546
CSG_Parameter::asInt
int asInt(void) const
Definition: parameters.h:281
CSG_Parameter_Int::_Set_Value
virtual int _Set_Value(int Value)
Definition: parameter_data.cpp:443
CSG_Parameters::Add_PointCloud
CSG_Parameter * Add_PointCloud(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1964
CSG_Parameters::Get_Manager
class CSG_Data_Manager * Get_Manager(void) const
Definition: parameters.h:1674
PARAMETER_TYPE_Node
@ PARAMETER_TYPE_Node
Definition: parameters.h:123
CSG_Parameter::asString
const SG_Char * asString(void) const
Definition: parameters.h:284
PARAMETER_OPTIONAL
#define PARAMETER_OPTIONAL
Definition: parameters.h:96
CSG_Parameters::Get_Grid_System_Parameter
CSG_Parameter * Get_Grid_System_Parameter(void) const
Definition: parameters.h:1846
CSG_Parameters::Get_Owner
void * Get_Owner(void) const
Definition: parameters.h:1670
CSG_Parameter_TIN
Definition: parameters.h:1309
CSG_Parameter_Table_Fields::Get_Index
int Get_Index(int i) const
Definition: parameters.h:1100
CSG_Parameter_Table_List
Definition: parameters.h:1463
CSG_Parameter_Grid_List::Get_Grid_Count
int Get_Grid_Count(void) const
Definition: parameters.h:1416
CSG_Parameter_Value::Get_Maximum
double Get_Maximum(void) const
Definition: parameters.h:444
CSG_Parameter::is_Valid
virtual bool is_Valid(void) const
Definition: parameters.h:230
TSG_Shape_Type
TSG_Shape_Type
Definition: shapes.h:100
CSG_Parameter_Value::has_Minimum
bool has_Minimum(void) const
Definition: parameters.h:441
CSG_Parameter_Table_Field::m_Default
int m_Default
Definition: parameters.h:1070
PARAMETER_TYPE_Grids_List
@ PARAMETER_TYPE_Grids_List
Definition: parameters.h:155
CSG_Parameter::asTINList
class CSG_Parameter_TIN_List * asTINList(void) const
Definition: parameter.cpp:1051
PARAMETER_TYPE_String
@ PARAMETER_TYPE_String
Definition: parameters.h:134
CSG_Parameter::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter.cpp:1090
CSG_Grid_System
Definition: grid.h:200
CSG_Parameters::Add_TIN_List
CSG_Parameter * Add_TIN_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1962
CSG_Parameter::asDate
class CSG_Parameter_Date * asDate(void) const
Definition: parameter.cpp:1036
PARAMETER_TYPE_Int
@ PARAMETER_TYPE_Int
Definition: parameters.h:126
CSG_Parameter_Shapes_List::m_Type
TSG_Shape_Type m_Type
Definition: parameters.h:1501
CSG_Parameter_List::Get_Item
CSG_Data_Object * Get_Item(int Index) const
Definition: parameters.h:1368
CSG_Parameter_PointCloud_List::Get_PointCloud
CSG_PointCloud * Get_PointCloud(int Index) const
Definition: parameters.h:1545
CSG_Parameter::asColor
long asColor(void) const
Definition: parameters.h:282
CSG_Parameter_String::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:802
CSG_Parameters::CSG_Parameter
friend class CSG_Parameter
Definition: parameters.h:1651
CSG_Data_Manager::Add_PointCloud
CSG_PointCloud * Add_PointCloud(void)
Definition: data_manager.cpp:636
CSG_Parameters::Add_Grid_Output
CSG_Parameter * Add_Grid_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1936
CSG_Parameter_Range::m_pMin
CSG_Parameter_Double * m_pMin
Definition: parameters.h:638
CSG_Parameter::is_Input
bool is_Input(void) const
Definition: parameters.h:231
CSG_Parameter_Choice::_asInt
virtual int _asInt(void) const
Definition: parameters.h:700
CSG_Parameter_Int::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:489
CSG_Parameters::is_Managed
bool is_Managed(void) const
Definition: parameters.h:1844
CSG_Parameters::Add_Info_Range
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)
Definition: parameters.h:1914
CSG_Parameter_Colors
Definition: parameters.h:956
CSG_Parameter_Choices
Definition: parameters.h:747
PARAMETER_TYPE_TIN
@ PARAMETER_TYPE_TIN
Definition: parameters.h:152
CSG_Parameter_Data_Object_Output
Definition: parameters.h:1165
CSG_Tool
Definition: tool.h:149
CSG_Parameter_Colors::m_Colors
CSG_Colors m_Colors
Definition: parameters.h:966
CSG_Parameters::Add_Color
CSG_Parameter * Add_Color(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Value=0)
Definition: parameters.h:1910
SG_Parameter_Type_Get_Name
SAGA_API_DLL_EXPORT CSG_String SG_Parameter_Type_Get_Name(TSG_Parameter_Type Type)
Definition: parameter_data.cpp:64
CSG_Parameter_Data_Object::m_pDataObject
CSG_Data_Object * m_pDataObject
Definition: parameters.h:1142
CSG_Parameter_Choices::Get_Item_Count
int Get_Item_Count(void) const
Definition: parameters.h:758
CSG_Parameters::Add_Shapes
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)
Definition: parameters.h:1952
CSG_Parameter_Double::_Set_String
virtual void _Set_String(void)
Definition: parameter_data.cpp:572
PARAMETER_TYPE_FixedTable
@ PARAMETER_TYPE_FixedTable
Definition: parameters.h:141
CSG_Data_Manager::Add_Shapes
CSG_Shapes * Add_Shapes(TSG_Shape_Type Type=SHAPE_TYPE_Undefined)
Definition: data_manager.cpp:649
CSG_Parameter_Table_Field
Definition: parameters.h:1054
CSG_Parameter_Choice::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:662
CSG_Parameters::Add_Shapes_List
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)
Definition: parameters.h:1956
CSG_Parameters::Add_PointCloud_Output
CSG_Parameter * Add_PointCloud_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1966
CSG_Parameter_File_Name::m_Filter
CSG_String m_Filter
Definition: parameters.h:879
CSG_Parameter_Grid::Get_Preferred_Type
TSG_Data_Type Get_Preferred_Type(void) const
Definition: parameters.h:1200
CSG_Parameter_TIN_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1520
CSG_Parameter::_asDouble
virtual double _asDouble(void) const
Definition: parameter.cpp:961
CSG_Parameter_Node
Definition: parameters.h:375
CSG_Parameter::Assign
bool Assign(CSG_Parameter *pSource)
Definition: parameter.cpp:1072
SG_Parameter_Type_Get_Identifier
SAGA_API_DLL_EXPORT CSG_String SG_Parameter_Type_Get_Identifier(TSG_Parameter_Type Type)
Definition: parameter_data.cpp:114
CSG_Parameter_Table_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1466
CSG_Parameter_File_Name::is_Directory
bool is_Directory(void) const
Definition: parameters.h:868
CSG_Parameter_Value
Definition: parameters.h:434
CSG_Parameters::Add_Choice
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)
Definition: parameters.h:1916
tin.h
CSG_Parameter_String::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:1485
PARAMETER_TYPE_PointCloud
@ PARAMETER_TYPE_PointCloud
Definition: parameters.h:147
CSG_Parameter_List::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:3105
CSG_Parameters::Add_Int
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)
Definition: parameters.h:1902
CSG_Parameter_File_Name::is_Save
bool is_Save(void) const
Definition: parameters.h:862
CSG_Parameter_Choice::_asDouble
virtual double _asDouble(void) const
Definition: parameters.h:701
CSG_Parameter::asValue
class CSG_Parameter_Value * asValue(void) const
Definition: parameter.cpp:1022
CSG_Parameter_Font
Definition: parameters.h:895
CSG_Parameter_Data_Object_Output::Get_DataObject_Type
TSG_Data_Object_Type Get_DataObject_Type(void) const
Definition: parameters.h:1171
SG_Parameter_Type_Get_Type
SAGA_API_DLL_EXPORT TSG_Parameter_Type SG_Parameter_Type_Get_Type(const CSG_String &Identifier)
Definition: parameter_data.cpp:164
CSG_Parameter_Node::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:378
CSG_Parameter_Choice::m_Items
CSG_Strings m_Items
Definition: parameters.h:691
CSG_Parameter::_Set_Value
virtual int _Set_Value(int Value)
Definition: parameter.cpp:739
CSG_Parameters::Add_Node
CSG_Parameter * Add_Node(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1894
CSG_File
Definition: api_core.h:1116
CSG_Parameter_File_Name::is_Multiple
bool is_Multiple(void) const
Definition: parameters.h:865
CSG_Parameter_TIN_List::asTIN
CSG_TIN * asTIN(int Index) const
Definition: parameters.h:1522
CSG_Parameter_PointCloud
Definition: parameters.h:1333
CSG_Parameter_Grid_List::m_Grids
CSG_Array_Pointer m_Grids
Definition: parameters.h:1424
PARAMETER_TYPE_Shapes_List
@ PARAMETER_TYPE_Shapes_List
Definition: parameters.h:157
SSG_Rect
Definition: geo_tools.h:464
CSG_Parameter::asGridList
class CSG_Parameter_Grid_List * asGridList(void) const
Definition: parameter.cpp:1047
PARAMETER_TYPE_Grids
@ PARAMETER_TYPE_Grids
Definition: parameters.h:149
CSG_Parameter_Font::m_Color
int m_Color
Definition: parameters.h:907
CSG_Parameter_Range::m_pRange
CSG_Parameters * m_pRange
Definition: parameters.h:636
CSG_Parameter::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const =0
CSG_Parameters::Add_Colors
CSG_Parameter * Add_Colors(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, CSG_Colors *pInit=NULL)
Definition: parameters.h:1926
CSG_Parameter::Serialize
bool Serialize(CSG_MetaData &MetaData, bool bSave)
Definition: parameter.cpp:1096
CSG_Parameter_Date::m_Date
CSG_DateTime m_Date
Definition: parameters.h:584
CSG_Parameter_Table_List::Get_Table
CSG_Table * Get_Table(int Index) const
Definition: parameters.h:1468
CSG_Parameter_Text
Definition: parameters.h:833
PARAMETER_TYPE_Choices
@ PARAMETER_TYPE_Choices
Definition: parameters.h:133
CSG_Parameter_Grid_List::Get_Grid
CSG_Grid * Get_Grid(int Index) const
Definition: parameters.h:1417
CSG_Parameter::ignore_Projection
bool ignore_Projection(void) const
Definition: parameters.h:250
PARAMETER_TYPE_Data_Type
@ PARAMETER_TYPE_Data_Type
Definition: parameters.h:131
CSG_Parameters::Add_String
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)
Definition: parameters.h:1918
CSG_Parameter_Shapes
Definition: parameters.h:1278
CSG_Parameter_List::Del_Items
virtual bool Del_Items(void)
Definition: parameter_data.cpp:3055
CSG_TIN
Definition: tin.h:222
CSG_Parameter_Fixed_Table
Definition: parameters.h:990
PARAMETER_TYPE_Colors
@ PARAMETER_TYPE_Colors
Definition: parameters.h:140
CSG_Parameters::Add_Parameters
CSG_Parameter * Add_Parameters(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1970
CSG_Data_Object
Definition: dataobject.h:180
CSG_Parameter_Int::_Serialize
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
Definition: parameter_data.cpp:497
CSG_Parameter
Definition: parameters.h:207
CSG_Parameter_Double::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:511
CSG_Parameter_Choices::Get_Item_Data
const CSG_String & Get_Item_Data(int i) const
Definition: parameters.h:760
CSG_Data_Manager::asTIN
CSG_Data_Collection * asTIN(void) const
Definition: data_manager.h:170
CSG_Parameter_Grid_System
Definition: parameters.h:1021
CSG_Parameters::Add_Info_Value
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)
Definition: parameters.h:1898
PARAMETER_TYPE_Undefined
@ PARAMETER_TYPE_Undefined
Definition: parameters.h:165
CSG_Data_Manager::Add_TIN
CSG_TIN * Add_TIN(void)
Definition: data_manager.cpp:623
CSG_Parameter::_asInt
virtual int _asInt(void) const
Definition: parameter.cpp:960
CSG_Data_Manager::Add_Grid
CSG_Grid * Add_Grid(const CSG_Grid_System &System, TSG_Data_Type Type=SG_DATATYPE_Undefined)
Definition: data_manager.cpp:662
PARAMETER_TYPE_Table
@ PARAMETER_TYPE_Table
Definition: parameters.h:150
PARAMETER_TYPE_Bool
@ PARAMETER_TYPE_Bool
Definition: parameters.h:125
CSG_Parameter_Choices::Get_Selection_Data
const CSG_String & Get_Selection_Data(int i) const
Definition: parameters.h:764
CSG_Parameter_List::Update_Data
virtual bool Update_Data(void)
Definition: parameters.h:1370
CSG_Parameters::Get_Count
int Get_Count(void) const
Definition: parameters.h:1681
PARAMETER_TYPE_Table_Field
@ PARAMETER_TYPE_Table_Field
Definition: parameters.h:144
CSG_Parameter_Parameters::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1566
CSG_Parameter_Date::Get_Date
const CSG_DateTime & Get_Date(void) const
Definition: parameters.h:577
CSG_Parameters::Add_Table_List
CSG_Parameter * Add_Table_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1950
CSG_Parameter_Fixed_Table::m_Table
CSG_Table m_Table
Definition: parameters.h:1000
CSG_Parameter_List::Del_Item
virtual bool Del_Item(CSG_Data_Object *pItem, bool bUpdateData=true)
Definition: parameter_data.cpp:3025
PARAMETER_TYPE_Choice
@ PARAMETER_TYPE_Choice
Definition: parameters.h:132
CSG_Parameter::_Serialize
virtual bool _Serialize(CSG_MetaData &MetaData, bool bSave)
Definition: parameter.cpp:1132
CSG_Parameter_File_Name
Definition: parameters.h:853
CSG_Parameters::Add_Table_Field_or_Const
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)
Definition: parameters.h:1942
CSG_Parameter_Grids
Definition: parameters.h:1234
CSG_Parameters::Get_Tool
class CSG_Tool * Get_Tool(void) const
Definition: parameters.h:1672
CSG_Parameter_Range::Get_Range
double Get_Range(void) const
Definition: parameters.h:616
CSG_Parameters::Add_Table_Output
CSG_Parameter * Add_Table_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1948
CSG_Parameter_Grids_List
Definition: parameters.h:1437
CSG_Parameter_Choice::Get_Count
int Get_Count(void) const
Definition: parameters.h:682
CSG_Parameter_Shapes::m_Type
TSG_Shape_Type m_Type
Definition: parameters.h:1291
CSG_Tool::Destroy
virtual void Destroy(void)
Definition: tool.cpp:115
CSG_Parameter::asDataType
class CSG_Parameter_Data_Type * asDataType(void) const
Definition: parameter.cpp:1037
CSG_Parameter::_asPointer
virtual void * _asPointer(void) const
Definition: parameter.cpp:962
CSG_Parameter::Get_Child
CSG_Parameter * Get_Child(int iChild) const
Definition: parameters.h:255
CSG_Parameter_Value::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:411
PARAMETER_CHECK_ALL
#define PARAMETER_CHECK_ALL
Definition: parameters.h:191
CSG_Parameters::Add_TIN
CSG_Parameter * Add_TIN(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1958
CSG_Parameters::Serialize
bool Serialize(CSG_MetaData &Data) const
Definition: parameters.h:1829
CSG_Parameter_Grid_List
Definition: parameters.h:1402
CSG_Parameter_Shapes_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1489
CSG_Parameter_Double::_asDouble
virtual double _asDouble(void) const
Definition: parameters.h:530
SG_DATATYPE_Float
@ SG_DATATYPE_Float
Definition: api_core.h:995
CSG_Parameters::Add_Grid_List
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)
Definition: parameters.h:1938
PARAMETER_TYPE_Grid
@ PARAMETER_TYPE_Grid
Definition: parameters.h:148
CSG_Parameter::asPointCloudList
class CSG_Parameter_PointCloud_List * asPointCloudList(void) const
Definition: parameter.cpp:1052
CSG_Parameters::Add_FilePath
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)
Definition: parameters.h:1922
CSG_Parameter_Range
Definition: parameters.h:610
CSG_Data_Manager::Add_Table
CSG_Table * Add_Table(void)
Definition: data_manager.cpp:610
PARAMETER_IGNORE_PROJECTION
#define PARAMETER_IGNORE_PROJECTION
Definition: parameters.h:98
CSG_Array_Int
Definition: api_core.h:421
CSG_Parameter_Int::_asDouble
virtual double _asDouble(void) const
Definition: parameters.h:492
CSG_Parameters::Add_Double
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)
Definition: parameters.h:1904
CSG_Data_Manager::Add_Grids
CSG_Grids * Add_Grids(const CSG_String &File)
Definition: data_manager.h:210
PARAMETER_TYPE_Date
@ PARAMETER_TYPE_Date
Definition: parameters.h:129
CSG_Parameter_Grid_System::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1024
CSG_Parameters::Add_PointCloud_List
CSG_Parameter * Add_PointCloud_List(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, int Constraint)
Definition: parameters.h:1968
CSG_Parameter_Degree::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:549
CSG_Parameter::Toggle_Value
virtual bool Toggle_Value(void)
Definition: parameter.cpp:826
CSG_Parameters::Get_References
const CSG_Strings & Get_References(void) const
Definition: parameters.h:1696
SAGA_API_DLL_EXPORT
#define SAGA_API_DLL_EXPORT
Definition: api_core.h:94
CSG_Parameter_Table::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1258
PARAMETER_TYPE_Grid_List
@ PARAMETER_TYPE_Grid_List
Definition: parameters.h:154
CSG_Parameter::_Set_String
virtual void _Set_String(void)
Definition: parameter.cpp:840
CSG_Parameters::Add_TIN_Output
CSG_Parameter * Add_TIN_Output(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1960
pointcloud.h
CSG_Parameter_Bool::_asInt
virtual int _asInt(void) const
Definition: parameters.h:418
CSG_Parameters::Add_Date
CSG_Parameter * Add_Date(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, double Value=0.0)
Definition: parameters.h:1908
CSG_Parameter::is_Optional
bool is_Optional(void) const
Definition: parameters.h:233
CSG_Parameter_PointCloud_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1543
CSG_Strings
Definition: api_core.h:693
CSG_DateTime
Definition: datetime.h:183
CSG_Parameter_Shapes::Get_Shape_Type
TSG_Shape_Type Get_Shape_Type(void) const
Definition: parameters.h:1284
CSG_Parameter::asFilePath
class CSG_Parameter_File_Name * asFilePath(void) const
Definition: parameter.cpp:1042
CSG_Parameter_Shapes_List::Get_Shapes
CSG_Shapes * Get_Shapes(int Index) const
Definition: parameters.h:1494
CSG_Parameter::is_Output
bool is_Output(void) const
Definition: parameters.h:232
CSG_Parameters::Add_Table_Fields
CSG_Parameter * Add_Table_Fields(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description)
Definition: parameters.h:1944
CSG_Parameters::Add_Bool
CSG_Parameter * Add_Bool(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool Value=false)
Definition: parameters.h:1900
CSG_Parameter_List::Get_Item_Count
int Get_Item_Count(void) const
Definition: parameters.h:1367
CSG_Parameter_Shapes_List
Definition: parameters.h:1486
CSG_Parameter_Font::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:898
CSG_Projection
Definition: geo_tools.h:833
CSG_Parameters::Get_Identifier
const CSG_String & Get_Identifier(void) const
Definition: parameters.h:1685
CSG_Parameter_Data_Object_Output::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1168
CSG_Parameter_Double::m_Value
double m_Value
Definition: parameters.h:520
CSG_Parameter_Int
Definition: parameters.h:470
CSG_Table
Definition: table.h:283
CSG_Parameter_Value::has_Maximum
bool has_Maximum(void) const
Definition: parameters.h:445
CSG_Parameter_String::m_bPassword
bool m_bPassword
Definition: parameters.h:814
CSG_Parameters::Add_Grid_or_Const
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)
Definition: parameters.h:1934
CSG_Parameter::Get_Children_Count
int Get_Children_Count(void) const
Definition: parameters.h:254
CSG_Parameter_Grid::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1197
CSG_Parameter_Double::_Set_Value
virtual int _Set_Value(int Value)
Definition: parameter_data.cpp:532
CSG_Parameter_Choice::_Serialize
virtual bool _Serialize(CSG_MetaData &Entry, bool bSave)
Definition: parameter_data.cpp:1107
CSG_Parameter_Double
Definition: parameters.h:508
CSG_Parameter_Bool
Definition: parameters.h:395
SG_Char
#define SG_Char
Definition: api_core.h:530
TSG_Data_Object_Type
TSG_Data_Object_Type
Definition: dataobject.h:117
shapes.h
CSG_Parameters::Add_Value
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)
Definition: parameters.h:1896
CSG_Parameter_Table_Field::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1057
CSG_String
Definition: api_core.h:557
CSG_Parameter::asTableFields
class CSG_Parameter_Table_Fields * asTableFields(void) const
Definition: parameter.cpp:1043
CSG_Parameter_Parameters::m_pParameters
CSG_Parameters * m_pParameters
Definition: parameters.h:1576
CSG_Array_Pointer
Definition: api_core.h:368
CSG_Parameter::asChoice
class CSG_Parameter_Choice * asChoice(void) const
Definition: parameter.cpp:1038
PARAMETER_INFORMATION
#define PARAMETER_INFORMATION
Definition: parameters.h:97
CSG_Parameter_Data_Object::_Assign
virtual bool _Assign(CSG_Parameter *pSource)
Definition: parameter_data.cpp:2511
CSG_Data_Manager
Definition: data_manager.h:164
CSG_MetaData
Definition: metadata.h:88
CSG_Parameter_File_Name::m_bSave
bool m_bSave
Definition: parameters.h:877
CSG_Parameters::Serialize
bool Serialize(CSG_MetaData &Data, bool bSave)
Definition: parameters.h:1828
CSG_Parameter_Table_Fields
Definition: parameters.h:1094
CSG_Parameter_String
Definition: parameters.h:799
CSG_Parameter_Grids::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1237
CSG_Parameter_Choice::m_Value
int m_Value
Definition: parameters.h:689
CSG_Parameter_Date::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:574
CSG_Parameter_Table_Fields::Get_Count
int Get_Count(void) const
Definition: parameters.h:1099
CSG_Parameter_Shapes::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1281
CSG_Parameter_Choices::m_Selection
CSG_Array_Int m_Selection
Definition: parameters.h:778
CSG_Parameter::asDouble
double asDouble(void) const
Definition: parameters.h:283
CSG_Parameter_Color
Definition: parameters.h:930
CSG_Parameter_PointCloud::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1336
CSG_Parameters_Grid_Target
Definition: parameters.h:1599
PARAMETER_TYPE_Grid_System
@ PARAMETER_TYPE_Grid_System
Definition: parameters.h:143
CSG_Parameter_Text::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:835
CSG_Parameter_Fixed_Table::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:993
CSG_Parameter_Choices::Get_Selection
const CSG_String & Get_Selection(int i) const
Definition: parameters.h:763
PARAMETER_TYPE_PointCloud_List
@ PARAMETER_TYPE_PointCloud_List
Definition: parameters.h:159
CSG_Parameter_Range::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:613
CSG_Parameter_Grid::m_Default
int m_Default
Definition: parameters.h:1211
CSG_Parameter_Grid_List::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1405
PARAMETER_TYPE_Table_List
@ PARAMETER_TYPE_Table_List
Definition: parameters.h:156
CSG_Parameter_Value::Get_Minimum
double Get_Minimum(void) const
Definition: parameters.h:440
CSG_Parameter::asRange
class CSG_Parameter_Range * asRange(void) const
Definition: parameter.cpp:1041
CSG_Parameter_Choices::Get_Selection_Index
int Get_Selection_Index(int i) const
Definition: parameters.h:765
CSG_Parameter_Data_Type::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:720
CSG_Grid
Definition: grid.h:473
CSG_Parameter_TIN::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1312
CSG_Parameter::asTableList
class CSG_Parameter_Table_List * asTableList(void) const
Definition: parameter.cpp:1049
TSG_PFNC_Parameter_Changed
int(* TSG_PFNC_Parameter_Changed)(CSG_Parameter *pParameter, int Flags)
Definition: parameters.h:1646
CSG_Parameters::Add_Font
CSG_Parameter * Add_Font(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, const SG_Char *pInit=NULL)
Definition: parameters.h:1924
PARAMETER_TYPE_DataObject_Output
@ PARAMETER_TYPE_DataObject_Output
Definition: parameters.h:161
CSG_Parameter_Color::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:933
CSG_Parameter_Choice
Definition: parameters.h:659
CSG_Parameter_Choices::Get_Item
const CSG_String & Get_Item(int i) const
Definition: parameters.h:759
CSG_Parameters::Get_Name
const CSG_String & Get_Name(void) const
Definition: parameters.h:1688
CSG_Parameter_Range::Get_Min_Parameter
CSG_Parameter_Double * Get_Min_Parameter(void) const
Definition: parameters.h:620
CSG_Shapes
Definition: shapes.h:773
CSG_PointCloud
Definition: pointcloud.h:105
CSG_Parameters::Add_Grid_System
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)
Definition: parameters.h:1930
CSG_Parameter_PointCloud_List
Definition: parameters.h:1540
CSG_Parameter_Int::m_Value
int m_Value
Definition: parameters.h:482
CSG_Parameter_TIN_List
Definition: parameters.h:1517
CSG_Parameters
Definition: parameters.h:1650
TSG_Data_Type
TSG_Data_Type
Definition: api_core.h:985
CSG_Parameter_Double::_asInt
virtual int _asInt(void) const
Definition: parameters.h:529
CSG_Parameter_Value::m_bMinimum
bool m_bMinimum
Definition: parameters.h:452
CSG_Parameters::Serialize
bool Serialize(const CSG_String &File, bool bSave)
Definition: parameters.h:1830
CSG_Parameter_Table_Fields::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:1097
CSG_Parameter_List
Definition: parameters.h:1359
CSG_Parameter_Choices::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:750
CSG_Parameters::Add_Range
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)
Definition: parameters.h:1912
CSG_Parameters::Serialize
bool Serialize(const CSG_String &File) const
Definition: parameters.h:1831
CSG_Parameter::is_Default
virtual bool is_Default(void) const
Definition: parameter.cpp:881
PARAMETER_TYPE_Range
@ PARAMETER_TYPE_Range
Definition: parameters.h:130
CSG_Parameter_Range::Get_Max_Parameter
CSG_Parameter_Double * Get_Max_Parameter(void) const
Definition: parameters.h:624
CSG_Parameter_Int::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:473
CSG_Parameter_Grids_List::Get_Grids
CSG_Grids * Get_Grids(int Index) const
Definition: parameters.h:1445
PARAMETER_OUTPUT
#define PARAMETER_OUTPUT
Definition: parameters.h:95
CSG_Grids
Definition: grids.h:119
CSG_Parameter_File_Name::Get_Type
virtual TSG_Parameter_Type Get_Type(void) const
Definition: parameters.h:856
PARAMETER_TYPE_TIN_List
@ PARAMETER_TYPE_TIN_List
Definition: parameters.h:158
TSG_Parameter_Type
TSG_Parameter_Type
Definition: parameters.h:122
PARAMETER_TYPE_Parameters
@ PARAMETER_TYPE_Parameters
Definition: parameters.h:163
CSG_Parameter_Value::m_Minimum
double m_Minimum
Definition: parameters.h:454
PARAMETER_TYPE_Font
@ PARAMETER_TYPE_Font
Definition: parameters.h:138
CSG_Parameter_Bool::m_Value
bool m_Value
Definition: parameters.h:409
CSG_Parameter::asList
class CSG_Parameter_List * asList(void) const
Definition: parameter.cpp:1046
table.h
PARAMETER_TYPE_Color
@ PARAMETER_TYPE_Color
Definition: parameters.h:139
CSG_Parameters::Add_Info_String
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)
Definition: parameters.h:1920
PARAMETER_TYPE_Shapes
@ PARAMETER_TYPE_Shapes
Definition: parameters.h:151
CSG_Parameter::Restore_Default
virtual bool Restore_Default(void)
Definition: parameter.cpp:887
SHAPE_TYPE_Undefined
@ SHAPE_TYPE_Undefined
Definition: shapes.h:101
CSG_Parameter::asChoices
class CSG_Parameter_Choices * asChoices(void) const
Definition: parameter.cpp:1040
CSG_Parameter::is_Information
bool is_Information(void) const
Definition: parameters.h:234
CSG_Parameter_Table
Definition: parameters.h:1255
PARAMETER_INPUT
#define PARAMETER_INPUT
Definition: parameters.h:94
CSG_Parameters::Add_Grid
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)
Definition: parameters.h:1932
CSG_Parameter_Data_Type
Definition: parameters.h:717
CSG_Colors
Definition: api_core.h:1329
CSG_Parameters::Add_Table_Field
CSG_Parameter * Add_Table_Field(CSG_Parameter *pParent, const CSG_String &ID, const CSG_String &Name, const CSG_String &Description, bool bAllowNone=false)
Definition: parameters.h:1940
CSG_Parameter::asBool
bool asBool(void) const
Definition: parameters.h:280
datetime.h
PARAMETER_TYPE_Text
@ PARAMETER_TYPE_Text
Definition: parameters.h:135
grids.h