ATLAS Offline Software
Loading...
Searching...
No Matches
IIdentifiableCont.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5
6#ifndef EVENTCONTAINERS_IIDENTIFIABLECONT_H
7#define EVENTCONTAINERS_IIDENTIFIABLECONT_H
9#include <memory>
10
11namespace EventContainers {
12template <class T>
14
15public:
16 virtual const T* indexFindPtr( IdentifierHash hashId ) const = 0;
17
18 virtual std::vector<IdentifierHash> GetAllCurrentHashes() const =0;
19
20 virtual StatusCode addOrDelete(std::unique_ptr<T> ptr, IdentifierHash hashId) =0;
21 virtual StatusCode addOrDelete(std::unique_ptr<const T> ptr, IdentifierHash hashId) =0;
22
23 virtual size_t fullSize() const =0;
24
25 virtual size_t numberOfCollections() const =0;
26
27 virtual bool tryAddFromCache(IdentifierHash hashId) = 0;
28
29 virtual bool hasExternalCache() const =0;
30
31 virtual StatusCode naughtyRetrieve(IdentifierHash hashId, T* &collToRetrieve)const =0;
32
33 virtual StatusCode addCollection(const T* coll, IdentifierHash hashId) =0;
34
35 virtual void cleanup() = 0;
36};
37}
38#endif
39
virtual bool hasExternalCache() const =0
virtual const T * indexFindPtr(IdentifierHash hashId) const =0
virtual StatusCode addCollection(const T *coll, IdentifierHash hashId)=0
virtual StatusCode naughtyRetrieve(IdentifierHash hashId, T *&collToRetrieve) const =0
virtual std::vector< IdentifierHash > GetAllCurrentHashes() const =0
virtual size_t numberOfCollections() const =0
virtual StatusCode addOrDelete(std::unique_ptr< T > ptr, IdentifierHash hashId)=0
virtual StatusCode addOrDelete(std::unique_ptr< const T > ptr, IdentifierHash hashId)=0
virtual size_t fullSize() const =0
virtual bool tryAddFromCache(IdentifierHash hashId)=0
This is a "hash" representation of an Identifier.