ATLAS Offline Software
Loading...
Searching...
No Matches
TracccMeasurementDeviceConverterAlg.h File Reference
#include "AthenaBaseComps/AthReentrantAlgorithm.h"
#include "StoreGate/ReadHandleKey.h"
#include "StoreGate/WriteHandleKey.h"
#include "AthCUDAInterfaces/IStreamTool.h"
#include "AthDeviceInterfaces/IMemoryResourcesTool.h"
#include "AthDeviceInterfaces/ICopiesTool.h"
#include "xAODInDetMeasurement/PixelClusterContainer.h"
#include "xAODInDetMeasurement/StripClusterContainer.h"
#include "GaudiKernel/ToolHandle.h"
#include "ActsGPUEvent/TracccDetectorConditionsDescription.h"
#include "ActsGPUEvent/TracccDetectorGeometryDescription.h"
#include "ActsGPUEvent/TracccMeasurementCollection.h"
#include "src/DeviceMeasurementContainers.h"
#include <traccc/edm/measurement_collection.hpp>
#include <traccc/geometry/detector.hpp>
#include <vecmem/memory/memory_resource.hpp>
#include <traccc/geometry/detector_conditions_description.hpp>
#include <traccc/geometry/detector_buffer.hpp>
#include <cuda_runtime_api.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ActsTrk::TracccMeasurementDeviceConverterAlg
 Algorithm converting traccc measurements (device buffer) to xAOD clusters (host container). More...

Namespaces

namespace  ActsTrk
 The AlignStoreProviderAlg loads the rigid alignment corrections and pipes them through the readout geometry to cache the final transformations of the sensor surfaces associated to one particular detector technology (Pixel, Sct, etc.).

Macros

#define CUDA_ERROR_CHECK(EXP)
 Helper macro used for checking cudaError_t type return values.

Functions

StatusCode ActsTrk::convertMeasurementsOnGPU (cudaStream_t stream, vecmem::memory_resource &mr, vecmem::copy const &copy, traccc::itk_detector::view_type const &detector_view, traccc::detector_conditions_description::const_view const &detector_conditions_view, traccc::edm::measurement_collection::const_view::size_type nb_measurements, const traccc::edm::measurement_collection::const_view &input, DevicePixelMeasurementContainer::view::size_type &output_n_pixels, DeviceStripMeasurementContainer::view::size_type &output_n_strips, std::unique_ptr< DevicePixelMeasurementContainer::buffer > &output_pixel_meas, std::unique_ptr< DeviceStripMeasurementContainer::buffer > &output_strip_meas)

Macro Definition Documentation

◆ CUDA_ERROR_CHECK

#define CUDA_ERROR_CHECK ( EXP)
Value:
do { \
cudaError_t errorCode = EXP; \
if (errorCode != cudaSuccess) { \
errorcheck::ReportMessage(MSG::ERROR, ERRORCHECK_ARGS, \
__PRETTY_FUNCTION__, \
StatusCode::FAILURE) \
.msgstream() \
<< "Failed to execute: " << #EXP << " (" \
<< cudaGetErrorString(errorCode) << ")"; \
return StatusCode::FAILURE; \
} \
} while (false)

Helper macro used for checking cudaError_t type return values.

Definition at line 30 of file TracccMeasurementDeviceConverterAlg.h.

30#define CUDA_ERROR_CHECK(EXP) \
31 do { \
32 cudaError_t errorCode = EXP; \
33 if (errorCode != cudaSuccess) { \
34 errorcheck::ReportMessage(MSG::ERROR, ERRORCHECK_ARGS, \
35 __PRETTY_FUNCTION__, \
36 StatusCode::FAILURE) \
37 .msgstream() \
38 << "Failed to execute: " << #EXP << " (" \
39 << cudaGetErrorString(errorCode) << ")"; \
40 return StatusCode::FAILURE; \
41 } \
42 } while (false)