Warnings on vc14 were eliminated
[occt.git] / src / IGESDraw / IGESDraw_ViewsVisible.hxx
CommitLineData
42cf5bc1 1// Created on: 1993-01-11
2// Created by: CKY / Contract Toubro-Larsen ( Niraj RANGWALA )
3// Copyright (c) 1993-1999 Matra Datavision
4// Copyright (c) 1999-2014 OPEN CASCADE SAS
5//
6// This file is part of Open CASCADE Technology software library.
7//
8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
13//
14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
16
17#ifndef _IGESDraw_ViewsVisible_HeaderFile
18#define _IGESDraw_ViewsVisible_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_Type.hxx>
22
23#include <IGESDraw_HArray1OfViewKindEntity.hxx>
24#include <IGESData_HArray1OfIGESEntity.hxx>
25#include <IGESData_ViewKindEntity.hxx>
26#include <Standard_Boolean.hxx>
27#include <Standard_Integer.hxx>
28class Standard_OutOfRange;
29class IGESData_ViewKindEntity;
30class IGESData_IGESEntity;
31
32
33class IGESDraw_ViewsVisible;
34DEFINE_STANDARD_HANDLE(IGESDraw_ViewsVisible, IGESData_ViewKindEntity)
35
36//! Defines IGESViewsVisible, Type <402>, Form <3>
37//! in package IGESDraw
38//!
39//! If an entity is to be displayed in more than one views,
40//! this class instance is used, which contains the Visible
41//! views and the associated entity Displays.
42class IGESDraw_ViewsVisible : public IGESData_ViewKindEntity
43{
44
45public:
46
47
48 Standard_EXPORT IGESDraw_ViewsVisible();
49
50 //! This method is used to set the fields of the class
51 //! ViewsVisible
52 //! - allViewEntities : All View kind entities
53 //! - allDisplayEntity : All entities whose display is specified
54 Standard_EXPORT void Init (const Handle(IGESDraw_HArray1OfViewKindEntity)& allViewEntities, const Handle(IGESData_HArray1OfIGESEntity)& allDisplayEntity);
55
56 //! Changes only the list of Displayed Entities (Null allowed)
57 Standard_EXPORT void InitImplied (const Handle(IGESData_HArray1OfIGESEntity)& allDisplayEntity);
58
59 //! Returns False (for a complex view)
79104795 60 Standard_EXPORT Standard_Boolean IsSingle() const Standard_OVERRIDE;
42cf5bc1 61
62 //! returns the Number of views visible
79104795 63 Standard_EXPORT Standard_Integer NbViews() const Standard_OVERRIDE;
42cf5bc1 64
65 //! returns the number of entities displayed in the Views or zero if
66 //! no Entities specified in these Views
67 Standard_EXPORT Standard_Integer NbDisplayedEntities() const;
68
69 //! returns the Index'th ViewKindEntity Entity
70 //! raises exception if Index <= 0 or Index > NbViewsVisible()
79104795 71 Standard_EXPORT Handle(IGESData_ViewKindEntity) ViewItem (const Standard_Integer Index) const Standard_OVERRIDE;
42cf5bc1 72
73 //! returns the Index'th entity whose display is being specified by
74 //! this associativity instance
75 //! raises exception if Index <= 0 or Index > NbEntityDisplayed()
76 Standard_EXPORT Handle(IGESData_IGESEntity) DisplayedEntity (const Standard_Integer Index) const;
77
78
79
80
92efcf78 81 DEFINE_STANDARD_RTTIEXT(IGESDraw_ViewsVisible,IGESData_ViewKindEntity)
42cf5bc1 82
83protected:
84
85
86
87
88private:
89
90
91 Handle(IGESDraw_HArray1OfViewKindEntity) theViewEntities;
92 Handle(IGESData_HArray1OfIGESEntity) theDisplayEntity;
93
94
95};
96
97
98
99
100
101
102
103#endif // _IGESDraw_ViewsVisible_HeaderFile