 {# pointer *CUdevprop as ^ foreign -> CUDevProp nocode #}
 
 
---
--- Properties of the compute device (internal helper)
+#if CUDA_VERSION < 5000
+--
+-- Properties of the compute device (internal helper).
+-- Replaced by cuDeviceGetAttribute in CUDA-5.0 and later.
 --
 data CUDevProp = CUDevProp
   {

  { alloca-   `Int'    peekIntConv*
  , alloca-   `Int'    peekIntConv*
  , useDevice `Device'              } -> `Status' cToEnum #}


-- |
-- Return a device handle
--
{-# INLINEABLE device #-}
device :: Int -> IO Device



-- |
-- Return the selected attribute for the given device.
--
-- <http://docs.nvidia.com/cuda/cuda-driver-api/group__CUDA__DEVICE.html#group__CUDA__DEVICE_1g9c3e1414f0ad901d3278a4d6645fc266>
--
{-# INLINEABLE attribute #-}
attribute :: Device -> DeviceAttribute -> IO Int
