| #ifndef THP_TENSOR_INC |
| #define THP_TENSOR_INC |
| |
| #define THPTensor TH_CONCAT_3(THP,Real,Tensor) |
| #define THPTensorStr TH_CONCAT_STRING_3(torch.,Real,Tensor) |
| #define THPTensorClass TH_CONCAT_3(THP,Real,TensorClass) |
| #define THPTensor_(NAME) TH_CONCAT_4(THP,Real,Tensor_,NAME) |
| |
| #define THPDoubleTensor_Check(obj) PyObject_IsInstance(obj, THPDoubleTensorClass) |
| #define THPFloatTensor_Check(obj) PyObject_IsInstance(obj, THPFloatTensorClass) |
| #define THPHalfTensor_Check(obj) PyObject_IsInstance(obj, THPHalfTensorClass) |
| #define THPLongTensor_Check(obj) PyObject_IsInstance(obj, THPLongTensorClass) |
| #define THPIntTensor_Check(obj) PyObject_IsInstance(obj, THPIntTensorClass) |
| #define THPShortTensor_Check(obj) PyObject_IsInstance(obj, THPShortTensorClass) |
| #define THPCharTensor_Check(obj) PyObject_IsInstance(obj, THPCharTensorClass) |
| #define THPByteTensor_Check(obj) PyObject_IsInstance(obj, THPByteTensorClass) |
| |
| #define THPDoubleTensor_CData(obj) (obj)->cdata |
| #define THPFloatTensor_CData(obj) (obj)->cdata |
| #define THPHalfTensor_CData(obj) (obj)->cdata |
| #define THPLongTensor_CData(obj) (obj)->cdata |
| #define THPIntTensor_CData(obj) (obj)->cdata |
| #define THPShortTensor_CData(obj) (obj)->cdata |
| #define THPCharTensor_CData(obj) (obj)->cdata |
| #define THPByteTensor_CData(obj) (obj)->cdata |
| |
| #ifdef _THP_CORE |
| #define THPTensorType TH_CONCAT_3(THP,Real,TensorType) |
| #define THPTensorBaseStr TH_CONCAT_STRING_2(Real,TensorBase) |
| #define THPTensorStateless TH_CONCAT_2(Real,TensorStateless) |
| #define THPTensorStatelessType TH_CONCAT_2(Real,TensorStatelessType) |
| #define THPTensor_stateless_(NAME) TH_CONCAT_4(THP,Real,Tensor_stateless_,NAME) |
| #endif |
| |
| // Sparse Tensors |
| #define THSPTensor TH_CONCAT_3(THSP,Real,Tensor) |
| #define THSPTensorStr TH_CONCAT_STRING_3(torch.Sparse,Real,Tensor) |
| #define THSPTensorClass TH_CONCAT_3(THSP,Real,TensorClass) |
| #define THSPTensor_(NAME) TH_CONCAT_4(THSP,Real,Tensor_,NAME) |
| |
| #define THSPDoubleTensor_Check(obj) PyObject_IsInstance(obj, THSPDoubleTensorClass) |
| #define THSPFloatTensor_Check(obj) PyObject_IsInstance(obj, THSPFloatTensorClass) |
| #define THSPLongTensor_Check(obj) PyObject_IsInstance(obj, THSPLongTensorClass) |
| #define THSPIntTensor_Check(obj) PyObject_IsInstance(obj, THSPIntTensorClass) |
| #define THSPShortTensor_Check(obj) PyObject_IsInstance(obj, THSPShortTensorClass) |
| #define THSPCharTensor_Check(obj) PyObject_IsInstance(obj, THSPCharTensorClass) |
| #define THSPByteTensor_Check(obj) PyObject_IsInstance(obj, THSPByteTensorClass) |
| |
| #define THSPDoubleTensor_CData(obj) (obj)->cdata |
| #define THSPFloatTensor_CData(obj) (obj)->cdata |
| #define THSPLongTensor_CData(obj) (obj)->cdata |
| #define THSPIntTensor_CData(obj) (obj)->cdata |
| #define THSPShortTensor_CData(obj) (obj)->cdata |
| #define THSPCharTensor_CData(obj) (obj)->cdata |
| #define THSPByteTensor_CData(obj) (obj)->cdata |
| |
| #ifdef _THP_CORE |
| #define THSPTensorType TH_CONCAT_3(THSP,Real,TensorType) |
| #define THSPTensorBaseStr TH_CONCAT_STRING_3(Sparse,Real,TensorBase) |
| #define THSPTensorStateless TH_CONCAT_3(Sparse,Real,TensorStateless) |
| #define THSPTensorStatelessType TH_CONCAT_3(Sparse,Real,TensorStatelessType) |
| #define THSPTensor_stateless_(NAME) TH_CONCAT_4(THSP,Real,Tensor_stateless_,NAME) |
| #endif |
| |
| #include "generic/Tensor.h" |
| #include <TH/THGenerateAllTypes.h> |
| |
| #include "generic/Tensor.h" |
| #include <TH/THGenerateHalfType.h> |
| |
| #endif |