Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-10-17 08:35:27

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #pragma once
0010 
0011 // HIP include(s).
0012 #include <hip/hip_runtime_api.h>
0013 
0014 // System include(s).
0015 #include <stdexcept>
0016 #include <string>
0017 
0018 // Helper macro for checking the return value of HIP function calls
0019 #define HIP_ERROR_CHECK(EXP)                                             \
0020   do {                                                                   \
0021     const hipError_t errorCode = EXP;                                    \
0022     if (errorCode != hipSuccess) {                                       \
0023       throw std::runtime_error(std::string("Failed to run " #EXP " (") + \
0024                                hipGetErrorString(errorCode) + ")");      \
0025     }                                                                    \
0026   } while (false)