Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-04-19 09:13:42

0001 // -*- C++ -*-
0002 //
0003 // This file is part of YODA -- Yet more Objects for Data Analysis
0004 // Copyright (C) 2008-2024 The YODA collaboration (see AUTHORS for details)
0005 //
0006 #ifndef YODA_WRITERYODA1_H
0007 #define YODA_WRITERYODA1_H
0008 
0009 #include "YODA/AnalysisObject.h"
0010 #include "YODA/Counter.h"
0011 #include "YODA/Histo.h"
0012 #include "YODA/Profile.h"
0013 #include "YODA/Scatter.h"
0014 #include "YODA/Writer.h"
0015 
0016 namespace YODA {
0017 
0018 
0019   /// Persistency writer for YODA flat text format.
0020   class [[deprecated]] WriterYODA1 : public Writer {
0021   public:
0022 
0023     /// Singleton creation function
0024     static Writer& create();
0025 
0026     // Include definitions of all write methods (all fulfilled by Writer::write(...))
0027     #include "YODA/WriterMethods.icc"
0028 
0029 
0030   protected:
0031 
0032     void writeAO(std::ostream& stream, const AnalysisObject& c);
0033     void writeCounter(std::ostream& stream, const Counter& c);
0034     void writeHisto1D(std::ostream& stream, const Histo1D& h);
0035     void writeHisto2D(std::ostream& stream, const Histo2D& h);
0036     void writeProfile1D(std::ostream& stream, const Profile1D& p);
0037     void writeProfile2D(std::ostream& stream, const Profile2D& p);
0038     void writeScatter1D(std::ostream& stream, const Scatter1D& s);
0039     void writeScatter2D(std::ostream& stream, const Scatter2D& s);
0040     void writeScatter3D(std::ostream& stream, const Scatter3D& s);
0041 
0042 
0043   private:
0044 
0045     void _writeAnnotations(std::ostream& os, const AnalysisObject& ao);
0046 
0047     /// Private since it's a singleton.
0048     WriterYODA1() { }
0049 
0050   };
0051 
0052 
0053 }
0054 
0055 #endif