1 #ifndef __JROOT_JASCIIFILESTREAMER__
2 #define __JROOT_JASCIIFILESTREAMER__
21 namespace JPP {
using namespace JROOT; }
36 using std::ifstream::operator>>;
58 this->
open(file_name);
81 istringstream is(buffer);
83 while (is >> buffer) {
91 reader.flags(this->flags());
97 istringstream is(buffer);
99 for (
size_t i = 0; i !=
columns.size() && is >> buffer; ++i) {
135 using std::ofstream::operator<<;
157 this->
open(file_name);
176 for (
const TDataMember* p : getListOfDataMembers<T>()) {
178 static_cast<ostream&
>(*this) <<
' ' << p->GetName();
183 static_cast<ostream&
>(*this) << endl;
188 writer.flags(this->flags());
190 for (
size_t i = 0; i !=
columns.size(); ++i) {
ASCII I/O of objects with ROOT dictionary.
Simple data structure to support I/O of equations (see class JLANG::JEquation).
This class can be used to temporarily redirect an input stream to an input string.
Default implementation of ROOT based dictionary for ASCII I/O.
Implementation for ASCII input of objects with ROOT dictionary.
JRootReader & getObject(T &object)
Read object.
Implementation for ASCII output of objects with ROOT dictionary.
T * open(const std::string &file_name)
Open file.
Auxiliary classes and methods for language specific functionality.
std::istream & getline(std::istream &in, JString &object)
Read string from input stream until end of line.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Auxiliary classes and methods for ROOT I/O.
bool is_valid(const json &js)
Check validity of JSon data.
static data_type & getInstance()
Get unique instance of template class.
Auxiliary class to read objects with ROOT dictionary from ASCII formatted file.
JASCIIFileReader(const char *const file_name, const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JASCIIFileReader(const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JASCIIFileReader & operator>>(T &object)
Read object from this file.
std::vector< JROOT::JRootReadableClass > columns
column count -> data member
Auxiliary class to write object with ROOT dictionary from ASCII formatted file.
JASCIIFileWriter & operator<<(const T &object)
Write object to this file.
std::vector< JROOT::JRootWritableClass > columns
column count -> data member
JASCIIFileWriter(const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JASCIIFileWriter(const char *const file_name, const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JRootAddressableClass get(const TDataMember &data_member) const
Get addressable class of given data member.
JRootAddressableClass find(const char *const name) const
Find addressable base class or data member with given name within current class.
ROOT class for reading object.
ROOT class for writing object.