22 template <
class ST>
class SGString;
23 template <
class ST>
class SGSparseVector;
46 CFile(FILE* f,
const char* name=NULL);
54 CFile(
int fd,
const char* mode,
const char* name=NULL);
62 CFile(
const char* fname,
char rw=
'r',
const char* name=NULL);
117 virtual void get_vector(
bool*& vector, int32_t& len);
118 virtual void get_vector(int8_t*& vector, int32_t& len)=0;
119 virtual void get_vector(uint8_t*& vector, int32_t& len)=0;
120 virtual void get_vector(
char*& vector, int32_t& len)=0;
121 virtual void get_vector(int32_t*& vector, int32_t& len)=0;
122 virtual void get_vector(uint32_t*& vector, int32_t& len)=0;
126 virtual void get_vector(int16_t*& vector, int32_t& len)=0;
127 virtual void get_vector(uint16_t*& vector, int32_t& len)=0;
128 virtual void get_vector(int64_t*& vector, int32_t& len)=0;
129 virtual void get_vector(uint64_t*& vector, int32_t& len)=0;
145 bool*& matrix, int32_t& num_feat, int32_t& num_vec);
147 uint8_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
149 int8_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
151 char*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
153 int32_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
155 uint32_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
157 int64_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
159 uint64_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
161 float32_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
163 float64_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
165 floatmax_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
167 int16_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
169 uint16_t*& matrix, int32_t& num_feat, int32_t& num_vec)=0;
185 uint8_t*& array, int32_t*& dims, int32_t& num_dims)=0;
187 char*& array, int32_t*& dims, int32_t& num_dims)=0;
189 int32_t*& array, int32_t*& dims, int32_t& num_dims)=0;
191 float32_t*& array, int32_t*& dims, int32_t& num_dims)=0;
193 float64_t*& array, int32_t*& dims, int32_t& num_dims)=0;
195 int16_t*& array, int32_t*& dims, int32_t& num_dims)=0;
197 uint16_t*& array, int32_t*& dims, int32_t& num_dims)=0;
282 int32_t& max_string_len);
285 int32_t& max_string_len)=0;
288 int32_t& max_string_len)=0;
291 int32_t& max_string_len)=0;
294 int32_t& max_string_len)=0;
297 int32_t& max_string_len)=0;
300 int32_t& max_string_len)=0;
303 int32_t& max_string_len)=0;
306 int32_t& max_string_len)=0;
309 int32_t& max_string_len)=0;
312 int32_t& max_string_len)=0;
315 int32_t& max_string_len)=0;
318 int32_t& max_string_len)=0;
331 virtual void set_vector(
const bool* vector, int32_t len);
332 virtual void set_vector(
const int8_t* vector, int32_t len)=0;
333 virtual void set_vector(
const uint8_t* vector, int32_t len)=0;
334 virtual void set_vector(
const char* vector, int32_t len)=0;
335 virtual void set_vector(
const int32_t* vector, int32_t len)=0;
336 virtual void set_vector(
const uint32_t* vector, int32_t len)=0;
340 virtual void set_vector(
const int16_t* vector, int32_t len)=0;
341 virtual void set_vector(
const uint16_t* vector, int32_t len)=0;
342 virtual void set_vector(
const int64_t* vector, int32_t len)=0;
343 virtual void set_vector(
const uint64_t* vector, int32_t len)=0;
355 const bool* matrix, int32_t num_feat, int32_t num_vec);
357 const uint8_t* matrix, int32_t num_feat, int32_t num_vec)=0;
359 const int8_t* matrix, int32_t num_feat, int32_t num_vec)=0;
361 const char* matrix, int32_t num_feat, int32_t num_vec)=0;
363 const int32_t* matrix, int32_t num_feat, int32_t num_vec)=0;
365 const uint32_t* matrix, int32_t num_feat, int32_t num_vec)=0;
367 const int64_t* matrix, int32_t num_feat, int32_t num_vec)=0;
369 const uint64_t* matrix, int32_t num_feat, int32_t num_vec)=0;
371 const float32_t* matrix, int32_t num_feat, int32_t num_vec)=0;
373 const float64_t* matrix, int32_t num_feat, int32_t num_vec)=0;
375 const floatmax_t* matrix, int32_t num_feat, int32_t num_vec)=0;
377 const int16_t* matrix, int32_t num_feat, int32_t num_vec)=0;
379 const uint16_t* matrix, int32_t num_feat, int32_t num_vec)=0;
490 virtual const char*
get_name()
const {
return "File"; }
virtual void set_sparse_matrix(const SGSparseVector< bool > *matrix, int32_t num_feat, int32_t num_vec)=0
virtual void set_matrix(const bool *matrix, int32_t num_feat, int32_t num_vec)
virtual void get_sparse_matrix(SGSparseVector< bool > *&matrix, int32_t &num_feat, int32_t &num_vec)=0
virtual void set_string_list(const SGString< bool > *strings, int32_t num_str)
virtual void set_sparse_vector(const SGSparseVectorEntry< bool > *entries, int32_t num_feat)
virtual const char * get_name() const
FILE * get_file_descriptor()
template class SGSparseVector The assumtion is that the stored SGSparseVectorEntry* vector is orde...
Class SGObject is the base class of all shogun objects.
virtual void get_vector(bool *&vector, int32_t &len)
virtual void get_matrix(bool *&matrix, int32_t &num_feat, int32_t &num_vec)
A File access base class.
virtual void get_sparse_vector(SGSparseVectorEntry< bool > *&entries, int32_t &num_feat)
virtual void get_ndarray(uint8_t *&array, int32_t *&dims, int32_t &num_dims)=0
char * get_variable_name()
static char * read_whole_file(char *fname, size_t &len)
template class SGSparseVectorEntry
virtual void get_string_list(SGString< bool > *&strings, int32_t &num_str, int32_t &max_string_len)
virtual void set_vector(const bool *vector, int32_t len)
void set_variable_name(const char *name)