ATLAS Offline Software
Loading...
Searching...
No Matches
Control/AthLinks/AthLinks/exceptions.h
Go to the documentation of this file.
1// This file's extension implies that it's C, but it's really -*- C++ -*-.
2/*
3 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
4*/
11
12
13#ifndef ATHLINKS_EXCEPTIONS_H
14#define ATHLINKS_EXCEPTIONS_H
15
16
17#include "SGCore/sgkey_t.h"
18#include "GaudiKernel/ClassID.h"
19#include <stdexcept>
20
21
22namespace SG {
23
24
36 : public std::runtime_error
37{
38public:
43 ExcPointerNotInSG (const void* pointer);
44};
45
46
58 : public std::runtime_error
59{
60public:
66 ExcCLIDMismatch (CLID obj_clid, CLID link_clid);
67};
68
69
77 : public std::runtime_error
78{
79public:
86 ExcInvalidLink (CLID clid, const std::string& key, SG::sgkey_t sgkey);
87};
88
89
96[[noreturn]]
97void throwExcInvalidLink (CLID clid,
98 const std::string& key,
99 SG::sgkey_t sgkey);
100
101
110 : public std::runtime_error
111{
112public:
119 ExcBadForwardLink (size_t index, size_t size, const std::string& name);
120};
121
122
129[[noreturn]]
130void throwExcBadForwardLink (size_t index, size_t size, const std::string& name);
131
132
141 : public std::runtime_error
142{
143public:
148 ExcElementNotFound (const std::string& where);
149};
150
151
156[[noreturn]]
157void throwExcElementNotFound (const char* where);
158
159
162
163
164
171 : public std::runtime_error
172{
173public:
178 ExcInvalidIndex (const std::string& where);
179};
180
181
186[[noreturn]]
187void throwExcInvalidIndex (const char* where);
188
189
198 : public std::runtime_error
199{
200public:
205 ExcIndexNotFound (const std::string& where);
206};
207
208
213[[noreturn]]
214void throwExcIndexNotFound (const char* where);
215
216
227 : public std::runtime_error
228{
229public:
234};
235
236
240[[noreturn]]
242
243
250 : public std::runtime_error
251{
252public:
257};
258
259
263[[noreturn]]
265
266
271 : public std::runtime_error
272{
273public:
281 const std::string& key,
282 SG::sgkey_t sgkey);
283};
284
285
293 : public std::runtime_error
294{
295public:
302 ExcBadThinning (CLID clid,
303 const std::string& key,
304 SG::sgkey_t sgkey);
305};
306
307
314[[noreturn]]
315void throwExcBadThinning (CLID clid,
316 const std::string& key,
317 SG::sgkey_t sgkey);
318
319
320} // namespace SG
321
322
323#endif // not ATHLINKS_EXCEPTIONS_H
uint32_t CLID
The Class ID type.
ExcBadThinning(CLID clid, const std::string &key, SG::sgkey_t sgkey)
Constructor.
ExcCLIDMismatch(CLID obj_clid, CLID link_clid)
Constructor.
ExcConstStorable(CLID clid, const std::string &key, SG::sgkey_t sgkey)
Constructor.
Exception — element not found.
ExcElementNotFound(const std::string &where)
Constructor.
ExcIndexNotFound(const std::string &where)
Constructor.
ExcInvalidIndex(const std::string &where)
Constructor.
ExcPointerNotInSG(const void *pointer)
Constructor.
Forward declaration.
void throwExcElementNotFound(const char *where)
Throw a SG::ExcElementNotFound exception.
void throwExcBadToTransient()
Throw a SG::ExcBadToTransient exception.
ExcElementNotFound maybe_thinning_error
Backwards compatibility.
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
Definition sgkey_t.h:32
void throwExcInvalidLink(CLID clid, const std::string &key, SG::sgkey_t sgkey)
Throw a SG::ExcInvalidLink exception.
void throwExcIncomparableEL()
Throw a SG::IncomparableEL exception.
void throwExcBadThinning(CLID clid, const std::string &key, SG::sgkey_t sgkey)
Throw a SG::ExcBadThinning exception.
void throwExcIndexNotFound(const char *where)
Throw a SG::ExcIndexNotFound exception.
void throwExcInvalidIndex(const char *where)
Throw a SG::ExcInvalidIndex exception.
void throwExcBadForwardLink(size_t index, size_t size, const std::string &name)
Throw a SG::ExcBadForwardLink exception.
Definition index.py:1