CFx SDK Documentation  2023 SP0
GsBackground.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2017, Open Design Alliance (the "Alliance").
3 // All rights reserved.
4 //
5 // This software and its documentation and related materials are owned by
6 // the Alliance. The software may only be incorporated into application
7 // programs owned by members of the Alliance, subject to a signed
8 // Membership Agreement and Supplemental Software License Agreement with the
9 // Alliance. The structure and organization of this software are the valuable
10 // trade secrets of the Alliance and its suppliers. The software is also
11 // protected by copyright law and international treaty provisions. Application
12 // programs incorporating this software must include the following statement
13 // with their copyright notices:
14 //
15 // This application incorporates Teigha(R) software pursuant to a license
16 // agreement with Open Design Alliance.
17 // Teigha(R) Copyright (C) 2002-2017 by Open Design Alliance.
18 // All rights reserved.
19 //
20 // By use of this software, its documentation or related materials, you
21 // acknowledge and accept the above terms.
23 
24 #ifndef _ODGSBACKGROUND_H_INCLUDED_
25 #define _ODGSBACKGROUND_H_INCLUDED_
26 
27 #include "RxObject.h"
28 
29 class OdGsBaseVectorizer;
32 class OdGiDrawable;
33 
34 #include "TD_PackPush.h"
35 
41 {
42  public:
44  const OdGiDrawable *pDrawable,
45  OdGiBackgroundTraitsData* pBackgroundTraits,
47 };
48 
54  , public OdGsNestedBackground
55 {
56 public:
58 
60  {
61  kSolidBackground = 0,
62  kGradientBackground = 1,
63  kImageBackground = 2,
64  kGroundPlaneBackground = 3,
65  kSkyBackground = 4,
66  kIBLBackground = 5
67  };
68 
69  virtual BackgroundType type() const = 0;
70 
71  virtual void display(OdGsBaseVectorizer& view,
72  const OdGiDrawable *pDrawable,
73  OdGiBackgroundTraitsData* pBackgroundTraits,
75 
77  const OdGiDrawable *pDrawable,
78  OdGiBackgroundTraitsData* pBackgroundTraits,
80  {
81  display(view, pDrawable, pBackgroundTraits, pdro);
82  }
83 
84  virtual void setNestedBackground(OdGsNestedBackground * /*pNestedBackground*/) { }
85  virtual OdGsNestedBackground *getNestedBackground() const { return NULL; }
86 
88 };
89 
94 
95 #include "TD_PackPop.h"
96 
97 #endif // _ODGSBACKGROUND_H_INCLUDED_
OdSmartPtr< OdGsBackground > OdGsBackgroundPtr
Definition: GsBackground.h:93
#define GS_TOOLKIT_EXPORT
Definition: GsExport.h:37
#define NULL
Definition: GsProperties.h:177
static OdSmartPtr< OdGsBackground > createObject(BackgroundType type)
virtual void nestedBackgroundDisplay(OdGsBaseVectorizer &view, const OdGiDrawable *pDrawable, OdGiBackgroundTraitsData *pBackgroundTraits, OdGsPropertiesDirectRenderOutput *pdro=NULL)
Definition: GsBackground.h:76
virtual BackgroundType type() const =0
virtual void display(OdGsBaseVectorizer &view, const OdGiDrawable *pDrawable, OdGiBackgroundTraitsData *pBackgroundTraits, OdGsPropertiesDirectRenderOutput *pdro=NULL)=0
virtual void setNestedBackground(OdGsNestedBackground *)
Definition: GsBackground.h:84
ODRX_DECLARE_MEMBERS(OdGsBackground)
virtual OdGsNestedBackground * getNestedBackground() const
Definition: GsBackground.h:85
virtual void nestedBackgroundDisplay(OdGsBaseVectorizer &view, const OdGiDrawable *pDrawable, OdGiBackgroundTraitsData *pBackgroundTraits, OdGsPropertiesDirectRenderOutput *pdro=NULL)=0
GLuint GLsizei GLsizei GLint GLenum * type
Definition: gles2_ext.h:274