37#ifndef tkensdf_reader_H
38#define tkensdf_reader_H
44#include "tkensdf_ident_rec.h"
55 std::ifstream fEnsdf_file{};
64 bool fVerbose =
false;
67 std::map<tkensdf_record::record_type, std::pair<long long, long long > > frecords_counter;
74 std::vector<tkensdf_ident_rec> fDataSets;
93 std::vector<tkensdf_ident_rec> *
get_datasets() {
return &fDataSets;}
104 bool open_file(
const tkstring &_file_name);
107 virtual void close_file();
Decodding of the ENSDF identification record properties.
Main class dedicated to ENSDF ascii files reading.
void print_datasets()
print the list of loaded data sets for the current nucleus and data type
virtual ~tkensdf_reader()=default
bool open_nuc(const tkstring &_nuc_name, const ensdf_data_type &_ftype=kensdf)
open the file for the slected nucleus and data type, and extract the available data sets
bool first_record(tkensdf_ident_rec *_dataset, tkstring &record)
move in the current file to the first record of the selected data set
tkensdf_reader(const tkstring &_input_folder)
void print_record_counters()
print record counters
bool next_record(tkensdf_ident_rec *_dataset, tkstring &record)
get the next record of the selected data set
void reset_record_counter()
reset the record counters
std::vector< tkensdf_ident_rec > * get_datasets()
get access to the identification records
std::string with usefull tricks from TString (ROOT) and KVString (KaliVeda) and more....