thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
Interface.h
1 // -*- C++ -*-
2 //
3 // Interface.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_Interface_H
10 #define THEPEG_Interface_H
11 //
12 // This is the declaration of the Interface namespace.
13 //
14 
15 namespace ThePEG {
16 
21 namespace Interface {
22 
28 enum DepSafe {
29  unsafe = false,
30  safe = true
31 };
32 
36 enum ReadOnly {
37  readwrite = false,
38  readonly = true
39 };
40 
45 enum Limits {
46  nolimits = 0,
47  limited = 1,
48  upperlim = 2,
49  lowerlim = 3
50 };
51 
57 enum Rebind {
58  norebind = true,
59  rebind = false
60 };
61 
65 enum Nullable {
66  nonull = false,
67  nullok = true
68 };
69 
76  nodefnull = false,
77  defnull = true
78 };
79 
80 
81 }
82 
83 }
84 
85 #endif /* THEPEG_Interface_H */
The interface is mutable.
Definition: Interface.h:37
The interface is dependency safe.
Definition: Interface.h:30
Nullable
Determine whether a Reference or RefVector object may be null.
Definition: Interface.h:65
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
The interface is read-only.
Definition: Interface.h:38
The reference is not automatically rebound.
Definition: Interface.h:58
The reference is automatically rebound.
Definition: Interface.h:59
The parameter is not limited.
Definition: Interface.h:46
DepSafe
Determine whether an interface is dependency safe or not.
Definition: Interface.h:28
The interface is not dependency safe.
Definition: Interface.h:29
The reference may be null.
Definition: Interface.h:67
ReadOnly
Determine whether an interface is read-only or not.
Definition: Interface.h:36
The parameter has only an upper limit.
Definition: Interface.h:48
The parameter has only an lower limit.
Definition: Interface.h:49
NullDefault
Determine whether a null reference should be given a default value if suitable object is registered a...
Definition: Interface.h:75
The reference may not be null.
Definition: Interface.h:66
The parameter is limited (both up- and downwards.
Definition: Interface.h:47
The reference will not be set to default if null.
Definition: Interface.h:76
Limits
Determine whether a Parameter or ParVector is limited, either upper, lower or both.
Definition: Interface.h:45
Rebind
Determine whether a the objects referred to by a Reference or a RefVector should be automaticlly rebo...
Definition: Interface.h:57
The reference will be set to default if null.
Definition: Interface.h:77