File indexing completed on 2025-01-18 10:04:21
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 #ifndef _OpenGl_DepthPeeling_HeaderFile
0016 #define _OpenGl_DepthPeeling_HeaderFile
0017
0018 #include <OpenGl_FrameBuffer.hxx>
0019 #include <OpenGl_NamedResource.hxx>
0020
0021
0022 class OpenGl_DepthPeeling : public OpenGl_NamedResource
0023 {
0024 DEFINE_STANDARD_RTTIEXT(OpenGl_DepthPeeling, OpenGl_NamedResource)
0025 public:
0026
0027
0028 Standard_EXPORT OpenGl_DepthPeeling();
0029
0030
0031 Standard_EXPORT virtual ~OpenGl_DepthPeeling();
0032
0033
0034 Standard_EXPORT virtual void Release (OpenGl_Context* theGlCtx) Standard_OVERRIDE;
0035
0036
0037 Standard_EXPORT virtual Standard_Size EstimatedDataSize() const Standard_OVERRIDE;
0038
0039
0040
0041 Standard_EXPORT void AttachDepthTexture (const Handle(OpenGl_Context)& theCtx,
0042 const Handle(OpenGl_Texture)& theDepthStencilTexture);
0043
0044
0045
0046 Standard_EXPORT void DetachDepthTexture (const Handle(OpenGl_Context)& theCtx);
0047
0048
0049 const Handle(OpenGl_FrameBuffer)* DepthPeelFbosOit() const { return myDepthPeelFbosOit; }
0050
0051
0052 const Handle(OpenGl_FrameBuffer)* FrontBackColorFbosOit() const { return myFrontBackColorFbosOit; }
0053
0054
0055 const Handle(OpenGl_FrameBuffer)& BlendBackFboOit() const { return myBlendBackFboOit; }
0056
0057 private:
0058
0059 Handle(OpenGl_FrameBuffer) myDepthPeelFbosOit[2];
0060 Handle(OpenGl_FrameBuffer) myFrontBackColorFbosOit[2];
0061 Handle(OpenGl_FrameBuffer) myBlendBackFboOit;
0062
0063 };
0064
0065 #endif