Jpp
18.0.0-rc.2
the software that should make you happy
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
software
JTools
JAbstractMultiMap.hh
Go to the documentation of this file.
1
#ifndef __JTOOLS__JABSTRACTMULTIMAP__
2
#define __JTOOLS__JABSTRACTMULTIMAP__
3
4
#include "
JTools/JAbstractCollection.hh
"
5
#include "
JTools/JMultiKey.hh
"
6
7
8
/**
9
* \author mdejong
10
*/
11
12
namespace
JTOOLS {}
13
namespace
JPP {
using namespace
JTOOLS; }
14
15
namespace
JTOOLS {
16
17
/**
18
* Abstract interface for abscissa values of a multidimensional map.
19
*
20
* The template parameters refer to the dimension of the multimap and
21
* the data type of the abscissa values, respectively.
22
*/
23
template
<
unsigned
int
N,
class
JAbscissa_t>
24
struct
JAbstractMultiMap
:
25
public
virtual
JAbstractMultiMap
<N - 1, JAbscissa_t>
26
{
27
typedef
JAbscissa_t
abscissa_type
;
28
typedef
JMultiKey
<
N
- 1,
abscissa_type
>
key_type
;
29
30
using
JAbstractMultiMap<N - 1, JAbscissa_t>::operator
();
31
32
33
/**
34
* Virtual destructor.
35
*/
36
virtual
~JAbstractMultiMap
()
37
{}
38
39
40
/**
41
* Get abscissa values as a function of given key.
42
*
43
* \param key key
44
* \return abscissa values
45
*/
46
virtual
const
JAbstractCollection<abscissa_type>
&
operator()
(
const
key_type
& key)
const
= 0;
47
};
48
49
50
/**
51
* Terminator class of recursive class JAbstractMultiMap.
52
* This class provides for dummy implementations of interface methods.
53
*/
54
template
<
class
JAbscissa_t>
55
struct
JAbstractMultiMap
<0, JAbscissa_t>
56
{
57
protected
:
58
void
operator()
()
const
{}
59
};
60
}
61
62
#endif
JTOOLS::JAbstractMultiMap::operator()
virtual const JAbstractCollection< abscissa_type > & operator()(const key_type &key) const =0
Get abscissa values as a function of given key.
JTOOLS::JAbstractCollection
Abstract interface for abscissa values of a collection of elements.
Definition:
JAbstractCollection.hh:21
JTOOLS::JAbstractMultiMap::~JAbstractMultiMap
virtual ~JAbstractMultiMap()
Virtual destructor.
Definition:
JAbstractMultiMap.hh:36
JTOOLS::JAbstractMultiMap
Abstract interface for abscissa values of a multidimensional map.
Definition:
JAbstractMultiMap.hh:24
JTOOLS::JAbstractMultiMap::abscissa_type
JAbscissa_t abscissa_type
Definition:
JAbstractMultiMap.hh:27
JTOOLS::JMultiKey
Multidimensional key.
Definition:
JMultiKey.hh:34
JTOOLS::JAbstractMultiMap::key_type
JMultiKey< N-1, abscissa_type > key_type
Definition:
JAbstractMultiMap.hh:28
JTOOLS::JAbstractMultiMap< 0, JAbscissa_t >::operator()
void operator()() const
Definition:
JAbstractMultiMap.hh:58
JMultiKey.hh
N
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
Definition:
JMuonPostfit.sh:36
JAbstractCollection.hh
Generated by
1.8.5