Project
Loading...
Searching...
No Matches
GPUReconstructionKernelMacros.h File Reference
#include "GPUDefMacros.h"

Go to the source code of this file.

Macros

#define GPUCA_M_KRNL_TEMPLATE_B(a, b, ...)   a, a::b
 
#define GPUCA_M_KRNL_TEMPLATE_A(...)   GPUCA_M_KRNL_TEMPLATE_B(__VA_ARGS__, defaultKernel)
 
#define GPUCA_M_KRNL_TEMPLATE(...)   GPUCA_M_KRNL_TEMPLATE_A(GPUCA_M_STRIP(__VA_ARGS__))
 
#define GPUCA_M_KRNL_NUM_B(a, b, ...)   a::b
 
#define GPUCA_M_KRNL_NUM_A(...)   GPUCA_M_KRNL_NUM_B(__VA_ARGS__, defaultKernel)
 
#define GPUCA_M_KRNL_NUM(...)   GPUCA_M_KRNL_NUM_A(GPUCA_M_STRIP(__VA_ARGS__))
 
#define GPUCA_M_KRNL_NAME_B0(a, b, ...)   GPUCA_M_CAT3(a, _, b)
 
#define GPUCA_M_KRNL_NAME_B1(a)   a
 
#define GPUCA_M_KRNL_NAME_A(...)   GPUCA_M_CAT(GPUCA_M_KRNL_NAME_B, GPUCA_M_SINGLEOPT(__VA_ARGS__))(__VA_ARGS__)
 
#define GPUCA_M_KRNL_NAME(...)   GPUCA_M_KRNL_NAME_A(GPUCA_M_STRIP(__VA_ARGS__))
 
#define GPUCA_KRNL_LB(x_class, x_attributes, ...)   GPUCA_KRNL(x_class, (GPUCA_M_STRIP(x_attributes), REG, (GPUCA_M_CAT(GPUCA_LB_, GPUCA_M_KRNL_NAME(x_class)))), __VA_ARGS__)
 

Detailed Description

Author
David Rohr

Definition in file GPUReconstructionKernelMacros.h.

Macro Definition Documentation

◆ GPUCA_KRNL_LB

#define GPUCA_KRNL_LB (   x_class,
  x_attributes,
  ... 
)    GPUCA_KRNL(x_class, (GPUCA_M_STRIP(x_attributes), REG, (GPUCA_M_CAT(GPUCA_LB_, GPUCA_M_KRNL_NAME(x_class)))), __VA_ARGS__)

Definition at line 144 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NAME

#define GPUCA_M_KRNL_NAME (   ...)    GPUCA_M_KRNL_NAME_A(GPUCA_M_STRIP(__VA_ARGS__))

Definition at line 32 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NAME_A

#define GPUCA_M_KRNL_NAME_A (   ...)    GPUCA_M_CAT(GPUCA_M_KRNL_NAME_B, GPUCA_M_SINGLEOPT(__VA_ARGS__))(__VA_ARGS__)

Definition at line 31 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NAME_B0

#define GPUCA_M_KRNL_NAME_B0 (   a,
  b,
  ... 
)    GPUCA_M_CAT3(a, _, b)

Definition at line 29 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NAME_B1

#define GPUCA_M_KRNL_NAME_B1 (   a)    a

Definition at line 30 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NUM

#define GPUCA_M_KRNL_NUM (   ...)    GPUCA_M_KRNL_NUM_A(GPUCA_M_STRIP(__VA_ARGS__))

Definition at line 27 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NUM_A

#define GPUCA_M_KRNL_NUM_A (   ...)    GPUCA_M_KRNL_NUM_B(__VA_ARGS__, defaultKernel)

Definition at line 26 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_NUM_B

#define GPUCA_M_KRNL_NUM_B (   a,
  b,
  ... 
)    a::b

Definition at line 25 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_TEMPLATE

#define GPUCA_M_KRNL_TEMPLATE (   ...)    GPUCA_M_KRNL_TEMPLATE_A(GPUCA_M_STRIP(__VA_ARGS__))

Definition at line 23 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_TEMPLATE_A

#define GPUCA_M_KRNL_TEMPLATE_A (   ...)    GPUCA_M_KRNL_TEMPLATE_B(__VA_ARGS__, defaultKernel)

Definition at line 22 of file GPUReconstructionKernelMacros.h.

◆ GPUCA_M_KRNL_TEMPLATE_B

#define GPUCA_M_KRNL_TEMPLATE_B (   a,
  b,
  ... 
)    a, a::b

Definition at line 21 of file GPUReconstructionKernelMacros.h.