BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/GeneratorObject/include/DataModel/DeclareIndexingPolicy.h
Go to the documentation of this file.
1
#ifndef DATAMODEL_DECLAREINDEXINGPOLICY_H
2
#define DATAMODEL_DECLAREINDEXINGPOLICY_H
3
4
/** \file DeclareIndexingPolicy.h
5
* @brief declare to which family the container belongs as far
6
* as its indexing policy is concerned
7
8
* @author Paolo Calfiura - ATLAS Collaboration
9
* $Id: DeclareIndexingPolicy.h,v 1.1 2003/04/07 23:58:32 calaf Exp $
10
*/
11
12
//<<<<<< INCLUDES >>>>>>
13
#ifndef DATAMODEL_TOOLS_DEFAULTINDEXINGPOLICY_H
14
# include "DataModel/tools/DefaultIndexingPolicy.h"
15
#endif
16
17
#ifndef DATAMODEL_TOOLS_FORWARDINDEXINGPOLICY_H
18
# include "DataModel/tools/ForwardIndexingPolicy.h"
19
#endif
20
21
#ifndef DATAMODEL_TOOLS_ASSOCIATIVEINDEXINGPOLICIES_H
22
# include "DataModel/tools/AssociativeIndexingPolicies.h"
23
#endif
24
25
/** \def CONTAINER_INDEXING_POLICY(CONTAINER, POLICY)
26
* @brief declare the indexing polixy to be used for a container
27
* @param CONTAINER ...
28
* @param POLICY the indexing policy for CONTAINER
29
*/
30
#define CONTAINER_INDEXING_POLICY( CONTAINER, POLICY ) \
31
template <> struct DefaultIndexingPolicy<CONTAINER> { \
32
typedef POLICY<CONTAINER> type; \
33
};
34
35
/** \def CONTAINER_IS_SEQUENCE(CONTAINER) \
36
* @brief declare that CONTAINER is a STL sequence (like vector, list)
37
*/
38
#define CONTAINER_IS_SEQUENCE( CONTAINER ) \
39
CONTAINER_INDEXING_POLICY( CONTAINER, ForwardIndexingPolicy )
40
41
/** \def CONTAINER_IS_MAP(CONTAINER) \
42
* @brief declare that CONTAINER behaves like a STL map
43
*/
44
#define CONTAINER_IS_MAP( CONTAINER ) CONTAINER_INDEXING_POLICY( CONTAINER, MapIndexingPolicy )
45
46
/** \def CONTAINER_IS_MAP(CONTAINER) \
47
* @brief declare that CONTAINER behaves like a STL set
48
*/
49
#define CONTAINER_IS_SET( CONTAINER ) CONTAINER_INDEXING_POLICY( CONTAINER, SetIndexingPolicy )
50
51
#endif
// STOREGATE_DECLAREINDEXINGPOLICY_H
8.0.0
BOSS_Source
Event
GeneratorObject
include
DataModel
DeclareIndexingPolicy.h
Generated by
1.16.1