Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:13:37

0001 //==========================================================================
0002 //  AIDA Detector description implementation 
0003 //--------------------------------------------------------------------------
0004 // Copyright (C) Organisation europeenne pour la Recherche nucleaire (CERN)
0005 // All rights reserved.
0006 //
0007 // For the licensing terms see $DD4hepINSTALL/LICENSE.
0008 // For the list of contributors see $DD4hepINSTALL/doc/CREDITS.
0009 //
0010 // Author     : M.Frank
0011 //
0012 //==========================================================================
0013 #ifndef JSON_DOCUMENTHANDLER_H
0014 #define JSON_DOCUMENTHANDLER_H
0015 
0016 /// Framework include files
0017 #include <JSON/Elements.h>
0018 
0019 /// Namespace for the AIDA detector description toolkit
0020 namespace dd4hep {
0021 
0022   /// Namespace for the AIDA detector description toolkit supporting JSON utilities
0023   namespace json {
0024 
0025     /// Class supporting to read and parse XML documents.
0026     /**
0027      *  Wrapper object around the document parser.
0028      *
0029      *  \author   M.Frank
0030      *  \version  1.0
0031      *  \ingroup DD4HEP_JSON
0032      */
0033     class DocumentHandler {
0034     public:
0035       /// Default constructor
0036       DocumentHandler();
0037       /// Default destructor
0038       virtual ~DocumentHandler();
0039       /// Load XML file and parse it.
0040       virtual Document load(const std::string& fname) const;
0041       /// Parse a standalong XML string into a document.
0042       virtual Document parse(const char* doc_string, size_t length) const;
0043     };
0044 
0045   }       /* End namespace json                    */
0046 }         /* End namespace dd4hep                  */
0047 #endif // JSON_DOCUMENTHANDLER_H