GteComputeProgram.h
Go to the documentation of this file.
1 // David Eberly, Geometric Tools, Redmond WA 98052
2 // Copyright (c) 1998-2017
3 // Distributed under the Boost Software License, Version 1.0.
4 // http://www.boost.org/LICENSE_1_0.txt
5 // http://www.geometrictools.com/License/Boost/LICENSE_1_0.txt
6 // File Version: 3.0.0 (2016/06/19)
7 
8 #pragma once
9 
11 
12 namespace gte
13 {
14 
16 {
17 public:
18  // HLSL uses the class as is. GLSL derives from the class to store
19  // the shader and program handles.
20  virtual ~ComputeProgram();
22 
23  // Member access.
24  inline std::shared_ptr<ComputeShader> const& GetCShader() const;
25 
26 public:
27  // INTERNAL USE ONLY. This is used during factory creation of shaders
28  // and programs. The graphics engines need only const-access to the
29  // shader objects.
30  inline void SetCShader(std::shared_ptr<ComputeShader> const& shader);
31 
32 private:
33  std::shared_ptr<ComputeShader> mCShader;
34 };
35 
36 
37 inline std::shared_ptr<ComputeShader> const& ComputeProgram::GetCShader()
38  const
39 {
40  return mCShader;
41 }
42 
44  std::shared_ptr<ComputeShader> const& shader)
45 {
46  mCShader = shader;
47 }
48 
49 
50 }
std::shared_ptr< ComputeShader > mCShader
void SetCShader(std::shared_ptr< ComputeShader > const &shader)
GLuint shader
Definition: glcorearb.h:780
#define GTE_IMPEXP
Definition: GTEngineDEF.h:63
std::shared_ptr< ComputeShader > const & GetCShader() const


geometric_tools_engine
Author(s): Yijiang Huang
autogenerated on Thu Jul 18 2019 03:59:59