10 #ifndef __BINARY_FILE_H__
11 #define __BINARY_FILE_H__
47 CBinaryFile(
char* fname,
char rw=
'r',
const char* name=NULL);
59 virtual void get_vector(uint8_t*& vector, int32_t& len);
60 virtual void get_vector(
char*& vector, int32_t& len);
61 virtual void get_vector(int32_t*& vector, int32_t& len);
64 virtual void get_vector(int16_t*& vector, int32_t& len);
65 virtual void get_vector(uint16_t*& vector, int32_t& len);
77 uint8_t*& matrix, int32_t& num_feat, int32_t& num_vec);
79 int8_t*& matrix, int32_t& num_feat, int32_t& num_vec);
81 char*& matrix, int32_t& num_feat, int32_t& num_vec);
83 int32_t*& matrix, int32_t& num_feat, int32_t& num_vec);
85 uint32_t*& matrix, int32_t& num_feat, int32_t& num_vec);
87 int64_t*& matrix, int32_t& num_feat, int32_t& num_vec);
89 uint64_t*& matrix, int32_t& num_feat, int32_t& num_vec);
91 float32_t*& matrix, int32_t& num_feat, int32_t& num_vec);
93 float64_t*& matrix, int32_t& num_feat, int32_t& num_vec);
95 floatmax_t*& matrix, int32_t& num_feat, int32_t& num_vec);
97 int16_t*& matrix, int32_t& num_feat, int32_t& num_vec);
99 uint16_t*& matrix, int32_t& num_feat, int32_t& num_vec);
111 uint8_t*& array, int32_t*& dims, int32_t& num_dims);
113 char*& array, int32_t*& dims, int32_t& num_dims);
115 int32_t*& array, int32_t*& dims, int32_t& num_dims);
117 float32_t*& array, int32_t*& dims, int32_t& num_dims);
119 float64_t*& array, int32_t*& dims, int32_t& num_dims);
121 int16_t*& array, int32_t*& dims, int32_t& num_dims);
123 uint16_t*& array, int32_t*& dims, int32_t& num_dims);
173 int32_t& max_string_len);
176 int32_t& max_string_len);
179 int32_t& max_string_len);
182 int32_t& max_string_len);
185 int32_t& max_string_len);
188 int32_t& max_string_len);
191 int32_t& max_string_len);
194 int32_t& max_string_len);
197 int32_t& max_string_len);
200 int32_t& max_string_len);
203 int32_t& max_string_len);
206 int32_t& max_string_len);
216 virtual void set_vector(
const uint8_t* vector, int32_t len);
217 virtual void set_vector(
const char* vector, int32_t len);
218 virtual void set_vector(
const int32_t* vector, int32_t len);
221 virtual void set_vector(
const int16_t* vector, int32_t len);
222 virtual void set_vector(
const uint16_t* vector, int32_t len);
234 const uint8_t* matrix, int32_t num_feat, int32_t num_vec);
236 const int8_t* matrix, int32_t num_feat, int32_t num_vec);
238 const char* matrix, int32_t num_feat, int32_t num_vec);
240 const int32_t* matrix, int32_t num_feat, int32_t num_vec);
242 const uint32_t* matrix, int32_t num_feat, int32_t num_vec);
244 const int64_t* matrix, int32_t num_feat, int32_t num_vec);
246 const uint64_t* matrix, int32_t num_feat, int32_t num_vec);
248 const float32_t* matrix, int32_t num_feat, int32_t num_vec);
250 const float64_t* matrix, int32_t num_feat, int32_t num_vec);
252 const floatmax_t* matrix, int32_t num_feat, int32_t num_vec);
254 const int16_t* matrix, int32_t num_feat, int32_t num_vec);
256 const uint16_t* matrix, int32_t num_feat, int32_t num_vec);
267 const uint8_t* array, int32_t* dims, int32_t num_dims);
269 const char* array, int32_t* dims, int32_t num_dims);
271 const int32_t* array, int32_t* dims, int32_t num_dims);
273 const float32_t* array, int32_t* dims, int32_t num_dims);
275 const float64_t* array, int32_t* dims, int32_t num_dims);
277 const int16_t* array, int32_t* dims, int32_t num_dims);
279 const uint16_t* array, int32_t* dims, int32_t num_dims);
353 inline virtual const char*
get_name()
const {
return "BinaryFile"; }
389 template <
class DT> DT* load_data(DT* target, int64_t& num)
392 return f.load(target, num);
401 template <
class DT>
bool save_data(DT* src, int64_t num)
404 return f.save(src, num);
408 #endif //__BINARY_FILE_H__
virtual void get_sparse_matrix(SGSparseVector< bool > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void get_uint_string_list(SGString< uint32_t > *&strings, int32_t &num_str, int32_t &max_string_len)
virtual void set_ulong_string_list(const SGString< uint64_t > *strings, int32_t num_str)
Template class SimpleFile to read and write from files.
virtual void get_longreal_sparsematrix(SGSparseVector< floatmax_t > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_vector(const uint8_t *vector, int32_t len)
virtual void set_longreal_string_list(const SGString< floatmax_t > *strings, int32_t num_str)
virtual void get_longreal_string_list(SGString< floatmax_t > *&strings, int32_t &num_str, int32_t &max_string_len)
virtual void set_longreal_matrix(const floatmax_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_long_matrix(int64_t *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void get_ulong_matrix(uint64_t *&matrix, int32_t &num_feat, int32_t &num_vec)
Datatypes that shogun supports.
virtual void get_vector(uint8_t *&vector, int32_t &len)
int32_t parse_next_header(TSGDataType &type)
virtual void set_ulong_sparsematrix(const SGSparseVector< uint64_t > *matrix, int32_t num_feat, int32_t num_vec)
template class SGSparseVector
virtual void set_long_matrix(const int64_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_long_sparsematrix(SGSparseVector< int64_t > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_long_string_list(const SGString< int64_t > *strings, int32_t num_str)
virtual void get_int8_matrix(int8_t *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_uint_sparsematrix(const SGSparseVector< uint32_t > *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_ulong_sparsematrix(SGSparseVector< uint64_t > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_uint_string_list(const SGString< uint32_t > *strings, int32_t num_str)
virtual void set_int8_matrix(const int8_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void set_int8_sparsematrix(const SGSparseVector< int8_t > *matrix, int32_t num_feat, int32_t num_vec)
virtual const char * get_name() const
A File access base class.
virtual void set_matrix(const uint8_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_ndarray(uint8_t *&array, int32_t *&dims, int32_t &num_dims)
A Binary file access class.
int32_t parse_first_header(TSGDataType &type)
virtual void get_ulong_string_list(SGString< uint64_t > *&strings, int32_t &num_str, int32_t &max_string_len)
void read_header(TSGDataType *dest)
virtual void set_longreal_sparsematrix(const SGSparseVector< floatmax_t > *matrix, int32_t num_feat, int32_t num_vec)
virtual void set_ndarray(const uint8_t *array, int32_t *dims, int32_t num_dims)
virtual void set_ulong_matrix(const uint64_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_int8_string_list(SGString< int8_t > *&strings, int32_t &num_str, int32_t &max_string_len)
virtual void set_uint_matrix(const uint32_t *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_string_list(SGString< uint8_t > *&strings, int32_t &num_str, int32_t &max_string_len)
virtual void get_matrix(uint8_t *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_int8_string_list(const SGString< int8_t > *strings, int32_t num_str)
virtual void set_string_list(const SGString< uint8_t > *strings, int32_t num_str)
void write_header(const TSGDataType *datatype)
virtual void set_long_sparsematrix(const SGSparseVector< int64_t > *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_uint_sparsematrix(SGSparseVector< uint32_t > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void get_uint_matrix(uint32_t *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void get_int8_sparsematrix(SGSparseVector< int8_t > *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void set_sparse_matrix(const SGSparseVector< bool > *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_longreal_matrix(floatmax_t *&matrix, int32_t &num_feat, int32_t &num_vec)
virtual void get_long_string_list(SGString< int64_t > *&strings, int32_t &num_str, int32_t &max_string_len)