CMS 3D CMS Logo

FWItemValueGetter.h
Go to the documentation of this file.
1 #ifndef Fireworks_Core_FWItemValueGetter_h
2 #define Fireworks_Core_FWItemValueGetter_h
3 // -*- C++ -*-
4 //
5 // Package: Core
6 // Class : FWItemValueGetter
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Sun Nov 30 16:14:58 EST 2008
19 //
20 
21 #include <string>
22 #include <vector>
23 
24 #include "Rtypes.h"
26 
31 
32 
34 {
35 public:
36  FWItemValueGetter(const edm::TypeWithDict&, const std::string& iPurpose);
37  double valueFor(const void*, int idx) const;
38  UInt_t precision( int idx) const;
39  std::vector<std::string> getTitles() const;
40  int numValues() const;
41 
42  const std::string& getToolTip(const void* iObject) const;
43 
44 
45 private:
46  struct Entry {
51  UInt_t m_precision;
52 
53  Entry(reco::parser::ExpressionPtr iExpr, std::string iExpression, std::string iUnit, std::string iTitle, int iPrec) :
54  m_expr(iExpr), m_expression(iExpression), m_unit(iUnit), m_title(iTitle), m_precision(iPrec) {}
55  };
56 
57  bool addEntry(std::string iExpression,int iPrec = 2, std::string iTitle = "", std::string iUnit = "");
58 
59  typedef std::vector<Entry > Entries_t;
60  Entries_t::const_iterator Entries_i;
61 
62  Entries_t m_entries;
64 
66 
67 
68 };
69 
70 #endif
Entry(reco::parser::ExpressionPtr iExpr, std::string iExpression, std::string iUnit, std::string iTitle, int iPrec)
Entries_t::const_iterator Entries_i
bool addEntry(std::string iExpression, int iPrec=2, std::string iTitle="", std::string iUnit="")
FWItemValueGetter(const edm::TypeWithDict &, const std::string &iPurpose)
std::vector< Entry > Entries_t
boost::shared_ptr< ExpressionBase > ExpressionPtr
edm::TypeWithDict m_type
std::vector< std::string > getTitles() const
double valueFor(const void *, int idx) const
const std::string & getToolTip(const void *iObject) const
reco::parser::ExpressionPtr m_expr
UInt_t precision(int idx) const