![]() |
ATLAS Offline Software
|
#include "CaloRecGPU/BaseDefinitions.h"#include <cassert>#include <new>#include <utility>#include <type_traits>Go to the source code of this file.
Namespaces | |
| namespace | CaloRecGPU |
| Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration. | |
Macros | |
| #define | CALORECGPU_TEMP_CONCAT_HELPER_INNER(A, ...) |
| #define | CALORECGPU_TEMP_CONCAT_HELPER(A, B) |
| #define | CALORECGPU_TEMPARR_1(TEMPNAME, BASEVAR, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the 1D array accessible through BASEVAR. | |
| #define | CALORECGPU_TEMPARR_2(TEMPNAME, BASEVAR1, BASEVAR2, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be split across two 1D arrays accessible through BASEVAR1 and BASEVAR2. | |
| #define | CALORECGPU_TEMP2DARR_1(TEMPNAME, BASEVAR, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the 2D array (i. | |
| #define | CALORECGPU_TEMP2DARR_2(TEMPNAME, BASEVAR1, BASEVAR2, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will will be split across two 2D arrays (i. | |
| #define | CALORECGPU_TEMPBIGARR_1(TEMPNAME, BASEVAR, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of the 2D array (i. | |
| #define | CALORECGPU_TEMPBIGARR_2(TEMPNAME, BASEVAR1, BASEVAR2, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of two 2D arrays (i. | |
| #define | CALORECGPU_TEMPBIGARR_3(TEMPNAME, BASEVAR1, BASEVAR2, BASEVAR3, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of three 2D arrays (i. | |
| #define | CALORECGPU_TEMPCELLARR_1(TEMPNAME, BASEVAR1, BASEVAR2, BASEVAR3, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that can have up to three times NMaxClusters, split across three variables. | |
| #define | CALORECGPU_TEMPCELLARR_2(TEMPNAME, BASEVAR1, BASEVAR2, BASEVAR3, BASEVAR4, BASEVAR5, BASEVAR6, TYPE) |
The definitions for a temporary variable of type TYPE with name TEMPNAME that can have up to three times NMaxClusters, split across six variables. | |
| #define | CALORECGPU_TEMPVAR(TEMPNAME, BASEVAR, INDEX, TYPE) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the INDEX entry of an 1D array. | |
| #define | CALORECGPU_TEMPWRAPPER(TEMPNAME, WRAPPED) |
| Wraps a function in another name, for better semantics while reusing storage... | |
Functions | |
| template<class T, unsigned int ... us, class ... PtrLikes> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer (unsigned int idx, PtrLikes &&... p) |
| constexpr unsigned int | CaloRecGPU::get_extra_alignment (const unsigned int base_align, const unsigned int required) |
| template<class T> | |
| constexpr bool __host__ __device__ | CaloRecGPU::check_sufficient_size (unsigned int offset, unsigned int index) |
| template<class T, unsigned int offset, class PtrLike> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer (unsigned int idx, PtrLike &&ptr) |
| template<class T, unsigned int offset, unsigned int ... us, class PtrLike, class ... PtrLikes> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer (unsigned int idx, PtrLike &&ptr, PtrLikes &&... ps) |
| template<class T, class ... PtrLikes> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer_striped (unsigned int jdx, unsigned int idx, PtrLikes &&... ps) |
| template<class T, class ... PtrLikes> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer_stacked (unsigned int idx, PtrLikes &&... ps) |
| template<class T, class PtrLike> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer_stacked (unsigned int idx, PtrLike &&ptr) |
| template<class T, class PtrLike, class ... PtrLikes> | |
| __host__ __device__ T * | CaloRecGPU::get_laundered_pointer_stacked (unsigned int idx, PtrLike &&ptr, PtrLikes &&... ps) |
| #define CALORECGPU_TEMP2DARR_1 | ( | TEMPNAME, | |
| BASEVAR, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the 2D array (i.
e. per sampling) accessible through BASEVAR.
Definition at line 319 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMP2DARR_2 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will will be split across two 2D arrays (i.
e. per sampling) accessible through BASEVAR1 and BASEVAR2.
Definition at line 341 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMP_CONCAT_HELPER | ( | A, | |
| B ) |
Definition at line 11 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMP_CONCAT_HELPER_INNER | ( | A, | |
| ... ) |
Definition at line 10 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPARR_1 | ( | TEMPNAME, | |
| BASEVAR, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the 1D array accessible through BASEVAR.
Definition at line 269 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPARR_2 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be split across two 1D arrays accessible through BASEVAR1 and BASEVAR2.
Definition at line 291 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPBIGARR_1 | ( | TEMPNAME, | |
| BASEVAR, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of the 2D array (i.
e. per sampling) accessible through BASEVAR.
Definition at line 365 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPBIGARR_2 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of two 2D arrays (i.
e. per sampling) accessible through BASEVAR1 and BASEVAR2.
Definition at line 388 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPBIGARR_3 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| BASEVAR3, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored as a 1D array split among the entries of three 2D arrays (i.
e. per sampling) accessible through BASEVAR1, BASEVAR2 and BASEVAR3.
Definition at line 411 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPCELLARR_1 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| BASEVAR3, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that can have up to three times NMaxClusters, split across three variables.
Definition at line 432 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPCELLARR_2 | ( | TEMPNAME, | |
| BASEVAR1, | |||
| BASEVAR2, | |||
| BASEVAR3, | |||
| BASEVAR4, | |||
| BASEVAR5, | |||
| BASEVAR6, | |||
| TYPE ) |
The definitions for a temporary variable of type TYPE with name TEMPNAME that can have up to three times NMaxClusters, split across six variables.
Definition at line 462 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPVAR | ( | TEMPNAME, | |
| BASEVAR, | |||
| INDEX, | |||
| TYPE ) |
Defines a temporary variable of type TYPE with name TEMPNAME that will be stored in the INDEX entry of an 1D array.
INDEX represents the index of the array of TYPE, not the offset within the original array. Definition at line 504 of file TemporaryHelpers.h.
| #define CALORECGPU_TEMPWRAPPER | ( | TEMPNAME, | |
| WRAPPED ) |
Wraps a function in another name, for better semantics while reusing storage...
Definition at line 525 of file TemporaryHelpers.h.