1#ifndef __JDB_JSONSUPPORTKIT__ 
    2#define __JDB_JSONSUPPORTKIT__ 
   11#include "TDictionary.h" 
   49    js = 
json(
static_cast<const std::string&
>(
object));
 
 
   61    static_cast<std::string&
>(object) = js.get<std::string>();
 
 
   73    virtual void to_json(json& js, 
const void* p) 
const = 0;
 
   74    virtual void from_json(
const json& js, 
void* p) 
const = 0;
 
 
   85    virtual void to_json(json& js, 
const void* p)
 const override 
 
   90    virtual void from_json(
const json& js, 
void* p)
 const override 
 
 
  101    public std::map< std::string, std::shared_ptr<JSonIO> >,
 
  121      for_each<JRemove<JPrimitiveTypes_t, JTypeList<char, long double> >::typelist>(*this);
 
 
  140      const TDictionary* pDictionary = TDictionary::GetDictionary(
typeid(T));
 
  142      if (pDictionary != NULL)
 
  143        return pDictionary->GetName();
 
 
 
  172    friend inline void to_json(json& js, 
const T& 
object)
 
  179      for (unique_ptr<TIterator> i(cls.
getClass()->GetListOfDataMembers()->MakeIterator()); 
const TDataMember* p = (
const TDataMember*) i->Next(); ) {
 
  181        if (!JRoot::is_static(*p)) {
 
 
  204      for (unique_ptr<TIterator> i(cls.
getClass()->GetListOfDataMembers()->MakeIterator()); 
const TDataMember* p = (
const TDataMember*) i->Next(); ) {
 
  206        if (!JRoot::is_static(*p)) {
 
  210          if (js.contains(p->GetName()))
 
 
 
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
 
Type list of primitive data types.
 
Exception when parsing a value.
 
Auxiliary classes and methods for database I/O.
 
void from_json(const json &js, JDBString &object)
Convert JSon to database string.
 
void to_json(json &js, const JDBString &object)
Convert database string to JSon.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Wrapper class to read string until end-of-line.
 
void operator()(const JLANG::JType< T > &type)
Add data type.
 
static const char * getTypename()
Get typename for given template class.
 
JSonDictionary()
Default constructor.
 
Auxiliary base class for JSon I/O based on ROOT dictionary.
 
friend void to_json(json &js, const T &object)
Convert object to JSon.
 
friend void from_json(const json &js, T &object)
Convert JSon to object/.
 
Assigment implementation.
 
virtual void to_json(json &js, const void *p) const override
 
virtual void from_json(const json &js, void *p) const override
 
virtual void to_json(json &js, const void *p) const =0
 
virtual void from_json(const json &js, void *p) const =0
 
static data_type & getInstance()
Get unique instance of template class.
 
Auxiliary class for a type holder.
 
pointer_type getAddress() const
Get address.
 
JRootAddressableClass get(const TDataMember &object) const
Get addressable class of given data member.
 
const char * getTypename() const
Get type name.
 
TClass * getClass() const
Get class.
 
ROOT class for reading into object.
 
ROOT class for writing from object.