0022048: Visualization, AIS_InteractiveContext - single object selection should alway...
[occt.git] / src / XCAFDoc / XCAFDoc_View.hxx
CommitLineData
2df785d7 1// Created on: 2016-10-19
2// Created by: Irina KRYLOVA
3// Copyright (c) 2016 OPEN CASCADE SAS
4//
5// This file is part of Open CASCADE Technology software library.
6//
7// This library is free software; you can redistribute it and/or modify it under
8// the terms of the GNU Lesser General Public License version 2.1 as published
9// by the Free Software Foundation, with special exception defined in the file
10// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11// distribution for complete text of the license and disclaimer of any warranty.
12//
13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
15
16#ifndef _XCAFDoc_View_HeaderFile
17#define _XCAFDoc_View_HeaderFile
18
19#include <Standard.hxx>
20#include <Standard_Type.hxx>
21
22#include <TDF_Attribute.hxx>
23class Standard_GUID;
24class TDF_Label;
25class TDF_Attribute;
26class TDF_RelocationTable;
27class XCAFView_Object;
28
b07ce12b 29// resolve name collisions with WinAPI headers
30#ifdef GetObject
31 #undef GetObject
32#endif
2df785d7 33
34class XCAFDoc_View;
35DEFINE_STANDARD_HANDLE(XCAFDoc_View, TDF_Attribute)
36
37//! attribute to store view
38class XCAFDoc_View : public TDF_Attribute
39{
40
41public:
42
43 Standard_EXPORT XCAFDoc_View();
44
45 Standard_EXPORT static const Standard_GUID& GetID();
46
47 Standard_EXPORT static Handle(XCAFDoc_View) Set (const TDF_Label& theLabel);
48
49 Standard_EXPORT const Standard_GUID& ID() const Standard_OVERRIDE;
50
51 Standard_EXPORT void Restore (const Handle(TDF_Attribute)& With) Standard_OVERRIDE;
52
53 Standard_EXPORT Handle(TDF_Attribute) NewEmpty() const Standard_OVERRIDE;
54
55 Standard_EXPORT void Paste (const Handle(TDF_Attribute)& Into, const Handle(TDF_RelocationTable)& RT) const Standard_OVERRIDE;
56
57 Standard_EXPORT void SetObject (const Handle(XCAFView_Object)& theViewObject);
58
59 Standard_EXPORT Handle(XCAFView_Object) GetObject() const;
60
61 DEFINE_STANDARD_RTTIEXT(XCAFDoc_View, TDF_Attribute)
62
63};
64
65#endif