111 _i[0] = other.
_i[0] ;
112 _i[1] = other.
_i[1] ;
113 _d[0] = other.
_d[0] ;
114 _d[1] = other.
_d[1] ;
115 _s[0] = other.
_s[0] ;
116 _s[1] = other.
_s[1] ;
117 _s[2] = other.
_s[2] ;
118 _o[0] = other.
_o[0] ;
119 _o[1] = other.
_o[1] ;
141 if (&other==
this)
return *this ;
146 _i[0] = other.
_i[0] ;
147 _i[1] = other.
_i[1] ;
148 _d[0] = other.
_d[0] ;
149 _d[1] = other.
_d[1] ;
150 _s[0] = other.
_s[0] ;
151 _s[1] = other.
_s[1] ;
152 _s[2] = other.
_s[2] ;
153 _o[0] = other.
_o[0] ;
154 _o[1] = other.
_o[1] ;
179 if (
_c)
delete[]
_c ;
198 return _c ? &
_c[idx] : nullptr ;
216 std::array<bool, 13> needs;
219 needs[2] =
_i[1] != 0;
220 needs[3] =
_d[0] != 0;
221 needs[4] =
_d[1] != 0;
222 needs[5] = !
_s[0].empty();
223 needs[6] = !
_s[1].empty();
227 needs[10] = !
_s[2].empty();
234 for (
int i = needs.size() - 1; i >= 0; --i) {
239 std::stringstream ss;
242 ss <<
"RooCmdArg(\"" <<
GetName() <<
"\", " <<
_i[0];
251 ss <<
", " << (!
_s[0].empty() ?
"\"" +
_s[0] +
"\"" :
"\"\"");
253 ss <<
", " << (!
_s[1].empty() ?
"\"" +
_s[1] +
"\"" :
"\"\"");
255 ss <<
", " << (
_o[0] ?
"\"" + std::string(
_o[0]->
GetName()) +
"\"" :
"0");
257 ss <<
", " << (
_o[1] ?
"\"" + std::string(
_o[1]->
GetName()) +
"\"" :
"0");
264 ss << cmdArg->constructorCode() <<
"\n";
273 ss <<
", " << (!
_s[2].empty() ?
"\"" +
_s[2] +
"\"" :
"\"\"");
288 if (o.Contains(
"v")) {
293 std::cout <<
GetName() <<
":\ndoubles\t" <<
_d[0] <<
" " <<
_d[1] <<
"\nints\t" <<
_i[0] <<
" " <<
_i[1]
294 <<
"\nstrings\t" <<
_s[0] <<
" " <<
_s[1] <<
" " <<
_s[2] <<
"\nobjects\t" <<
_o[0] <<
" " <<
_o[1]
virtual void removeAll()
Remove all arguments from our set, deleting them if we own them.
virtual bool add(const RooAbsArg &var, bool silent=false)
Add the specified argument to list.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Named container for two doubles, two integers two object points and three string pointers that can be...
const RooArgSet * getSet(Int_t idx) const
Return RooArgSet stored in slot idx.
RooArgSet * _c
Payload RooArgSets.
void Print(const char *="") const override
This method must be overridden when a class wants to print itself.
RooLinkedList _argList
Payload sub-arguments.
void addArg(const RooCmdArg &arg)
Utility function to add nested RooCmdArg to payload of this RooCmdArg.
Int_t _i[2]
Payload integers.
RooCmdArg & operator=(const RooCmdArg &other)
Assignment operator.
static const RooCmdArg & none()
Return reference to null argument.
std::string constructorCode() const
void setSet(Int_t idx, const RooArgSet &set)
std::string _s[3]
Payload strings.
bool _procSubArgs
If true argument requires recursive processing.
RooCmdArg()
Default constructor.
TObject * _o[2]
Payload objects.
static const RooCmdArg _none
Static instance of null object.
double _d[2]
Payload doubles.
bool _prefixSubArgs
Prefix sub-arguments with container name?
~RooCmdArg() override
Destructor.
TObject * At(int index) const
Return object stored in sequential position given by index.
void Delete(Option_t *o=nullptr) override
Remove all elements in collection and delete all elements NB: Collection does not own elements,...
virtual void Add(TObject *arg)
The TNamed class is the base class for all named ROOT classes.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
const char * GetName() const override
Returns name of object.
const char * GetTitle() const override
Returns title of object.
virtual void SetName(const char *name)
Set the name of the TNamed.
Mother of all ROOT objects.
std::string getColonSeparatedNameString(RooArgSet const &argSet, char delim=':')