BOSS
8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/GeneratorObject/include/DataModel/tools/GenerateIndexingPolicy.h
Go to the documentation of this file.
1
/***************************************************************************
2
type generator that associates a known container with an IndexingPolicy.
3
Used by ElementLink
4
----------------------------------------------------------------
5
ATLAS Collaboration
6
***************************************************************************/
7
8
// $Id: GenerateIndexingPolicy.h,v 1.2 2003/04/16 01:32:53 calaf Exp $
9
10
#ifndef DATAMODEL_TOOLS_GENERATEINDEXINGPOLICY_H
11
#define DATAMODEL_TOOLS_GENERATEINDEXINGPOLICY_H
12
13
#ifndef BOOST_CONFIG_HPP
14
# include <boost/config.hpp>
15
#endif
16
17
#ifndef DATAMODEL_TOOLS_FORWARDINDEXINGPOLICY_H
18
# include "DataModel/tools/ForwardIndexingPolicy.h"
19
#endif
20
21
#ifndef DATAMODEL_TOOLS_DEFAULTINDEXINGPOLICY_H
22
# include "DataModel/tools/DefaultIndexingPolicy.h"
23
#endif
24
25
#ifndef DATAMODEL_TOOLS_ISSTLSEQUENCE_H
26
# include "DataModel/tools/IsSTLSequence.h"
27
#endif
28
29
namespace
SG
{
30
template
<
class
CONTAINER>
struct
GenerateIndexingPolicy
{
31
private
:
32
typedef
IsSTLSequence<CONTAINER>
_isSTLSequence;
33
34
BOOST_STATIC_CONSTANT(
bool
, isSTLSequence = _isSTLSequence::value );
35
36
public
:
37
typedef
typename
boost::detail::if_true<( isSTLSequence )>::template then<
38
ForwardIndexingPolicy<CONTAINER>
,
39
// else
40
typename
DefaultIndexingPolicy<CONTAINER>::type
>
::type
type
;
41
};
42
}
// namespace SG
43
44
#endif
// TOOLS_GENERATEINDEXINGPOLICIES_H
ForwardIndexingPolicy
IndexingPolicy for STL containers using forward iterators (e.g. vector, list).
Definition
Event/GeneratorObject/include/DataModel/tools/ForwardIndexingPolicy.h:36
SG
Definition
Event/GeneratorObject/include/DataModel/OwnershipPolicy.h:11
DefaultIndexingPolicy::type
ERROR_PLEASE_ADD_ONE_OF_THE_PREDEFINED_POLICY_INCLUDE_FILES_OR_DEFINE_A_DEFAULT_INDEXING_POLICY_FOR_THIS_TYPE< STORABLE > type
Definition
Event/GeneratorObject/include/DataModel/tools/DefaultIndexingPolicy.h:23
SG::GenerateIndexingPolicy
Definition
Event/GeneratorObject/include/DataModel/tools/GenerateIndexingPolicy.h:30
SG::GenerateIndexingPolicy::type
boost::detail::if_true<(isSTLSequence)>::template then< ForwardIndexingPolicy< CONTAINER >, typenameDefaultIndexingPolicy< CONTAINER >::type >::type type
Definition
Event/GeneratorObject/include/DataModel/tools/GenerateIndexingPolicy.h:40
SG::IsSTLSequence
Definition
Event/GeneratorObject/include/DataModel/tools/IsSTLSequence.h:51
8.0.0
BOSS_Source
Event
GeneratorObject
include
DataModel
tools
GenerateIndexingPolicy.h
Generated by
1.16.1