IHistogramSet.hpp
1 #pragma once
2 
3 
4 #include "DM/config.hpp"
5 #include "DM/Handle.hpp"
6 #include "DM/ObjectBase.hpp"
7 #include "DM/InsertIterator.hpp"
8 #include "DM/IHistogram.hpp"
9 
10 DM_NAMESPACE_BEGIN
11 
12 /// \brief Interface to a set of histograms
13 class DM_API IHistogramSet : public ObjectBase
14 {
15 public:
16  // Iterator typedefs ============================================================================
18 
19  virtual ~IHistogramSet() {}
20 
21  // General memeber functions ====================================================================
22  virtual int64_t size() const = 0; ///< number histograms stored in the
23 
24  virtual const IAddInfoLayout& layout() const = 0; ///< layout representing the different histograms stored in the object
25 
26  virtual const_iterator beginHistogram() const = 0;
27  virtual const_iterator endHistogram() const = 0;
28 };
29 
31 
32 
33 DM_NAMESPACE_END
Definition: Iterator.hpp:96
AddInfo layouts describe a set of attributes that can be attached to geometry objects.
Definition: IAddInfoLayout.hpp:20
Interface to a set of histograms.
Definition: IHistogramSet.hpp:13
Smart pointer class using reference counting with support for DM objects (see ObjectBase)
Definition: Handle.hpp:98
Definition: M/c++_api/inc/DM/ObjectBase.hpp:8