thepeg
is hosted by
Hepforge
,
IPPP Durham
ThePEG
2.3.0
Interface
ParMap.h
1
// -*- C++ -*-
2
//
3
// ParMap.h is a part of ThePEG - Toolkit for HEP Event Generation
4
// Copyright (C) 1999-2019 Leif Lonnblad
5
//
6
// ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7
// Please respect the MCnet academic guidelines, see GUIDELINES for details.
8
//
9
#ifndef ThePEG_ParMap_H
10
#define ThePEG_ParMap_H
11
// This is the declaration of the ParMap, ParMapTBase and
12
// ParMapBase classes.
13
14
#include "
ThePEG/Config/ThePEG.h
"
15
#include "InterfaceBase.h"
16
#include "ParMap.fh"
17
#include <limits>
18
19
namespace
ThePEG
{
20
22
namespace
{
23
template
<
typename
T>
27
inline
void
putUnitImpl2(ostream & os, T v, T u,
DimensionT
) {
28
os <<
v
/
u
;
29
}
30
31
template
<
typename
T>
35
inline
void
putUnitImpl2(ostream & os, T v, T u,
StandardT
) {
36
if
( u > T() )
37
os <<
v
/
u
;
38
else
39
os <<
v
;
40
}
41
}
42
63
class
ParMapBase
:
public
InterfaceBase
{
64
65
public
:
66
68
typedef
map<long,string>
StringMap
;
69
70
public
:
71
98
ParMapBase
(
string
newName,
string
newDescription,
99
string
newClassName,
100
const
type_info & newTypeInfo,
int
newSize,
101
bool
depSafe,
bool
readonly,
int
limits)
102
:
InterfaceBase
(newName, newDescription, newClassName,
103
newTypeInfo, depSafe,
104
readonly),
limit
(limits),
theSize
(newSize) {
105
hasDefault
=
false
;
106
}
107
111
virtual
~ParMapBase
() {}
112
121
virtual
string
exec
(
InterfacedBase
&,
string
action,
122
string
arguments)
const
;
123
127
virtual
string
fullDescription
(
const
InterfacedBase
& ib)
const
;
128
135
virtual
void
set
(
InterfacedBase
& ib,
string
val,
int
i)
136
const
= 0;
137
144
virtual
void
insert
(
InterfacedBase
& ib,
string
val,
int
i)
145
const
= 0;
146
151
virtual
void
erase
(
InterfacedBase
& ib,
int
i)
152
const
= 0;
153
157
virtual
void
clear
(
InterfacedBase
& ib)
158
const
= 0;
159
163
virtual
StringMap
get
(
const
InterfacedBase
& ib)
const
164
= 0;
165
170
virtual
string
minimum
(
const
InterfacedBase
& ib,
int
i)
const
171
= 0;
172
177
virtual
string
maximum
(
const
InterfacedBase
& ib,
int
i)
const
178
= 0;
179
184
virtual
string
def
(
const
InterfacedBase
& ib,
int
i)
const
185
= 0;
186
190
virtual
string
def
()
const
= 0;
191
196
virtual
void
setDef
(
InterfacedBase
& ib,
int
i)
const
197
= 0;
198
202
bool
limited
()
const
{
return
limit
!=
Interface::nolimits
; }
203
207
bool
upperLimit
()
const
{
208
return
limit
==
Interface::limited
||
limit
==
Interface::upperlim
;
209
}
210
214
bool
lowerLimit
()
const
{
215
return
limit
==
Interface::limited
||
limit
==
Interface::lowerlim
;
216
}
217
222
void
setLimited
() {
limit
=
Interface::limited
; }
223
228
void
setUnlimited
() {
limit
=
Interface::nolimits
; }
229
234
int
size
()
const
{
return
theSize
; }
235
240
void
setSize
(
int
sz) {
theSize
= sz; }
241
246
void
setVariableSize
() {
theSize
= 0; }
247
248
private
:
249
254
int
limit
;
255
259
int
theSize
;
260
261
};
262
283
template
<
typename
Type>
284
class
ParMapTBase
:
public
ParMapBase
{
285
286
public
:
287
289
typedef
map<long,Type>
TypeMap
;
290
291
public
:
292
322
ParMapTBase
(
string
newName,
string
newDescription,
323
string
newClassName,
const
type_info & newTypeInfo,
324
Type newUnit,
int
newSize,
bool
depSafe,
325
bool
readonly,
int
limits)
326
:
ParMapBase
(newName, newDescription, newClassName,
327
newTypeInfo, newSize,
328
depSafe, readonly, limits),
theUnit
(newUnit) {}
329
330
334
virtual
~ParMapTBase
() {}
335
339
virtual
string
type
()
const
;
340
345
virtual
string
doxygenType
()
const
;
346
350
virtual
string
fullDescription
(
const
InterfacedBase
& ib)
const
;
351
357
virtual
void
set
(
InterfacedBase
& ib,
string
val,
int
i)
const
358
;
359
364
virtual
void
tset
(
InterfacedBase
& ib, Type val,
int
i)
365
const
= 0;
366
373
virtual
void
insert
(
InterfacedBase
& ib,
string
val,
int
i)
const
374
;
375
376
private
:
378
void
setImpl
(
InterfacedBase
& ib,
string
val,
int
i,
StandardT
)
379
const
;
380
382
void
setImpl
(
InterfacedBase
& ib,
string
val,
int
i,
DimensionT
)
383
const
;
384
386
void
insertImpl
(
InterfacedBase
& ib,
string
val,
int
i,
StandardT
)
387
const
;
388
390
void
insertImpl
(
InterfacedBase
& ib,
string
val,
int
i,
DimensionT
)
391
const
;
392
393
public
:
394
399
virtual
void
tinsert
(
InterfacedBase
& ib, Type val,
int
i)
400
const
= 0;
401
407
virtual
StringMap
get
(
const
InterfacedBase
& ib)
const
408
;
409
414
virtual
TypeMap
tget
(
const
InterfacedBase
& ib)
const
415
= 0;
416
424
virtual
string
minimum
(
const
InterfacedBase
& ib,
int
i)
const
425
;
426
431
virtual
Type
tminimum
(
const
InterfacedBase
& ib,
int
i)
const
432
= 0;
433
440
virtual
string
maximum
(
const
InterfacedBase
& ib,
int
i)
const
441
;
442
447
virtual
Type
tmaximum
(
const
InterfacedBase
& ib,
int
i)
const
448
= 0;
449
455
virtual
string
def
(
const
InterfacedBase
& ib,
int
i)
const
456
;
457
462
virtual
Type
tdef
(
const
InterfacedBase
& ib,
int
i)
const
463
= 0;
464
469
virtual
string
def
()
const
;
470
474
virtual
Type
tdef
()
const
= 0;
475
480
virtual
void
setDef
(
InterfacedBase
& ib,
int
i)
const
481
;
482
488
Type
unit
()
const
{
return
theUnit
; }
489
495
void
unit
(Type u) {
theUnit
= u; }
496
497
protected
:
498
502
void
putUnit
(ostream & os, Type val)
const
{
503
putUnitImpl2(os, val,
unit
(),
typename
TypeTraits<Type>::DimType
());
504
}
505
506
private
:
507
513
Type
theUnit
;
514
515
};
516
537
template
<
typename
T,
typename
Type>
538
class
ParMap
:
public
ParMapTBase
<Type> {
539
540
public
:
541
546
typedef
void (T::*
SetFn
)(Type, int);
547
552
typedef
void (T::*
InsFn
)(Type, int);
553
558
typedef
void (T::*
DelFn
)(int);
559
563
typedef
map<long,Type>
TypeMap
;
564
569
typedef
TypeMap
(T::*
GetFn
)()
const
;
570
574
typedef
map<long,string>
StringMap
;
575
580
typedef
StringMap
(T::*
StringGetFn
)()
const
;
581
586
typedef
Type (T::*
DefFn
)(int)
const
;
587
592
typedef
TypeMap
T::*
Member
;
593
594
public
:
595
650
ParMap
(
string
newName,
string
newDescription,
651
Member
newMember,
int
newSize, Type newDef, Type newMin,
652
Type newMax,
bool
depSafe =
false
,
bool
readonly =
false
,
653
bool
limits =
true
,
SetFn
newSetFn = 0,
654
InsFn
newInsFn = 0,
DelFn
newDelFn = 0,
GetFn
newGetFn = 0,
655
DefFn
newDefFn = 0,
DefFn
newMinFn = 0,
DefFn
newMaxFn = 0,
656
StringGetFn
newStringGetFn = 0)
657
:
ParMapTBase
<Type>(newName, newDescription,
ClassTraits
<T>::
className
(),
658
typeid(T), Type(), newSize, depSafe, readonly,
659
limits),
660
theMember
(newMember),
theDef
(newDef),
theMin
(newMin),
theMax
(newMax),
661
theSetFn
(newSetFn),
theInsFn
(newInsFn),
theDelFn
(newDelFn),
662
theGetFn
(newGetFn),
theDefFn
(newDefFn),
theMinFn
(newMinFn),
663
theMaxFn
(newMaxFn),
theStringGetFn
(newStringGetFn) {}
664
665
723
ParMap
(
string
newName,
string
newDescription,
Member
newMember,
724
Type newUnit,
int
newSize, Type newDef, Type newMin,
725
Type newMax,
bool
depSafe =
false
,
bool
readonly =
false
,
726
bool
limits =
true
,
SetFn
newSetFn = 0,
727
InsFn
newInsFn = 0,
DelFn
newDelFn = 0,
GetFn
newGetFn = 0,
728
DefFn
newDefFn = 0,
DefFn
newMinFn = 0,
DefFn
newMaxFn = 0,
729
StringGetFn
newStringGetFn = 0)
730
:
ParMapTBase
<Type>(newName, newDescription,
ClassTraits
<T>::
className
(),
731
typeid(T), newUnit, newSize, depSafe, readonly,
732
limits),
733
theMember
(newMember),
theDef
(newDef),
theMin
(newMin),
theMax
(newMax),
734
theSetFn
(newSetFn),
theInsFn
(newInsFn),
theDelFn
(newDelFn),
735
theGetFn
(newGetFn),
theDefFn
(newDefFn),
theMinFn
(newMinFn),
736
theMaxFn
(newMaxFn),
theStringGetFn
(newStringGetFn) {}
737
793
ParMap
(
string
newName,
string
newDescription,
794
Member
newMember,
int
newSize, Type newDef, Type newMin,
795
Type newMax,
bool
depSafe =
false
,
bool
readonly =
false
,
796
int
limits =
Interface::limited
,
SetFn
newSetFn = 0,
797
InsFn
newInsFn = 0,
DelFn
newDelFn = 0,
GetFn
newGetFn = 0,
798
DefFn
newDefFn = 0,
DefFn
newMinFn = 0,
DefFn
newMaxFn = 0,
799
StringGetFn
newStringGetFn = 0)
800
:
ParMapTBase
<Type>(newName, newDescription,
ClassTraits
<T>::
className
(),
801
typeid(T), Type(), newSize, depSafe, readonly,
802
limits),
803
theMember
(newMember),
theDef
(newDef),
theMin
(newMin),
theMax
(newMax),
804
theSetFn
(newSetFn),
theInsFn
(newInsFn),
theDelFn
(newDelFn),
805
theGetFn
(newGetFn),
theDefFn
(newDefFn),
theMinFn
(newMinFn),
806
theMaxFn
(newMaxFn),
theStringGetFn
(newStringGetFn) {}
807
866
ParMap
(
string
newName,
string
newDescription,
Member
newMember,
867
Type newUnit,
int
newSize, Type newDef, Type newMin,
868
Type newMax,
bool
depSafe =
false
,
bool
readonly =
false
,
869
int
limits =
Interface::limited
,
SetFn
newSetFn = 0,
870
InsFn
newInsFn = 0,
DelFn
newDelFn = 0,
GetFn
newGetFn = 0,
871
DefFn
newDefFn = 0,
DefFn
newMinFn = 0,
DefFn
newMaxFn = 0,
872
StringGetFn
newStringGetFn = 0)
873
:
ParMapTBase
<Type>(newName, newDescription,
ClassTraits
<T>::
className
(),
874
typeid(T), newUnit, newSize, depSafe, readonly,
875
limits),
876
theMember
(newMember),
theDef
(newDef),
theMin
(newMin),
theMax
(newMax),
877
theSetFn
(newSetFn),
theInsFn
(newInsFn),
theDelFn
(newDelFn),
878
theGetFn
(newGetFn),
theDefFn
(newDefFn),
theMinFn
(newMinFn),
879
theMaxFn
(newMaxFn),
theStringGetFn
(newStringGetFn) {}
880
885
virtual
void
tset
(
InterfacedBase
& ib, Type val,
int
i)
const
886
;
887
892
virtual
void
tinsert
(
InterfacedBase
& ib, Type val,
int
i)
const
893
;
894
899
virtual
void
erase
(
InterfacedBase
& ib,
int
i)
900
const
;
901
905
virtual
void
clear
(
InterfacedBase
& ib)
906
const
;
907
913
virtual
StringMap
get
(
const
InterfacedBase
& ib)
const
914
;
915
920
virtual
TypeMap
tget
(
const
InterfacedBase
& ib)
const
921
;
922
927
virtual
Type
tminimum
(
const
InterfacedBase
& ib,
int
i)
const
928
;
929
934
virtual
Type
tmaximum
(
const
InterfacedBase
& ib,
int
i)
const
935
;
936
941
virtual
Type
tdef
(
const
InterfacedBase
&,
int
)
const
942
;
943
947
virtual
Type
tdef
()
const
;
948
952
void
setSetFunction
(
SetFn
sf) {
theSetFn
= sf; }
953
957
void
setInsertFunction
(
InsFn
ifn) {
theInsFn
= ifn; }
958
962
void
setGetFunction
(
GetFn
gf) {
theGetFn
= gf; }
963
967
void
setEraseFunction
(
DelFn
df) {
theDelFn
= df; }
968
972
void
setDefaultFunction
(
GetFn
df) {
theDefFn
= df; }
973
977
void
setMinFunction
(
GetFn
mf) {
theMinFn
= mf; }
978
982
void
setMaxFunction
(
GetFn
mf) {
theMaxFn
= mf; }
983
987
void
setStringGetFunction
(
StringGetFn
gf) {
theStringGetFn
= gf; }
988
993
virtual
void
doxygenDescription
(ostream & stream)
const
;
994
995
private
:
996
1000
Member
theMember
;
1001
1006
Type
theDef
;
1007
1012
Type
theMin
;
1013
1018
Type
theMax
;
1019
1023
SetFn
theSetFn
;
1024
1028
InsFn
theInsFn
;
1029
1033
DelFn
theDelFn
;
1034
1038
GetFn
theGetFn
;
1039
1043
DefFn
theDefFn
;
1044
1048
DefFn
theMinFn
;
1049
1053
DefFn
theMaxFn
;
1054
1058
StringGetFn
theStringGetFn
;
1059
1060
};
1061
1062
}
1063
1064
#ifndef ThePEG_TEMPLATES_IN_CC_FILE
1065
#include "ParMap.tcc"
1066
#endif
1067
1068
#endif
/* ThePEG_ParMap_H */
ThePEG.h
This is the main config header file for ThePEG.
ThePEG::InterfaceBase
The InterfaceBase class defines a generic interface to any class derived from the InterfacedBase clas...
Definition:
InterfaceBase.h:59
ThePEG::InterfaceBase::className
string className() const
Return the class name for the class this interface is defined for.
Definition:
InterfaceBase.h:166
ThePEG::InterfaceBase::hasDefault
bool hasDefault
A flag indicating whether this interface has a default setting.
Definition:
InterfaceBase.h:257
ThePEG::InterfacedBase
InterfacedBase is the base class of all Interfaced objects to be handled by the BaseRepository class.
Definition:
InterfacedBase.h:45
ThePEG::ParMapBase
The ParMap and its base classes ParMapTBase and ParMapBase defines an interface to a class derived fr...
Definition:
ParMap.h:63
ThePEG::ParMapBase::limit
int limit
True if there are limits associated with the variables.
Definition:
ParMap.h:254
ThePEG::ParMapBase::ParMapBase
ParMapBase(string newName, string newDescription, string newClassName, const type_info &newTypeInfo, int newSize, bool depSafe, bool readonly, int limits)
Standard constructor.
Definition:
ParMap.h:98
ThePEG::ParMapBase::clear
virtual void clear(InterfacedBase &ib) const =0
Clear the container of pointers of ib.
ThePEG::ParMapBase::maximum
virtual string maximum(const InterfacedBase &ib, int i) const =0
Return the maximum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapBase::~ParMapBase
virtual ~ParMapBase()
Destructor.
Definition:
ParMap.h:111
ThePEG::ParMapBase::setVariableSize
void setVariableSize()
Set the size of the container being interfaced to -1, i.e.
Definition:
ParMap.h:246
ThePEG::ParMapBase::theSize
int theSize
The size of the container being interfaced.
Definition:
ParMap.h:259
ThePEG::ParMapBase::get
virtual StringMap get(const InterfacedBase &ib) const =0
Return the values of a container of member variables of ib.
ThePEG::ParMapBase::lowerLimit
bool lowerLimit() const
True if there the variable is limited from below.
Definition:
ParMap.h:214
ThePEG::ParMapBase::set
virtual void set(InterfacedBase &ib, string val, int i) const =0
Set the i'th element of a container of member variables of ib to val.
ThePEG::ParMapBase::StringMap
map< long, string > StringMap
A map of strings.
Definition:
ParMap.h:68
ThePEG::ParMapBase::def
virtual string def(const InterfacedBase &ib, int i) const =0
Return the default value for the i'th element of a container of member variables of ib.
ThePEG::ParMapBase::setDef
virtual void setDef(InterfacedBase &ib, int i) const =0
Set the i'th element of a container of member variables of ib to its default value.
ThePEG::ParMapBase::setSize
void setSize(int sz)
Set the size of the container being interfaced.
Definition:
ParMap.h:240
ThePEG::ParMapBase::upperLimit
bool upperLimit() const
True if there the variable is limited from abovew.
Definition:
ParMap.h:207
ThePEG::ParMapBase::fullDescription
virtual string fullDescription(const InterfacedBase &ib) const
Return a complete description of this parameter map.
ThePEG::ParMapBase::setLimited
void setLimited()
Set a flag indicating that there are limits associated with the variables.
Definition:
ParMap.h:222
ThePEG::ParMapBase::setUnlimited
void setUnlimited()
Set a flag indicating if there are no limits associated with the variables.
Definition:
ParMap.h:228
ThePEG::ParMapBase::minimum
virtual string minimum(const InterfacedBase &ib, int i) const =0
Return the minimum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapBase::size
int size() const
Get the size of the container being interfaced.
Definition:
ParMap.h:234
ThePEG::ParMapBase::insert
virtual void insert(InterfacedBase &ib, string val, int i) const =0
Insert a new object before the i'th element of a container of member variables of ib and set it to va...
ThePEG::ParMapBase::exec
virtual string exec(InterfacedBase &, string action, string arguments) const
The general interface method overriding the one in InterfaceBase.
ThePEG::ParMapBase::limited
bool limited() const
True if there the variable is limited from above and below.
Definition:
ParMap.h:202
ThePEG::ParMapBase::erase
virtual void erase(InterfacedBase &ib, int i) const =0
Remove the i'th element of a container of member variables of ib.
ThePEG::ParMapBase::def
virtual string def() const =0
Return the general default value for this parameter map.
ThePEG::ParMapTBase
The ParMap and its base classes ParMapTBase and ParMapBase defines an interface to a class derived fr...
Definition:
ParMap.h:284
ThePEG::ParMapTBase::setImpl
void setImpl(InterfacedBase &ib, string val, int i, DimensionT) const
Implementation of set() for dimensioned types.
ThePEG::ParMapTBase::type
virtual string type() const
Return a code for the type of this parameter.
ThePEG::ParMapTBase::tmaximum
virtual Type tmaximum(const InterfacedBase &ib, int i) const =0
Return the maximum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapTBase::unit
void unit(Type u)
Set the unit which an Type object is divided (multiplied) by when written to (read from) a stream via...
Definition:
ParMap.h:495
ThePEG::ParMapTBase::setDef
virtual void setDef(InterfacedBase &ib, int i) const
set the i'th element of a container of member variables of ib to its default value.
ThePEG::ParMapTBase::doxygenType
virtual string doxygenType() const
Return a string describing the type of interface to be included in the Doxygen documentation.
ThePEG::ParMapTBase::unit
Type unit() const
Get the unit which an Type object is divided (multiplied) by when written to (read from) a stream via...
Definition:
ParMap.h:488
ThePEG::ParMapTBase::theUnit
Type theUnit
The unit which an Type object is divided (multiplied) by when written to (read from) a stream via a d...
Definition:
ParMap.h:513
ThePEG::ParMapTBase::~ParMapTBase
virtual ~ParMapTBase()
Destructor.
Definition:
ParMap.h:334
ThePEG::ParMapTBase::insertImpl
void insertImpl(InterfacedBase &ib, string val, int i, DimensionT) const
Implementation of insert() for dimensioned types.
ThePEG::ParMapTBase::minimum
virtual string minimum(const InterfacedBase &ib, int i) const
Return the minimum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapTBase::maximum
virtual string maximum(const InterfacedBase &ib, int i) const
Return the maximum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapTBase::tget
virtual TypeMap tget(const InterfacedBase &ib) const =0
Return the values of a container of member variables of ib in a map of Type.
ThePEG::ParMapTBase::def
virtual string def(const InterfacedBase &ib, int i) const
Return the default value for the i'th element of a container of member variables of ib.
ThePEG::ParMapTBase::def
virtual string def() const
Return the general default value for this parameter map.
ThePEG::ParMapTBase::tminimum
virtual Type tminimum(const InterfacedBase &ib, int i) const =0
Return the minimum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMapTBase::insertImpl
void insertImpl(InterfacedBase &ib, string val, int i, StandardT) const
Implementation of insert() for standard types.
ThePEG::ParMapTBase::setImpl
void setImpl(InterfacedBase &ib, string val, int i, StandardT) const
Implementation of set() for standard types.
ThePEG::ParMapTBase::putUnit
void putUnit(ostream &os, Type val) const
Write a numer to a stream with the unit specified with unit().
Definition:
ParMap.h:502
ThePEG::ParMapTBase::set
virtual void set(InterfacedBase &ib, string val, int i) const
Set the i'th element of a container of member variables of ib to val.
ThePEG::ParMapTBase::tset
virtual void tset(InterfacedBase &ib, Type val, int i) const =0
Set the i'th element of a container of member variables of ib to val.
ThePEG::ParMapTBase::ParMapTBase
ParMapTBase(string newName, string newDescription, string newClassName, const type_info &newTypeInfo, Type newUnit, int newSize, bool depSafe, bool readonly, int limits)
Standard constructor.
Definition:
ParMap.h:322
ThePEG::ParMapTBase::tdef
virtual Type tdef() const =0
Return the general default value for this parameter map.
ThePEG::ParMapTBase::insert
virtual void insert(InterfacedBase &ib, string val, int i) const
Insert a new object before the i'th element of a container of member variables of ib and set it to va...
ThePEG::ParMapTBase::get
virtual StringMap get(const InterfacedBase &ib) const
Return the values of a container of member variables of ib in a map of strings.
ThePEG::ParMapTBase::fullDescription
virtual string fullDescription(const InterfacedBase &ib) const
Return a complete description of this parameter map.
ThePEG::ParMapTBase::tinsert
virtual void tinsert(InterfacedBase &ib, Type val, int i) const =0
Insert a new object before the i'th element of a container of member variables of ib and set it to va...
ThePEG::ParMapTBase::TypeMap
map< long, Type > TypeMap
A map of objects of the template argument type.
Definition:
ParMap.h:289
ThePEG::ParMapTBase::tdef
virtual Type tdef(const InterfacedBase &ib, int i) const =0
Return the default value for the i'th element of a container of member variables of ib.
ThePEG::ParMap
The ParMap and its base classes ParMapTBase and ParMapBase defines an interface to a class derived fr...
Definition:
ParMap.h:538
ThePEG::ParMap::setEraseFunction
void setEraseFunction(DelFn df)
Give a pointer to a member function to be used by terase().
Definition:
ParMap.h:967
ThePEG::ParMap::Member
TypeMap T::* Member
Declaration of a direct pointer to the member variable in case it is a map.
Definition:
ParMap.h:592
ThePEG::ParMap::TypeMap
map< long, Type > TypeMap
A map of objects of the template parameter Type.
Definition:
ParMap.h:563
ThePEG::ParMap::ParMap
ParMap(string newName, string newDescription, Member newMember, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, int limits=Interface::limited, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0)
Standard constructor.
Definition:
ParMap.h:793
ThePEG::ParMap::theMax
Type theMax
Maximum value to be used if no corresponding member function pointer is given.
Definition:
ParMap.h:1018
ThePEG::ParMap::DelFn
void(T::* DelFn)(int)
The declaration of member functions which can be used by this ParMap interface for 'erase' actions.
Definition:
ParMap.h:558
ThePEG::ParMap::ParMap
ParMap(string newName, string newDescription, Member newMember, Type newUnit, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, bool limits=true, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0)
Standard constructor.
Definition:
ParMap.h:723
ThePEG::ParMap::setInsertFunction
void setInsertFunction(InsFn ifn)
Give a pointer to a member function to be used by tinsert().
Definition:
ParMap.h:957
ThePEG::ParMap::theInsFn
InsFn theInsFn
A pointer to a member function to be used by tinsert().
Definition:
ParMap.h:1028
ThePEG::ParMap::StringGetFn
StringMap(T::* StringGetFn)() const
The declaration of member functions which can be used by this ParMap interface for 'get' actions.
Definition:
ParMap.h:580
ThePEG::ParMap::tmaximum
virtual Type tmaximum(const InterfacedBase &ib, int i) const
Return the maximum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMap::theMinFn
DefFn theMinFn
Pointer to member function to be used by tminimum().
Definition:
ParMap.h:1048
ThePEG::ParMap::clear
virtual void clear(InterfacedBase &ib) const
Clear the container of pointers of ib.
ThePEG::ParMap::setGetFunction
void setGetFunction(GetFn gf)
Give a pointer to a member function to be used by tget().
Definition:
ParMap.h:962
ThePEG::ParMap::InsFn
void(T::* InsFn)(Type, int)
The declaration of member functions which can be used by this ParMap interface for 'insert' actions.
Definition:
ParMap.h:552
ThePEG::ParMap::theDefFn
DefFn theDefFn
Pointer to member function to be used by tdef().
Definition:
ParMap.h:1043
ThePEG::ParMap::theMember
Member theMember
The pointer to the member variable.
Definition:
ParMap.h:1000
ThePEG::ParMap::setStringGetFunction
void setStringGetFunction(StringGetFn gf)
Give a pointer to a member function to be used by get().
Definition:
ParMap.h:987
ThePEG::ParMap::theSetFn
SetFn theSetFn
A pointer to a member function to be used by tset().
Definition:
ParMap.h:1023
ThePEG::ParMap::SetFn
void(T::* SetFn)(Type, int)
The declaration of member functions which can be used by this ParMap interface for 'set' actions.
Definition:
ParMap.h:546
ThePEG::ParMap::doxygenDescription
virtual void doxygenDescription(ostream &stream) const
Print a description to be included in the Doxygen documentation to the given stream.
ThePEG::ParMap::StringMap
map< long, string > StringMap
A map of strings.
Definition:
ParMap.h:574
ThePEG::ParMap::setMinFunction
void setMinFunction(GetFn mf)
Give a pointer to a member function to be used by tminimum().
Definition:
ParMap.h:977
ThePEG::ParMap::tinsert
virtual void tinsert(InterfacedBase &ib, Type val, int i) const
Insert a new object before the i'th element of a container of member variables of ib and set it to va...
ThePEG::ParMap::theGetFn
GetFn theGetFn
A pointer to a member function to be used by tget().
Definition:
ParMap.h:1038
ThePEG::ParMap::tget
virtual TypeMap tget(const InterfacedBase &ib) const
Return the values of a container of member variables of ib in a map of Type.
ThePEG::ParMap::theMin
Type theMin
Minimum value to be used if no corresponding member function pointer is given.
Definition:
ParMap.h:1012
ThePEG::ParMap::ParMap
ParMap(string newName, string newDescription, Member newMember, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, bool limits=true, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0)
Standard constructor.
Definition:
ParMap.h:650
ThePEG::ParMap::theDelFn
DelFn theDelFn
A pointer to a member function to be used by terase().
Definition:
ParMap.h:1033
ThePEG::ParMap::ParMap
ParMap(string newName, string newDescription, Member newMember, Type newUnit, int newSize, Type newDef, Type newMin, Type newMax, bool depSafe=false, bool readonly=false, int limits=Interface::limited, SetFn newSetFn=0, InsFn newInsFn=0, DelFn newDelFn=0, GetFn newGetFn=0, DefFn newDefFn=0, DefFn newMinFn=0, DefFn newMaxFn=0, StringGetFn newStringGetFn=0)
Standard constructor.
Definition:
ParMap.h:866
ThePEG::ParMap::setMaxFunction
void setMaxFunction(GetFn mf)
Give a pointer to a member function to be used by tmaximum().
Definition:
ParMap.h:982
ThePEG::ParMap::theStringGetFn
StringGetFn theStringGetFn
A pointer to a member function to be used by set().
Definition:
ParMap.h:1058
ThePEG::ParMap::setSetFunction
void setSetFunction(SetFn sf)
Give a pointer to a member function to be used by tset().
Definition:
ParMap.h:952
ThePEG::ParMap::erase
virtual void erase(InterfacedBase &ib, int i) const
Remove the i'th element of a container of member variables of ib.
ThePEG::ParMap::theMaxFn
DefFn theMaxFn
Pointer to member function to be used by tmaximum().
Definition:
ParMap.h:1053
ThePEG::ParMap::tdef
virtual Type tdef(const InterfacedBase &, int) const
Return the default value for the i'th element of a container of member variables of ib.
ThePEG::ParMap::DefFn
Type(T::* DefFn)(int) const
The declaration of member functions which can be used by this ParMap interface for 'erase' actions.
Definition:
ParMap.h:586
ThePEG::ParMap::tset
virtual void tset(InterfacedBase &ib, Type val, int i) const
Set the i'th element of a container of member variables of ib to val.
ThePEG::ParMap::get
virtual StringMap get(const InterfacedBase &ib) const
Return the values of a container of member variables of ib in a map of strings.
ThePEG::ParMap::tdef
virtual Type tdef() const
Return the general default value for this parameter map.
ThePEG::ParMap::tminimum
virtual Type tminimum(const InterfacedBase &ib, int i) const
Return the minimum value allowed for the i'th element of a container of member variables of ib.
ThePEG::ParMap::setDefaultFunction
void setDefaultFunction(GetFn df)
Give a pointer to a member function to be used by tdef().
Definition:
ParMap.h:972
ThePEG::ParMap::GetFn
TypeMap(T::* GetFn)() const
The declaration of member functions which can be used by this ParMap interface for 'get' actions.
Definition:
ParMap.h:569
ThePEG::ParMap::theDef
Type theDef
Default value to be used if no corresponding member function pointer is given.
Definition:
ParMap.h:1006
ThePEG::Helicity::SpinorType::v
@ v
v spinor.
ThePEG::Interface::upperlim
@ upperlim
The parameter has only an upper limit.
Definition:
Interface.h:48
ThePEG::Interface::nolimits
@ nolimits
The parameter is not limited.
Definition:
Interface.h:46
ThePEG::Interface::lowerlim
@ lowerlim
The parameter has only an lower limit.
Definition:
Interface.h:49
ThePEG::Interface::limited
@ limited
The parameter is limited (both up- and downwards.
Definition:
Interface.h:47
ThePEG::ParticleID::u
@ u
(u)
Definition:
EnumParticles.h:30
ThePEG
This is the main namespace within which all identifiers in ThePEG are declared.
Definition:
FactoryBase.h:28
ThePEG::DimensionT
Int2Type< Dimensioned > DimensionT
Typedef for dimensioned types.
Definition:
TemplateTools.h:37
ThePEG::StandardT
Int2Type< Standard > StandardT
Typedef for non-dimensioned types.
Definition:
TemplateTools.h:40
ThePEG::ClassTraits
The default concrete implementation of ClassTraitsBase.
Definition:
ClassTraits.h:134
ThePEG::Int2Type
Conversion between integers and types.
Definition:
TemplateTools.h:24
Generated on Thu Jun 20 2024 14:47:00 for ThePEG by
1.9.6