05366eb4b3541f08ce64f3ec1e69143645a667f2
[occt.git] / src / Graphic3d / Graphic3d_CStructure.hxx
1 // Copyright (c) 1995-1999 Matra Datavision
2 // Copyright (c) 1999-2014 OPEN CASCADE SAS
3 //
4 // This file is part of Open CASCADE Technology software library.
5 //
6 // This library is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU Lesser General Public License version 2.1 as published
8 // by the Free Software Foundation, with special exception defined in the file
9 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10 // distribution for complete text of the license and disclaimer of any warranty.
11 //
12 // Alternatively, this file may be used under the terms of Open CASCADE
13 // commercial license or contractual agreement.
14
15 #ifndef _Graphic3d_CStructure_HeaderFile
16 #define _Graphic3d_CStructure_HeaderFile
17
18 #include <Graphic3d_CGroup.hxx>
19 #include <Graphic3d_SequenceOfHClipPlane.hxx>
20
21 class Graphic3d_CStructure
22 {
23
24 public:
25
26   int   Id;
27   void* ptrStructure;
28
29   int   Priority;
30   int   PreviousPriority;
31
32   CALL_DEF_CONTEXTLINE     ContextLine;
33   CALL_DEF_CONTEXTFILLAREA ContextFillArea;
34   CALL_DEF_CONTEXTMARKER   ContextMarker;
35   CALL_DEF_CONTEXTTEXT     ContextText;
36
37   CALL_DEF_BOUNDBOX BoundBox;
38
39   float Transformation[4][4];
40   int   Composition;
41
42   int   ContainsFacet;
43
44   unsigned IsDeleted     : 1;
45   unsigned IsOpen        : 1;
46   unsigned IsInfinite    : 1;
47   unsigned stick         : 1;
48   unsigned highlight     : 1;
49   unsigned visible       : 1;
50   unsigned pick          : 1;
51   unsigned HLRValidation : 1;
52
53   CALL_DEF_TRANSFORM_PERSISTENCE TransformPersistence;
54
55   Graphic3d_SequenceOfHClipPlane ClipPlanes;
56 };
57
58 ///typedef Graphic3d_CStructure CALL_DEF_STRUCTURE;
59
60 const Handle(Standard_Type)& TYPE(Graphic3d_CStructure);
61
62 #endif // Graphic3d_CStructure_HeaderFile