ROOT  6.06/09
Reference Guide
ClassSelectionRule.cxx
Go to the documentation of this file.
1 // @(#)root/core/utils:$Id: ClassSelectionRule.cxx 41697 2011-11-01 21:03:41Z pcanal $
2 // Author: Velislava Spasova September 2010
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2011, Rene Brun, Fons Rademakers and al. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 //////////////////////////////////////////////////////////////////////////
13 // //
14 // ClassSelection //
15 // //
16 //////////////////////////////////////////////////////////////////////////
17 
18 #include "ClassSelectionRule.h"
19 #include <iostream>
20 
22 {
23  fFieldSelectionRules.emplace_back(field);
24 }
25 
27 {
28  return !fFieldSelectionRules.empty();
29 }
30 
31 //const std::list<VariableSelectionRule>& ClassSelectionRule::GetFieldSelectionRules()
32 const std::list<VariableSelectionRule>& ClassSelectionRule::GetFieldSelectionRules() const
33 {
34  return fFieldSelectionRules;
35 }
36 
38 {
39  fMethodSelectionRules.emplace_back(method);
40 }
41 
43 {
44  return !fMethodSelectionRules.empty();
45 }
46 
47 void ClassSelectionRule::Print(std::ostream &out) const
48 {
49  out<<"\t\tSelected (line "<< GetLineNumber() <<"): ";
50  switch(GetSelected()){
51  case BaseSelectionRule::kYes: out<<"Yes"<<std::endl;
52  break;
53  case BaseSelectionRule::kNo: out<<"No"<<std::endl;
54  break;
55  case BaseSelectionRule::kDontCare: out<<"Don't Care"<<std::endl;
56  break;
57  default: out<<"Unspecified"<<std::endl;
58  }
59  out<<"\t\tAttributes: "<<std::endl;
60  PrintAttributes(out,2);
61 
62  if (HasFieldSelectionRules()) {
63  //out<<"\t\tHas field entries"<<std::endl;
64  std::list<VariableSelectionRule> fields = GetFieldSelectionRules();
65  std::list<VariableSelectionRule>::iterator fit = fields.begin();
66  int j = 0;
67 
68  for (; fit != fields.end(); ++fit, ++j)
69  {
70  out<<"\t\tField "<<j<<":"<<std::endl;
71  out<<*fit;
72  }
73  }
74  else {
75  out<<"\t\tNo field sel rules"<<std::endl;
76  }
78  //out<<"\t\tHas method entries"<<std::endl;
79  std::list<FunctionSelectionRule> methods = GetMethodSelectionRules();
80  std::list<FunctionSelectionRule>::iterator mit = methods.begin();
81  int k = 0;
82 
83  for (; mit != methods.end(); ++mit, ++k)
84  {
85  out<<"\t\tMethod "<<k<<":"<<std::endl;
86  out<<*mit;
87  }
88  }
89  else {
90  out<<"\t\tNo method sel rules"<<std::endl;
91  }
92 }
93 
94 //const std::list<FunctionSelectionRule>& ClassSelectionRule::GetMethodSelectionRules()
95 const std::list<FunctionSelectionRule>& ClassSelectionRule::GetMethodSelectionRules() const
96 {
97  return fMethodSelectionRules;
98 }
99 
101 {
102  return fIsInheritable;
103 }
104 
106 {
107  fIsInheritable = inherit;
108 }
109 
111 {
112  return fRequestStreamerInfo;
113 }
114 
116 {
118 }
119 
121 {
122  return fRequestNoStreamer;
123 }
124 
126 {
127  fRequestNoStreamer = mn;
128 }
129 
131 {
133 }
134 
136 {
138 }
139 
141 {
143 }
144 
146 {
148 }
149 
151 {
153 }
154 
156 {
157  fRequestedVersionNumber = version;
158 }
159 
161 {
162  return fRequestOnlyTClass;
163 }
164 
166 {
167  return fRequestProtected;
168 }
169 
171 {
172  return fRequestPrivate;
173 }
174 
176 {
178 }
void SetRequestOnlyTClass(bool val)
std::list< FunctionSelectionRule > fMethodSelectionRules
bool RequestStreamerInfo() const
void SetRequestProtected(bool val)
void PrintAttributes(int level) const
bool RequestNoStreamer() const
void SetRequestStreamerInfo(bool needStreamerInfo)
bool HasFieldSelectionRules() const
bool RequestNoInputOperator() const
void Print(std::ostream &out) const
void SetRequestNoInputOperator(bool excl)
int RequestedVersionNumber() const
char * out
Definition: TBase64.cxx:29
bool RequestPrivate() const
bool HasMethodSelectionRules() const
void SetRequestNoStreamer(bool noStreamer)
const std::list< VariableSelectionRule > & GetFieldSelectionRules() const
void SetInheritable(bool inherit)
void AddMethodSelectionRule(const FunctionSelectionRule &method)
void AddFieldSelectionRule(const VariableSelectionRule &field)
void SetRequestedVersionNumber(int version)
ESelect GetSelected() const
const std::list< FunctionSelectionRule > & GetMethodSelectionRules() const
bool RequestProtected() const
long GetLineNumber() const
std::list< VariableSelectionRule > fFieldSelectionRules
void SetRequestPrivate(bool val)
float value
Definition: math.cpp:443
bool RequestOnlyTClass() const