ATLAS Offline Software
Loading...
Searching...
No Matches
IElementStreamer.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4/*
5 * IElementStreamer.h
6 * Formatter
7 *
8 * Created by sroe on 12/01/2010.
9 *
10 */
11#ifndef IElementStreamer_h
12#define IElementStreamer_h
13#include <iostream>
14#include <string>
15#include <map>
16#include <vector>
17namespace SCT_CalibAlgs {
18
20
21 protected:
22 std::string m_name;
23 std::vector<std::string> m_attributeNames;
24 std::vector<std::string> m_attributeValues;
25 std::ostream& m_os;
26 unsigned int m_depth{};
27 unsigned int m_nodeIndex{};
28 unsigned int m_nodeId{};
29
30 public:
31 IElementStreamer(const std::string& name, const std::map<std::string, std::string>& attributeMap, std::ostream& os=std::cout);
32 IElementStreamer(const std::string& name, const std::string& attributeName, const std::string& attributeValue, std::ostream& os=std::cout);
33 IElementStreamer(const std::string& name, const std::vector<std::string>& attributeNames, const std::vector<std::string>& attributeValues, std::ostream& os=std::cout);
35 template<class T>
36 void value(const T& v) {
37 m_os<<v;
38 }
39};
40
41}
42#endif
std::vector< std::string > m_attributeValues
IElementStreamer(const std::string &name, const std::map< std::string, std::string > &attributeMap, std::ostream &os=std::cout)
std::vector< std::string > m_attributeNames