0022048: Visualization, AIS_InteractiveContext - single object selection should alway...
[occt.git] / src / XmlMDataStd / XmlMDataStd.hxx
CommitLineData
42cf5bc1 1// Copyright (c) 1999-2014 OPEN CASCADE SAS
2//
3// This file is part of Open CASCADE Technology software library.
4//
5// This library is free software; you can redistribute it and/or modify it under
6// the terms of the GNU Lesser General Public License version 2.1 as published
7// by the Free Software Foundation, with special exception defined in the file
8// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9// distribution for complete text of the license and disclaimer of any warranty.
10//
11// Alternatively, this file may be used under the terms of Open CASCADE
12// commercial license or contractual agreement.
13
14#ifndef _XmlMDataStd_HeaderFile
15#define _XmlMDataStd_HeaderFile
16
17#include <Standard.hxx>
18#include <Standard_DefineAlloc.hxx>
19#include <Standard_Handle.hxx>
20
21#include <Standard_Integer.hxx>
22class XmlMDF_ADriverTable;
23class CDM_MessageDriver;
24class XmlMDataStd_NameDriver;
25class XmlMDataStd_IntegerDriver;
26class XmlMDataStd_RealDriver;
27class XmlMDataStd_IntegerArrayDriver;
28class XmlMDataStd_RealArrayDriver;
29class XmlMDataStd_ExtStringArrayDriver;
30class XmlMDataStd_UAttributeDriver;
31class XmlMDataStd_DirectoryDriver;
32class XmlMDataStd_CommentDriver;
33class XmlMDataStd_VariableDriver;
34class XmlMDataStd_ExpressionDriver;
35class XmlMDataStd_RelationDriver;
36class XmlMDataStd_NoteBookDriver;
37class XmlMDataStd_TreeNodeDriver;
38class XmlMDataStd_TickDriver;
39class XmlMDataStd_IntegerListDriver;
40class XmlMDataStd_RealListDriver;
41class XmlMDataStd_ExtStringListDriver;
42class XmlMDataStd_BooleanListDriver;
43class XmlMDataStd_ReferenceListDriver;
44class XmlMDataStd_BooleanArrayDriver;
45class XmlMDataStd_ReferenceArrayDriver;
46class XmlMDataStd_ByteArrayDriver;
47class XmlMDataStd_NamedDataDriver;
48class XmlMDataStd_AsciiStringDriver;
49class XmlMDataStd_IntPackedMapDriver;
50
51
52//! Storage and Retrieval drivers for modelling attributes.
53//! Transient attributes are defined in package TDataStd.
54class XmlMDataStd
55{
56public:
57
58 DEFINE_STANDARD_ALLOC
59
60
61 //! Adds the attribute drivers to <aDriverTable>.
62 Standard_EXPORT static void AddDrivers (const Handle(XmlMDF_ADriverTable)& aDriverTable, const Handle(CDM_MessageDriver)& anMsgDrv);
63
64 Standard_EXPORT static void SetDocumentVersion (const Standard_Integer DocVersion);
65
66 Standard_EXPORT static Standard_Integer DocumentVersion();
67
68
69
70
71protected:
72
73
74
75
76
77private:
78
79
80
81
82friend class XmlMDataStd_NameDriver;
83friend class XmlMDataStd_IntegerDriver;
84friend class XmlMDataStd_RealDriver;
85friend class XmlMDataStd_IntegerArrayDriver;
86friend class XmlMDataStd_RealArrayDriver;
87friend class XmlMDataStd_ExtStringArrayDriver;
88friend class XmlMDataStd_UAttributeDriver;
89friend class XmlMDataStd_DirectoryDriver;
90friend class XmlMDataStd_CommentDriver;
91friend class XmlMDataStd_VariableDriver;
92friend class XmlMDataStd_ExpressionDriver;
93friend class XmlMDataStd_RelationDriver;
94friend class XmlMDataStd_NoteBookDriver;
95friend class XmlMDataStd_TreeNodeDriver;
96friend class XmlMDataStd_TickDriver;
97friend class XmlMDataStd_IntegerListDriver;
98friend class XmlMDataStd_RealListDriver;
99friend class XmlMDataStd_ExtStringListDriver;
100friend class XmlMDataStd_BooleanListDriver;
101friend class XmlMDataStd_ReferenceListDriver;
102friend class XmlMDataStd_BooleanArrayDriver;
103friend class XmlMDataStd_ReferenceArrayDriver;
104friend class XmlMDataStd_ByteArrayDriver;
105friend class XmlMDataStd_NamedDataDriver;
106friend class XmlMDataStd_AsciiStringDriver;
107friend class XmlMDataStd_IntPackedMapDriver;
108
109};
110
111
112
113
114
115
116
117#endif // _XmlMDataStd_HeaderFile