Logo ROOT   6.18/05
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()
32const std::list<VariableSelectionRule>& ClassSelectionRule::GetFieldSelectionRules() const
33{
35}
36
38{
39 fMethodSelectionRules.emplace_back(method);
40}
41
43{
44 return !fMethodSelectionRules.empty();
45}
46
47void 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
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()
95const std::list<FunctionSelectionRule>& ClassSelectionRule::GetMethodSelectionRules() const
96{
98}
99
101{
102 return fIsInheritable;
103}
104
106{
107 fIsInheritable = inherit;
108}
109
111{
113}
114
116{
118}
119
121{
122 return fRequestNoStreamer;
123}
124
126{
128}
129
131{
133}
134
136{
138}
139
141{
142 fRequestOnlyTClass = value;
143}
144
146{
147 fRequestProtected = value;
148}
149
151{
152 fRequestPrivate = value;
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}
long GetLineNumber() const
ESelect GetSelected() const
void PrintAttributes(int level) const
void SetInheritable(bool inherit)
bool RequestNoStreamer() const
void SetRequestNoInputOperator(bool excl)
bool RequestStreamerInfo() const
bool HasFieldSelectionRules() const
const std::list< FunctionSelectionRule > & GetMethodSelectionRules() const
bool RequestNoInputOperator() const
void SetRequestProtected(bool val)
int RequestedVersionNumber() const
void AddFieldSelectionRule(const VariableSelectionRule &field)
std::list< FunctionSelectionRule > fMethodSelectionRules
void SetRequestedVersionNumber(int version)
void Print(std::ostream &out) const
const std::list< VariableSelectionRule > & GetFieldSelectionRules() const
void SetRequestPrivate(bool val)
bool HasMethodSelectionRules() const
void AddMethodSelectionRule(const FunctionSelectionRule &method)
void SetRequestNoStreamer(bool noStreamer)
void SetRequestOnlyTClass(bool val)
bool RequestOnlyTClass() const
std::list< VariableSelectionRule > fFieldSelectionRules
void SetRequestStreamerInfo(bool needStreamerInfo)