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) {
103 JRedirectString redirect(
reader, buffer);
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) {
JASCIIFileReader & operator>>(T &object)
Read object from this file.
ROOT class for reading object.
Implementation for ASCII output of objects with ROOT dictionary.
bool is_valid(const json &js)
Check validity of JSon data.
Simple data structure to support I/O of equations (see class JLANG::JEquation).
then usage $script< detector file >< detectorfile > nIf the range of floors is the first detector file is aligned to the second before the comparison nIn this
JASCIIFileWriter(const char *const file_name, const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JASCIIFileWriter & operator<<(const T &object)
Write object to this file.
T * open(const std::string &file_name)
Open file.
JASCIIFileWriter(const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
Auxiliary class to read objects with ROOT dictionary from ASCII formatted file.
Implementation for ASCII input of objects with ROOT dictionary.
ASCII I/O of objects with ROOT dictionary.
do set_variable OUTPUT_DIRECTORY $WORKDIR T
std::istream & getline(std::istream &in, JString &object)
Read string from input stream until end of line.
JRootReader & getObject(T &object)
Read object.
JASCIIFileReader(const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
JRootAddressableClass get(const TDataMember &data_member) const
Get addressable class of given data member.
Default implementation of ROOT based dictionary for ASCII I/O.
static data_type & getInstance()
Get unique instance of template class.
JRootAddressableClass find(const char *const name) const
Find addressable base class or data member with given name within current class.
JASCIIFileReader(const char *const file_name, const JRootDictionary &dictionary=JRootDictionary::getInstance())
Constructor.
std::vector< JROOT::JRootWritableClass > columns
column count -> data member
Auxiliary class to write object with ROOT dictionary from ASCII formatted file.
std::vector< JROOT::JRootReadableClass > columns
column count -> data member
ROOT class for writing object.