diff options
Diffstat (limited to 'intern/opensubdiv/opensubdiv_device_context_cuda.h')
-rw-r--r-- | intern/opensubdiv/opensubdiv_device_context_cuda.h | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/intern/opensubdiv/opensubdiv_device_context_cuda.h b/intern/opensubdiv/opensubdiv_device_context_cuda.h new file mode 100644 index 00000000000..eb30b76f507 --- /dev/null +++ b/intern/opensubdiv/opensubdiv_device_context_cuda.h @@ -0,0 +1,54 @@ +/* + * Adopted from OpenSubdiv with the following license: + * + * Copyright 2013 Pixar + * + * Licensed under the Apache License, Version 2.0 (the "Apache License") + * with the following modification; you may not use this file except in + * compliance with the Apache License and the following modification to it: + * Section 6. Trademarks. is deleted and replaced with: + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor + * and its affiliates, except as required to comply with Section 4(c) of + * the License and to reproduce the content of the NOTICE file. + * + * You may obtain a copy of the Apache License at + * + * http: //www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Apache License with the above modification is + * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the Apache License for the specific + * language governing permissions and limitations under the Apache License. + * + */ + +#ifndef __OPENSUBDIV_DEV_CE_CONTEXT_CUDA_H__ +#define __OPENSUBDIV_DEV_CE_CONTEXT_CUDA_H__ + +struct ID3D11Device; + +class CudaDeviceContext { +public: + CudaDeviceContext(); + ~CudaDeviceContext(); + + static bool HAS_CUDA_VERSION_4_0(); + + /* Initialze cuda device from the current GL context. */ + bool Initialize(); + + /* Initialze cuda device from the ID3D11Device/ */ + bool Initialize(ID3D11Device *device); + + /* Returns true if the cuda device has already been initialized. */ + bool IsInitialized() const { + return _initialized; + } +private: + bool _initialized; +}; + +#endif /* __OPENSUBDIV_DEV_CE_CONTEXT_OPENCL_H__ */ |