TupleCut.cxx
Go to the documentation of this file.
1 
12 // for truncation warning in debug mode
13 #ifdef _MSC_VER
14 #include "msdevstudio/MSconfig.h"
15 #endif
16 
17 #include "TupleCut.h"
18 
19 #include "datasrcs/DataSource.h"
20 
21 #include <algorithm>
22 
23 using namespace hippodraw;
24 
27  : m_column ( 0 ),
28  m_invert ( false ),
29  m_enabled ( true )
30 {
31 }
32 
33 void
35 setEnabled ( bool yes )
36 {
37  m_enabled = yes;
38 }
39 
40 bool
42 isEnabled () const
43 {
44  return m_enabled;
45 }
46 
47 bool TupleCut::acceptRow ( const DataSource * ntuple,
48  unsigned int i ) const
49 {
50  bool shouldBeAccepted = true;
51 
52  if ( m_enabled ) {
53  double value = ntuple -> valueAt ( i, m_column );
54  bool included = m_range.includes ( value );
55  shouldBeAccepted =
56  ( included && ! m_invert ) ||
57  ( !included && m_invert );
58  }
59 
60  return shouldBeAccepted;
61 }
62 
63 void TupleCut::setColumn( unsigned int column )
64 {
65  m_column = column;
66 }
67 
68 unsigned int
70 getColumn () const
71 {
72  return m_column;
73 }
74 
75 void
77 setRange ( const Range & range )
78 {
79  m_range = range;
80 }
81 
82 const Range &
84 getRange ( ) const
85 {
86  return m_range;
87 }
88 
89 void
91 setInversion ( bool state )
92 {
93  m_invert = state;
94 }
95 
96 bool
98 getInversion ( ) const
99 {
100  return m_invert;
101 }
102 
104 {
105  m_invert = m_invert ? false : true;
106 }
107 
108 const std::string &
110 getLabel () const
111 {
112  return m_label;
113 }
114 
115 void
117 setLabel ( const std::string & label )
118 {
119  m_label = label;
120 }

Generated for HippoDraw Class Library by doxygen