1#ifndef FSTDATAACCESSORSPLITTINGMEMTRN_H
2#define FSTDATAACCESSORSPLITTINGMEMTRN_H
89template<
typename DATATYPE,
typename IDXTYPE,
class INTERVALCONTAINER>
90class Data_Accessor_Splitting_MemTRN :
public Clonable_Impl<Data_Accessor_Splitting_MemTRN<DATATYPE,IDXTYPE,INTERVALCONTAINER>,Data_Accessor_Splitting_Mem<DATATYPE,IDXTYPE,INTERVALCONTAINER>,CLONE_INHERIT,CLONE_WEAK_SHARING,CLONE_INHERIT>
102 typedef std::shared_ptr<Data_Scaler<DATATYPE> >
PScaler;
108 virtual std::ostream&
print(std::ostream& os)
const override;
119 std::shared_ptr<Data_File_TRN<DATATYPE,IDXTYPE> >
trnFile;
130template<
typename DATATYPE,
typename IDXTYPE,
class INTERVALCONTAINER>
138template<
typename DATATYPE,
typename IDXTYPE,
class INTERVALCONTAINER>
142 {std::ostringstream sos; sos <<
"Reading data to memory...";
syncout::print(std::cout,sos);}
144 for(
unsigned int c=0;c<
trnFile->getNoOfClasses();c++)
146 for(IDXTYPE p=0;p<
trnFile->getClassSize(c);p++) {
147 for(
unsigned int f=0;f<
trnFile->getNoOfFeatures();f++) {
153 {std::ostringstream sos; sos <<
"done."<<std::endl;
syncout::print(std::cout,sos);}
158template<
typename DATATYPE,
typename IDXTYPE,
class INTERVALCONTAINER>
162 os << std::endl <<
"Data_Accessor_Splitting_MemTRN()";
CRTP mixin implementing the Clonable protocol for a concrete class.
Definition clonable.hpp:184
bool is_sharing_clone() const
true if this instance is BOTH a clone and sharing – i.e. specifically a sharing_clone() result,...
Definition clonable.hpp:127
Implements data access to data cached entirely in memory, concrete file type support is delegated to ...
Definition data_accessor_splitting_mem.hpp:102
DAS::PSplitters PSplitters
Definition data_accessor_splitting_mem.hpp:110
virtual std::ostream & print(std::ostream &os) const override
writes the splitter stack's print() output (or "Data_Accessor_Splitting()" if the stack is empty) to ...
Definition data_accessor_splitting_mem.hpp:412
std::shared_ptr< DATATYPE > data
Definition data_accessor_splitting_mem.hpp:199
std::string filename
Definition data_accessor_splitting_mem.hpp:196
Implements data access to data cached entirely in memory, read once from a TRN file.
Definition data_accessor_splitting_memTRN.hpp:91
virtual void initial_data_read() override
reads the whole file into the base class's data array, then closes the file;
Definition data_accessor_splitting_memTRN.hpp:139
Data_Accessor_Splitting_MemTRN(const std::string _filename, const PSplitters _dsp, const PScaler _dsc)
Constructs the accessor for TRN file _filename, splitter stack _dsp and scaler _dsc; the file is open...
Definition data_accessor_splitting_memTRN.hpp:105
DASM::PSplitters PSplitters
Definition data_accessor_splitting_memTRN.hpp:103
virtual void initial_file_prepare() override
opens trnFile on this->filename;
Definition data_accessor_splitting_memTRN.hpp:131
Data_Accessor_Splitting_MemTRN(const Data_Accessor_Splitting_MemTRN &damt, int x)
Definition data_accessor_splitting_memTRN.hpp:114
virtual IDXTYPE file_getClassSize(unsigned int cls) const override
forwards to the open TRN file
Definition data_accessor_splitting_memTRN.hpp:127
std::shared_ptr< Data_Scaler< DATATYPE > > PScaler
Definition data_accessor_splitting_memTRN.hpp:102
virtual unsigned int file_getNoOfFeatures() const override
forwards to the open TRN file
Definition data_accessor_splitting_memTRN.hpp:126
std::shared_ptr< Data_File_TRN< DATATYPE, IDXTYPE > > trnFile
Definition data_accessor_splitting_memTRN.hpp:119
Data_Accessor_Splitting_Mem< DATATYPE, IDXTYPE, INTERVALLER > DASM
Definition data_accessor_splitting_memTRN.hpp:96
virtual unsigned int file_getNoOfClasses() const override
forwards to the open TRN file
Definition data_accessor_splitting_memTRN.hpp:125
virtual std::ostream & print(std::ostream &os) const override
writes the splitter stack's print() output (or "Data_Accessor_Splitting()" if the stack is empty) to ...
Definition data_accessor_splitting_memTRN.hpp:159
Clonable_Impl< Data_Accessor_Splitting_MemTRN, DASM, CLONE_INHERIT, CLONE_WEAK_SHARING, CLONE_INHERIT > parent_impl
Definition data_accessor_splitting_memTRN.hpp:101
TRN data format filter.
Definition data_file_TRN.hpp:136
FST4 specific error passing class.
Definition error.hpp:61
static void print(std::ostream &os, std::ostringstream &sos)
Writes sos's buffered content to os, serializing concurrent writers under FST_THREADED via a shared m...
Definition global.hpp:86
Implements data access to data cached entirely in memory, concrete file type support is delegated to ...
Enables data accessor objects to read TRN type of data files.
FST4 specific error passing class.
The Feature Selection Toolbox 4 library: every library component – data access, criteria and classifi...
Definition data_accessor.hpp:80
void notify(const std::string msg)
Prints msg followed by a newline via syncout::print(); a no-op unless the preprocessor macro DEBUG is...
Definition global.hpp:112