11 #ifndef __PARAMETER_H__
12 #define __PARAMETER_H__
35 const char* name,
const char* description);
43 void print(
const char* prefix);
101 static bool compare_ptype(EPrimitiveType ptype,
void* data1,
void* data2,
117 static bool compare_stype(EStructType stype, EPrimitiveType ptype,
118 void* data1,
void* data2,
floatmax_t accuracy=0.0);
126 static bool copy_ptype(EPrimitiveType ptype,
void* source,
void* target);
135 static bool copy_stype(EStructType stype, EPrimitiveType ptype,
136 void* source,
void* target);
186 uint32_t& hash, uint32_t& carry, uint32_t& total_length);
194 char* new_prefix(
const char* s1,
const char* s2);
197 bool new_sgserial(
CSGObject** param, EPrimitiveType
generic,
198 const char* sgserializable_name,
227 virtual void print(
const char* prefix=
"");
294 if (!strcmp(name, result->
m_name))
311 void add(
bool* param,
const char* name,
312 const char* description=
"");
318 void add(
char* param,
const char* name,
319 const char* description=
"");
325 void add(int8_t* param,
const char* name,
326 const char* description=
"");
332 void add(uint8_t* param,
const char* name,
333 const char* description=
"");
339 void add(int16_t* param,
const char* name,
340 const char* description=
"");
346 void add(uint16_t* param,
const char* name,
347 const char* description=
"");
353 void add(int32_t* param,
const char* name,
354 const char* description=
"");
360 void add(uint32_t* param,
const char* name,
361 const char* description=
"");
367 void add(int64_t* param,
const char* name,
368 const char* description=
"");
374 void add(uint64_t* param,
const char* name,
375 const char* description=
"");
382 const char* description=
"");
389 const char* description=
"");
396 const char* description=
"");
403 const char* description=
"");
410 const char* name,
const char* description=
"");
417 const char* description=
"");
424 const char* description=
"");
431 const char* description=
"");
438 const char* description=
"");
445 const char* description=
"");
452 const char* description=
"");
459 const char* description=
"");
466 const char* description=
"");
473 const char* description=
"");
480 const char* description=
"");
487 const char* description=
"");
494 const char* description=
"");
501 const char* description=
"");
508 const char* description=
"");
515 const char* description=
"");
522 const char* description=
"");
529 const char* description=
"");
536 const char* description=
"");
543 const char* description=
"");
550 const char* description=
"");
557 const char* description=
"");
564 const char* description=
"");
571 const char* description=
"");
578 const char* description=
"");
585 const char* description=
"");
592 const char* description=
"");
599 const char* description=
"");
611 const char* name,
const char* description=
"");
619 const char* name,
const char* description=
"");
627 const char* name,
const char* description=
"");
635 const char* name,
const char* description=
"");
643 const char* name,
const char* description=
"");
651 const char* name,
const char* description=
"");
659 const char* name,
const char* description=
"");
667 const char* name,
const char* description=
"");
675 const char* name,
const char* description=
"");
683 const char* name,
const char* description=
"");
691 const char* name,
const char* description=
"");
699 const char* name,
const char* description=
"");
707 const char* name,
const char* description=
"");
715 const char* name,
const char* description=
"");
723 const char* name,
const char* description=
"");
731 const char* name,
const char* description=
"");
739 const char* name,
const char* description=
"");
747 const char* name,
const char* description=
"");
755 const char* name,
const char* description=
"");
763 const char* name,
const char* description=
"");
771 const char* name,
const char* description=
"");
779 const char* name,
const char* description=
"");
787 const char* name,
const char* description=
"");
795 const char* name,
const char* description=
"");
803 const char* name,
const char* description=
"");
811 const char* name,
const char* description=
"");
819 const char* name,
const char* description=
"");
827 const char* name,
const char* description=
"");
835 const char* name,
const char* description=
"");
843 const char* name,
const char* description=
"");
851 const char* name,
const char* description=
"");
859 const char* name,
const char* description=
"");
867 const char* name,
const char* description=
"");
875 const char* name,
const char* description=
"");
883 const char* name,
const char* description=
"");
891 const char* name,
const char* description=
"");
899 const char* name,
const char* description=
"");
907 const char* name,
const char* description=
"");
915 const char* name,
const char* description=
"");
923 const char* name,
const char* description=
"");
931 const char* name,
const char* description=
"");
939 const char* name,
const char* description=
"");
948 const char* description=
"");
955 const char* description=
"");
962 const char* description=
"");
969 const char* description=
"");
976 const char* description=
"");
983 const char* description=
"");
990 const char* description=
"");
997 const char* description=
"");
1004 const char* description=
"");
1011 const char* description=
"");
1018 const char* description=
"");
1025 const char* description=
"");
1032 const char* description=
"");
1039 const char* description=
"");
1046 const char* description=
"");
1053 const char* description=
"");
1060 const char* description=
"");
1067 const char* description=
"");
1074 const char* description=
"");
1081 const char* description=
"");
1088 const char* description=
"");
1095 const char* description=
"");
1102 const char* description=
"");
1109 const char* description=
"");
1116 const char* description=
"");
1123 const char* description=
"");
1130 const char* description=
"");
1137 const char* description=
"");
1144 const char* description=
"");
1151 const char* description=
"");
1158 const char* description=
"");
1165 const char* description=
"");
1172 const char* description=
"");
1179 const char* name,
const char* description=
"");
1186 const char* description=
"");
1193 const char* description=
"");
1200 const char* description=
"");
1207 const char* name,
const char* description=
"");
1214 const char* name,
const char* description=
"");
1221 const char* name,
const char* description=
"");
1228 const char* name,
const char* description=
"");
1235 const char* name,
const char* description=
"");
1249 const char* name,
const char* description=
"");
1259 const char* name,
const char* description=
"");
1269 const char* name,
const char* description=
"");
1279 const char* name,
const char* description=
"");
1289 const char* name,
const char* description=
"");
1299 const char* name,
const char* description=
"");
1309 const char* name,
const char* description=
"");
1319 const char* name,
const char* description=
"");
1329 const char* name,
const char* description=
"");
1339 const char* name,
const char* description=
"");
1349 const char* name,
const char* description=
"");
1359 const char* name,
const char* description=
"");
1369 const char* name,
const char* description=
"");
1379 const char* name,
const char* description=
"");
1389 const char* name,
const char* description=
"");
1399 const char* name,
const char* description=
"");
1409 const char* name,
const char* description=
"");
1419 const char* name,
const char* description=
"");
1429 const char* name,
const char* description=
"");
1439 const char* name,
const char* description=
"");
1449 const char* name,
const char* description=
"");
1459 const char* name,
const char* description=
"");
1469 const char* name,
const char* description=
"");
1479 const char* name,
const char* description=
"");
1489 const char* name,
const char* description=
"");
1499 const char* name,
const char* description=
"");
1509 const char* name,
const char* description=
"");
1519 const char* name,
const char* description=
"");
1529 const char* name,
const char* description=
"");
1539 const char* name,
const char* description=
"");
1549 const char* name,
const char* description=
"");
1559 const char* name,
const char* description=
"");
1569 const char* name,
const char* description=
"");
1579 const char* name,
const char* description=
"");
1589 const char* name,
const char* description=
"");
1599 const char* name,
const char* description=
"");
1609 const char* name,
const char* description=
"");
1619 const char* name,
const char* description=
"");
1629 const char* name,
const char* description=
"");
1639 const char* name,
const char* description=
"");
1649 const char* name,
const char* description=
"");
1659 const char* name,
const char* description=
"");
1666 const char* description=
"");
1673 const char* description=
"");
1680 const char* description=
"");
1687 const char* description=
"");
1694 const char* description=
"");
1701 const char* description=
"");
1708 const char* description=
"");
1715 const char* description=
"");
1722 const char* description=
"");
1729 const char* description=
"");
1736 const char* description=
"");
1743 const char* description=
"");
1750 const char* description=
"");
1757 const char* description=
"");
1764 const char* description=
"");
1771 const char* description=
"");
1778 const char* description=
"");
1785 const char* description=
"");
1792 const char* description=
"");
1799 const char* description=
"");
1806 const char* description=
"");
1813 const char* description=
"");
1820 const char* description=
"");
1827 const char* description=
"");
1834 const char* description=
"");
1841 const char* description=
"");
1848 const char* description=
"");
1855 const char* description=
"");
1862 const char* description=
"");
1869 const char* description=
"");
1876 const char* description=
"");
1883 const char* description=
"");
1890 const char* description=
"");
1897 const char* name,
const char* description=
"");
1904 const char* description=
"");
1911 const char* description=
"");
1918 const char* description=
"");
1925 const char* name,
const char* description=
"");
1932 const char* name,
const char* description=
"");
1939 const char* name,
const char* description=
"");
1946 const char* name,
const char* description=
"");
1953 const char* name,
const char* description=
"");
1961 const char* name,
const char* description=
"");
1968 const char* name,
const char* description=
"");
1975 const char* name,
const char* description=
"");
1982 const char* name,
const char* description=
"");
1989 const char* name,
const char* description=
"");
1996 const char* name,
const char* description=
"");
2003 const char* name,
const char* description=
"");
2010 const char* name,
const char* description=
"");
2017 const char* name,
const char* description=
"");
2024 const char* name,
const char* description=
"");
2031 const char* name,
const char* description=
"");
2038 const char* name,
const char* description=
"");
2045 const char* name,
const char* description=
"");
2052 const char* name,
const char* description=
"");
2059 const char* name,
const char* description=
"");
2073 const char* description);
2076 #endif //__PARAMETER_H__
template class SGSparseMatrix
TParameter * get_parameter(const char *name)
std::complex< float64_t > complex128_t
virtual int32_t get_num_parameters()
bool operator==(const TParameter &other) const
TParameter * get_parameter(int32_t idx)
static bool compare_stype(EStructType stype, EPrimitiveType ptype, void *data1, void *data2, floatmax_t accuracy=0.0)
virtual void print(const char *prefix="")
static bool compare_ptype(EPrimitiveType ptype, void *data1, void *data2, floatmax_t accuracy=0.0)
Datatypes that shogun supports.
bool operator<(const TParameter &other) const
template class SGSparseVector The assumtion is that the stored SGSparseVectorEntry* vector is orde...
virtual void add_type(const TSGDataType *type, void *param, const char *name, const char *description)
bool save(CSerializableFile *file, const char *prefix="")
TParameter(const TSGDataType *datatype, void *parameter, const char *name, const char *description)
void add(bool *param, const char *name, const char *description="")
DynArray< TParameter * > m_params
Class SGObject is the base class of all shogun objects.
Template Dynamic array class that creates an array that can be used like a list or an array...
bool m_was_allocated_from_scratch
virtual bool save(CSerializableFile *file, const char *prefix="")
void print(const char *prefix)
static bool copy_ptype(EPrimitiveType ptype, void *source, void *target)
void get_incremental_hash(uint32_t &hash, uint32_t &carry, uint32_t &total_length)
void set_from_parameters(Parameter *params)
bool contains_parameter(const char *name)
void add_vector(bool **param, index_t *length, const char *name, const char *description="")
bool load(CSerializableFile *file, const char *prefix="")
bool equals(TParameter *other, float64_t accuracy=0.0)
void add_parameters(Parameter *params)
bool copy(TParameter *target)
void copy_data(const TParameter *source)
void add_matrix(bool **param, index_t *length_y, index_t *length_x, const char *name, const char *description="")
void allocate_data_from_scratch(SGVector< index_t > dims, bool new_cont_call=true)
static bool copy_stype(EStructType stype, EPrimitiveType ptype, void *source, void *target)
bool operator>(const TParameter &other) const