1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-05-21 10:55:33 +03:00

0031124: Configuration - linker errors when building with CLang on Windows

Standard_EXPORT is added in declaration of virtual methods where it was missing, to allow creation of sub-classes in other DLLs.
In some classes in OpenGl package Standard_EXPORT is added for all methods to make these classes usable in other DLLs.
This commit is contained in:
abv 2019-11-02 11:10:47 +03:00
parent 1bd04b5a02
commit b31fbc832d
21 changed files with 136 additions and 200 deletions

View File

@ -65,7 +65,7 @@ public:
//! Returns true if the Interactive Objects in the relation //! Returns true if the Interactive Objects in the relation
//! are movable. //! are movable.
virtual Standard_Boolean IsMovable() const Standard_OVERRIDE; virtual Standard_Boolean IsMovable() const Standard_OVERRIDE { return Standard_True; }
//! computes the presentation according to a point of view //! computes the presentation according to a point of view
//! given by <aProjector>. //! given by <aProjector>.
@ -109,6 +109,4 @@ private:
}; };
#include <AIS_FixRelation.lxx>
#endif // _AIS_FixRelation_HeaderFile #endif // _AIS_FixRelation_HeaderFile

View File

@ -1,24 +0,0 @@
// Created on: 1997-02-28
// Created by: Jean-Pierre COMBE
// Copyright (c) 1997-1999 Matra Datavision
// Copyright (c) 1999-2014 OPEN CASCADE SAS
//
// This file is part of Open CASCADE Technology software library.
//
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
//=======================================================================
//function : IsMovable
//purpose :
//=======================================================================
inline Standard_Boolean AIS_FixRelation::IsMovable() const
{
return Standard_True;
}

View File

@ -58,7 +58,7 @@ public:
void ClearUsers() { myUsers.Clear(); } void ClearUsers() { myUsers.Clear(); }
//! Returns true if the interactive object is movable. //! Returns true if the interactive object is movable.
virtual Standard_Boolean IsMovable() const Standard_OVERRIDE; virtual Standard_Boolean IsMovable() const Standard_OVERRIDE { return Standard_True; }
//! computes the presentation according to a point of view //! computes the presentation according to a point of view
//! given by <aProjector>. //! given by <aProjector>.
@ -134,11 +134,4 @@ private:
}; };
#include <AIS_IdenticRelation.lxx>
#endif // _AIS_IdenticRelation_HeaderFile #endif // _AIS_IdenticRelation_HeaderFile

View File

@ -1,24 +0,0 @@
// Created on: 1997-03-04
// Created by: Jean-Pierre COMBE
// Copyright (c) 1997-1999 Matra Datavision
// Copyright (c) 1999-2014 OPEN CASCADE SAS
//
// This file is part of Open CASCADE Technology software library.
//
// This library is free software; you can redistribute it and/or modify it under
// the terms of the GNU Lesser General Public License version 2.1 as published
// by the Free Software Foundation, with special exception defined in the file
// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
// distribution for complete text of the license and disclaimer of any warranty.
//
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
//=======================================================================
//function : IsMovable
//purpose :
//=======================================================================
inline Standard_Boolean AIS_IdenticRelation::IsMovable() const
{
return Standard_True;
}

View File

@ -69,14 +69,12 @@ AIS_ExclusionFilter.hxx
AIS_ExclusionFilter.lxx AIS_ExclusionFilter.lxx
AIS_FixRelation.cxx AIS_FixRelation.cxx
AIS_FixRelation.hxx AIS_FixRelation.hxx
AIS_FixRelation.lxx
AIS_GlobalStatus.cxx AIS_GlobalStatus.cxx
AIS_GlobalStatus.hxx AIS_GlobalStatus.hxx
AIS_GraphicTool.cxx AIS_GraphicTool.cxx
AIS_GraphicTool.hxx AIS_GraphicTool.hxx
AIS_IdenticRelation.cxx AIS_IdenticRelation.cxx
AIS_IdenticRelation.hxx AIS_IdenticRelation.hxx
AIS_IdenticRelation.lxx
AIS_IndexedDataMapOfOwnerPrs.hxx AIS_IndexedDataMapOfOwnerPrs.hxx
AIS_InteractiveContext.cxx AIS_InteractiveContext.cxx
AIS_InteractiveContext.hxx AIS_InteractiveContext.hxx

View File

@ -96,18 +96,18 @@ public:
protected: protected:
//! Filter out correct adjacent mesh elements. //! Filter out correct adjacent mesh elements.
virtual BRepExtrema_ElementFilter::FilterResult PreCheckElements (const Standard_Integer theIndex1, Standard_EXPORT virtual BRepExtrema_ElementFilter::FilterResult PreCheckElements (const Standard_Integer theIndex1,
const Standard_Integer theIndex2); const Standard_Integer theIndex2);
//! Checks if the given triangles have only single common vertex. //! Checks if the given triangles have only single common vertex.
BRepExtrema_ElementFilter::FilterResult isRegularSharedVertex (const BVH_Vec3d& theSharedVert, Standard_EXPORT BRepExtrema_ElementFilter::FilterResult isRegularSharedVertex (const BVH_Vec3d& theSharedVert,
const BVH_Vec3d& theTrng1Vtxs1, const BVH_Vec3d& theTrng1Vtxs1,
const BVH_Vec3d& theTrng1Vtxs2, const BVH_Vec3d& theTrng1Vtxs2,
const BVH_Vec3d& theTrng2Vtxs1, const BVH_Vec3d& theTrng2Vtxs1,
const BVH_Vec3d& theTrng2Vtxs2); const BVH_Vec3d& theTrng2Vtxs2);
//! Checks if the given triangles have only single common edge. //! Checks if the given triangles have only single common edge.
BRepExtrema_ElementFilter::FilterResult isRegularSharedEdge (const BVH_Vec3d& theTrng1Vtxs0, Standard_EXPORT BRepExtrema_ElementFilter::FilterResult isRegularSharedEdge (const BVH_Vec3d& theTrng1Vtxs0,
const BVH_Vec3d& theTrng1Vtxs1, const BVH_Vec3d& theTrng1Vtxs1,
const BVH_Vec3d& theTrng1Vtxs2, const BVH_Vec3d& theTrng1Vtxs2,
const BVH_Vec3d& theTrng2Vtxs2); const BVH_Vec3d& theTrng2Vtxs2);

View File

@ -78,14 +78,10 @@ public:
protected: protected:
//! Computes parametric tolerance taking length along U and V into account. //! Computes parametric tolerance taking length along U and V into account.
virtual void computeTolerance( Standard_EXPORT virtual void computeTolerance (const Standard_Real theLenU, const Standard_Real theLenV);
const Standard_Real theLenU,
const Standard_Real theLenV);
//! Computes parametric delta taking length along U and V and value of tolerance into account. //! Computes parametric delta taking length along U and V and value of tolerance into account.
virtual void computeDelta( Standard_EXPORT virtual void computeDelta (const Standard_Real theLengthU, const Standard_Real theLengthV);
const Standard_Real theLengthU,
const Standard_Real theLengthV);
public: public:
//! Returns face model. //! Returns face model.

View File

@ -33,35 +33,35 @@ protected:
public: public:
//! Creates an empty primitive set for BVH clipping. //! Creates an empty primitive set for BVH clipping.
Graphic3d_BvhCStructureSet(); Standard_EXPORT Graphic3d_BvhCStructureSet();
//! Returns total number of structures. //! Returns total number of structures.
virtual Standard_Integer Size() const Standard_OVERRIDE; Standard_EXPORT virtual Standard_Integer Size() const Standard_OVERRIDE;
//! Returns AABB of the structure. //! Returns AABB of the structure.
virtual Graphic3d_BndBox3d Box (const Standard_Integer theIdx) const Standard_OVERRIDE; Standard_EXPORT virtual Graphic3d_BndBox3d Box (const Standard_Integer theIdx) const Standard_OVERRIDE;
//! Calculates center of the AABB along given axis. //! Calculates center of the AABB along given axis.
virtual Standard_Real Center (const Standard_Integer theIdx, Standard_EXPORT virtual Standard_Real Center (const Standard_Integer theIdx,
const Standard_Integer theAxis) const Standard_OVERRIDE; const Standard_Integer theAxis) const Standard_OVERRIDE;
//! Swaps structures with the given indices. //! Swaps structures with the given indices.
virtual void Swap (const Standard_Integer theIdx1, Standard_EXPORT virtual void Swap (const Standard_Integer theIdx1,
const Standard_Integer theIdx2) Standard_OVERRIDE; const Standard_Integer theIdx2) Standard_OVERRIDE;
//! Adds structure to the set. //! Adds structure to the set.
//! @return true if structure added, otherwise returns false (structure already in the set). //! @return true if structure added, otherwise returns false (structure already in the set).
Standard_Boolean Add (const Graphic3d_CStructure* theStruct); Standard_EXPORT Standard_Boolean Add (const Graphic3d_CStructure* theStruct);
//! Removes the given structure from the set. //! Removes the given structure from the set.
//! @return true if structure removed, otherwise returns false (structure is not in the set). //! @return true if structure removed, otherwise returns false (structure is not in the set).
Standard_Boolean Remove (const Graphic3d_CStructure* theStruct); Standard_EXPORT Standard_Boolean Remove (const Graphic3d_CStructure* theStruct);
//! Cleans the whole primitive set. //! Cleans the whole primitive set.
void Clear(); Standard_EXPORT void Clear();
//! Returns the structure corresponding to the given ID. //! Returns the structure corresponding to the given ID.
const Graphic3d_CStructure* GetStructureById (Standard_Integer theId); Standard_EXPORT const Graphic3d_CStructure* GetStructureById (Standard_Integer theId);
//! Access directly a collection of structures. //! Access directly a collection of structures.
const NCollection_IndexedMap<const Graphic3d_CStructure*>& Structures() const { return myStructs; } const NCollection_IndexedMap<const Graphic3d_CStructure*>& Structures() const { return myStructs; }

View File

@ -41,35 +41,35 @@ private:
public: public:
//! Creates an empty primitive set for BVH clipping. //! Creates an empty primitive set for BVH clipping.
Graphic3d_BvhCStructureSetTrsfPers (const Handle(Select3D_BVHBuilder3d)& theBuilder); Standard_EXPORT Graphic3d_BvhCStructureSetTrsfPers (const Handle(Select3D_BVHBuilder3d)& theBuilder);
//! Returns total number of structures. //! Returns total number of structures.
virtual Standard_Integer Size() const Standard_OVERRIDE; Standard_EXPORT virtual Standard_Integer Size() const Standard_OVERRIDE;
//! Returns AABB of the structure. //! Returns AABB of the structure.
virtual Graphic3d_BndBox3d Box (const Standard_Integer theIdx) const Standard_OVERRIDE; Standard_EXPORT virtual Graphic3d_BndBox3d Box (const Standard_Integer theIdx) const Standard_OVERRIDE;
//! Calculates center of the AABB along given axis. //! Calculates center of the AABB along given axis.
virtual Standard_Real Center (const Standard_Integer theIdx, Standard_EXPORT virtual Standard_Real Center (const Standard_Integer theIdx,
const Standard_Integer theAxis) const Standard_OVERRIDE; const Standard_Integer theAxis) const Standard_OVERRIDE;
//! Swaps structures with the given indices. //! Swaps structures with the given indices.
virtual void Swap (const Standard_Integer theIdx1, Standard_EXPORT virtual void Swap (const Standard_Integer theIdx1,
const Standard_Integer theIdx2) Standard_OVERRIDE; const Standard_Integer theIdx2) Standard_OVERRIDE;
//! Adds structure to the set. //! Adds structure to the set.
//! @return true if structure added, otherwise returns false (structure already in the set). //! @return true if structure added, otherwise returns false (structure already in the set).
Standard_Boolean Add (const Graphic3d_CStructure* theStruct); Standard_EXPORT Standard_Boolean Add (const Graphic3d_CStructure* theStruct);
//! Removes the given structure from the set. //! Removes the given structure from the set.
//! @return true if structure removed, otherwise returns false (structure is not in the set). //! @return true if structure removed, otherwise returns false (structure is not in the set).
Standard_Boolean Remove (const Graphic3d_CStructure* theStruct); Standard_EXPORT Standard_Boolean Remove (const Graphic3d_CStructure* theStruct);
//! Cleans the whole primitive set. //! Cleans the whole primitive set.
void Clear(); Standard_EXPORT void Clear();
//! Returns the structure corresponding to the given ID. //! Returns the structure corresponding to the given ID.
const Graphic3d_CStructure* GetStructureById (Standard_Integer theId); Standard_EXPORT const Graphic3d_CStructure* GetStructureById (Standard_Integer theId);
//! Access directly a collection of structures. //! Access directly a collection of structures.
const NCollection_IndexedMap<const Graphic3d_CStructure*>& Structures() const { return myStructs; } const NCollection_IndexedMap<const Graphic3d_CStructure*>& Structures() const { return myStructs; }
@ -81,7 +81,7 @@ public:
} }
//! Returns BVH tree for the given world view projection (builds it if necessary). //! Returns BVH tree for the given world view projection (builds it if necessary).
const opencascade::handle<BVH_Tree<Standard_Real, 3> >& BVH (const Handle(Graphic3d_Camera)& theCamera, Standard_EXPORT const opencascade::handle<BVH_Tree<Standard_Real, 3> >& BVH (const Handle(Graphic3d_Camera)& theCamera,
const Graphic3d_Mat4d& theProjectionMatrix, const Graphic3d_Mat4d& theProjectionMatrix,
const Graphic3d_Mat4d& theWorldViewMatrix, const Graphic3d_Mat4d& theWorldViewMatrix,
const Standard_Integer theViewportWidth, const Standard_Integer theViewportWidth,

View File

@ -85,10 +85,10 @@ public:
private: private:
//! Lock the frame for decoding into. //! Lock the frame for decoding into.
virtual Handle(Media_Frame) LockFrame() Standard_OVERRIDE; Standard_EXPORT virtual Handle(Media_Frame) LockFrame() Standard_OVERRIDE;
//! Release the frame to present decoding results. //! Release the frame to present decoding results.
virtual void ReleaseFrame (const Handle(Media_Frame)& theFrame) Standard_OVERRIDE; Standard_EXPORT virtual void ReleaseFrame (const Handle(Media_Frame)& theFrame) Standard_OVERRIDE;
protected: protected:

View File

@ -41,24 +41,24 @@ public:
public: public:
//! Default constructor. //! Default constructor.
OpenGl_GraduatedTrihedron(); Standard_EXPORT OpenGl_GraduatedTrihedron();
//! Destructor. //! Destructor.
virtual ~OpenGl_GraduatedTrihedron(); Standard_EXPORT virtual ~OpenGl_GraduatedTrihedron();
//! Draw the element. //! Draw the element.
virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const; Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
//! Release OpenGL resources. //! Release OpenGL resources.
virtual void Release (OpenGl_Context* theCtx); Standard_EXPORT virtual void Release (OpenGl_Context* theCtx);
//! Setup configuration. //! Setup configuration.
void SetValues (const Graphic3d_GraduatedTrihedron& theData); Standard_EXPORT void SetValues (const Graphic3d_GraduatedTrihedron& theData);
//! Sets up-to-date values of scene bounding box. //! Sets up-to-date values of scene bounding box.
//! Can be used in callback mechanism to get up-to-date values. //! Can be used in callback mechanism to get up-to-date values.
//! @sa Graphic3d_GraduatedTrihedron::CubicAxesCallback //! @sa Graphic3d_GraduatedTrihedron::CubicAxesCallback
void SetMinMax (const OpenGl_Vec3& theMin, Standard_EXPORT void SetMinMax (const OpenGl_Vec3& theMin,
const OpenGl_Vec3& theMax); const OpenGl_Vec3& theMax);
private: private:

View File

@ -35,10 +35,10 @@ class OpenGl_LayerList
public: public:
//! Constructor //! Constructor
OpenGl_LayerList (const Standard_Integer theNbPriorities); Standard_EXPORT OpenGl_LayerList (const Standard_Integer theNbPriorities);
//! Destructor //! Destructor
virtual ~OpenGl_LayerList(); Standard_EXPORT virtual ~OpenGl_LayerList();
//! Method returns the number of available priorities //! Method returns the number of available priorities
Standard_Integer NbPriorities() const { return myNbPriorities; } Standard_Integer NbPriorities() const { return myNbPriorities; }
@ -50,38 +50,38 @@ public:
Standard_Integer NbImmediateStructures() const { return myImmediateNbStructures; } Standard_Integer NbImmediateStructures() const { return myImmediateNbStructures; }
//! Insert a new layer with id. //! Insert a new layer with id.
void InsertLayerBefore (const Graphic3d_ZLayerId theNewLayerId, Standard_EXPORT void InsertLayerBefore (const Graphic3d_ZLayerId theNewLayerId,
const Graphic3d_ZLayerSettings& theSettings, const Graphic3d_ZLayerSettings& theSettings,
const Graphic3d_ZLayerId theLayerAfter); const Graphic3d_ZLayerId theLayerAfter);
//! Insert a new layer with id. //! Insert a new layer with id.
void InsertLayerAfter (const Graphic3d_ZLayerId theNewLayerId, Standard_EXPORT void InsertLayerAfter (const Graphic3d_ZLayerId theNewLayerId,
const Graphic3d_ZLayerSettings& theSettings, const Graphic3d_ZLayerSettings& theSettings,
const Graphic3d_ZLayerId theLayerBefore); const Graphic3d_ZLayerId theLayerBefore);
//! Remove layer by its id. //! Remove layer by its id.
void RemoveLayer (const Graphic3d_ZLayerId theLayerId); Standard_EXPORT void RemoveLayer (const Graphic3d_ZLayerId theLayerId);
//! Add structure to list with given priority. The structure will be inserted //! Add structure to list with given priority. The structure will be inserted
//! to specified layer. If the layer isn't found, the structure will be put //! to specified layer. If the layer isn't found, the structure will be put
//! to default bottom-level layer. //! to default bottom-level layer.
void AddStructure (const OpenGl_Structure* theStruct, Standard_EXPORT void AddStructure (const OpenGl_Structure* theStruct,
const Graphic3d_ZLayerId theLayerId, const Graphic3d_ZLayerId theLayerId,
const Standard_Integer thePriority, const Standard_Integer thePriority,
Standard_Boolean isForChangePriority = Standard_False); Standard_Boolean isForChangePriority = Standard_False);
//! Remove structure from structure list and return its previous priority //! Remove structure from structure list and return its previous priority
void RemoveStructure (const OpenGl_Structure* theStructure); Standard_EXPORT void RemoveStructure (const OpenGl_Structure* theStructure);
//! Change structure z layer //! Change structure z layer
//! If the new layer is not presented, the structure will be displayed //! If the new layer is not presented, the structure will be displayed
//! in default z layer //! in default z layer
void ChangeLayer (const OpenGl_Structure* theStructure, Standard_EXPORT void ChangeLayer (const OpenGl_Structure* theStructure,
const Graphic3d_ZLayerId theOldLayerId, const Graphic3d_ZLayerId theOldLayerId,
const Graphic3d_ZLayerId theNewLayerId); const Graphic3d_ZLayerId theNewLayerId);
//! Changes structure priority within its ZLayer //! Changes structure priority within its ZLayer
void ChangePriority (const OpenGl_Structure* theStructure, Standard_EXPORT void ChangePriority (const OpenGl_Structure* theStructure,
const Graphic3d_ZLayerId theLayerId, const Graphic3d_ZLayerId theLayerId,
const Standard_Integer theNewPriority); const Standard_Integer theNewPriority);
@ -92,15 +92,15 @@ public:
const OpenGl_Layer& Layer (const Graphic3d_ZLayerId theLayerId) const { return *myLayerIds.Find (theLayerId); } const OpenGl_Layer& Layer (const Graphic3d_ZLayerId theLayerId) const { return *myLayerIds.Find (theLayerId); }
//! Assign new settings to the layer. //! Assign new settings to the layer.
void SetLayerSettings (const Graphic3d_ZLayerId theLayerId, Standard_EXPORT void SetLayerSettings (const Graphic3d_ZLayerId theLayerId,
const Graphic3d_ZLayerSettings& theSettings); const Graphic3d_ZLayerSettings& theSettings);
//! Update culling state - should be called before rendering. //! Update culling state - should be called before rendering.
void UpdateCulling (const Handle(OpenGl_Workspace)& theWorkspace, Standard_EXPORT void UpdateCulling (const Handle(OpenGl_Workspace)& theWorkspace,
const Standard_Boolean theToDrawImmediate); const Standard_Boolean theToDrawImmediate);
//! Render this element //! Render this element
void Render (const Handle(OpenGl_Workspace)& theWorkspace, Standard_EXPORT void Render (const Handle(OpenGl_Workspace)& theWorkspace,
const Standard_Boolean theToDrawImmediate, const Standard_Boolean theToDrawImmediate,
const OpenGl_LayerFilter theLayersToProcess, const OpenGl_LayerFilter theLayersToProcess,
OpenGl_FrameBuffer* theReadDrawFbo, OpenGl_FrameBuffer* theReadDrawFbo,
@ -114,7 +114,7 @@ public:
//! Marks BVH tree for given priority list as dirty and //! Marks BVH tree for given priority list as dirty and
//! marks primitive set for rebuild. //! marks primitive set for rebuild.
void InvalidateBVHData (const Graphic3d_ZLayerId theLayerId); Standard_EXPORT void InvalidateBVHData (const Graphic3d_ZLayerId theLayerId);
//! Returns structure modification state (for ray-tracing). //! Returns structure modification state (for ray-tracing).
Standard_Size ModificationStateOfRaytracable() const { return myModifStateOfRaytraceable; } Standard_Size ModificationStateOfRaytracable() const { return myModifStateOfRaytraceable; }
@ -123,7 +123,7 @@ public:
const Handle(Select3D_BVHBuilder3d)& FrustumCullingBVHBuilder() const { return myBVHBuilder; } const Handle(Select3D_BVHBuilder3d)& FrustumCullingBVHBuilder() const { return myBVHBuilder; }
//! Assigns BVH tree builder for frustom culling. //! Assigns BVH tree builder for frustom culling.
void SetFrustumCullingBVHBuilder (const Handle(Select3D_BVHBuilder3d)& theBuilder); Standard_EXPORT void SetFrustumCullingBVHBuilder (const Handle(Select3D_BVHBuilder3d)& theBuilder);
protected: protected:
@ -184,14 +184,14 @@ protected:
//! @param theGlobalSettings [in] the set of global settings used for rendering. //! @param theGlobalSettings [in] the set of global settings used for rendering.
//! @param theReadDrawFbo [in] the framebuffer for reading depth and writing final color. //! @param theReadDrawFbo [in] the framebuffer for reading depth and writing final color.
//! @param theOitAccumFbo [in] the framebuffer for accumulating color and coverage for OIT process. //! @param theOitAccumFbo [in] the framebuffer for accumulating color and coverage for OIT process.
void renderTransparent (const Handle(OpenGl_Workspace)& theWorkspace, Standard_EXPORT void renderTransparent (const Handle(OpenGl_Workspace)& theWorkspace,
OpenGl_LayerStack::iterator& theLayerIter, OpenGl_LayerStack::iterator& theLayerIter,
const OpenGl_GlobalLayerSettings& theGlobalSettings, const OpenGl_GlobalLayerSettings& theGlobalSettings,
OpenGl_FrameBuffer* theReadDrawFbo, OpenGl_FrameBuffer* theReadDrawFbo,
OpenGl_FrameBuffer* theOitAccumFbo) const; OpenGl_FrameBuffer* theOitAccumFbo) const;
// Render structures within specified layer. // Render structures within specified layer.
void renderLayer (const Handle(OpenGl_Workspace)& theWorkspace, Standard_EXPORT void renderLayer (const Handle(OpenGl_Workspace)& theWorkspace,
const OpenGl_GlobalLayerSettings& theDefaultSettings, const OpenGl_GlobalLayerSettings& theDefaultSettings,
const Graphic3d_Layer& theLayer) const; const Graphic3d_Layer& theLayer) const;

View File

@ -48,13 +48,13 @@ public:
//! By default the parameters are: //! By default the parameters are:
//! - IsEnabled (true), //! - IsEnabled (true),
//! - TypeOfHatch (0). //! - TypeOfHatch (0).
OpenGl_LineAttributes(); Standard_EXPORT OpenGl_LineAttributes();
//! Default destructor. //! Default destructor.
virtual ~OpenGl_LineAttributes(); Standard_EXPORT virtual ~OpenGl_LineAttributes();
//! Release GL resources. //! Release GL resources.
virtual void Release (OpenGl_Context* theGlCtx) Standard_OVERRIDE; Standard_EXPORT virtual void Release (OpenGl_Context* theGlCtx) Standard_OVERRIDE;
//! Returns estimated GPU memory usage - not implemented. //! Returns estimated GPU memory usage - not implemented.
virtual Standard_Size EstimatedDataSize() const Standard_OVERRIDE { return 0; } virtual Standard_Size EstimatedDataSize() const Standard_OVERRIDE { return 0; }
@ -63,14 +63,14 @@ public:
int TypeOfHatch() const { return myTypeOfHatch; } int TypeOfHatch() const { return myTypeOfHatch; }
//! Sets type of the hatch. //! Sets type of the hatch.
int SetTypeOfHatch (const OpenGl_Context* theGlCtx, Standard_EXPORT int SetTypeOfHatch (const OpenGl_Context* theGlCtx,
const Handle(Graphic3d_HatchStyle)& theStyle); const Handle(Graphic3d_HatchStyle)& theStyle);
//! Current enabled state of the hatching rasterization. //! Current enabled state of the hatching rasterization.
bool IsEnabled() const { return myIsEnabled; } bool IsEnabled() const { return myIsEnabled; }
//! Turns on/off the hatching rasterization rasterization. //! Turns on/off the hatching rasterization rasterization.
bool SetEnabled (const OpenGl_Context* theGlCtx, const bool theToEnable); Standard_EXPORT bool SetEnabled (const OpenGl_Context* theGlCtx, const bool theToEnable);
protected: protected:

View File

@ -33,13 +33,13 @@ class OpenGl_PrimitiveArray;
namespace OpenGl_Raytrace namespace OpenGl_Raytrace
{ {
//! Checks to see if the group contains ray-trace geometry. //! Checks to see if the group contains ray-trace geometry.
Standard_Boolean IsRaytracedGroup (const OpenGl_Group* theGroup); Standard_EXPORT Standard_Boolean IsRaytracedGroup (const OpenGl_Group* theGroup);
//! Checks to see if the element contains ray-trace geometry. //! Checks to see if the element contains ray-trace geometry.
Standard_Boolean IsRaytracedElement (const OpenGl_ElementNode* theNode); Standard_EXPORT Standard_Boolean IsRaytracedElement (const OpenGl_ElementNode* theNode);
//! Checks to see if the element contains ray-trace geometry. //! Checks to see if the element contains ray-trace geometry.
Standard_Boolean IsRaytracedElement (const OpenGl_Element* theElement); Standard_EXPORT Standard_Boolean IsRaytracedElement (const OpenGl_Element* theElement);
} }
//! Stores properties of surface material. //! Stores properties of surface material.
@ -70,7 +70,7 @@ struct OpenGl_RaytraceMaterial
public: public:
//! Empty constructor. //! Empty constructor.
OpenGl_RaytraceMaterial(); Standard_EXPORT OpenGl_RaytraceMaterial();
//! Returns packed (serialized) representation of material. //! Returns packed (serialized) representation of material.
const Standard_ShortReal* Packed() const Standard_ShortReal* Packed()
@ -92,7 +92,7 @@ public:
OpenGl_RaytraceLight() { } OpenGl_RaytraceLight() { }
//! Creates new light source. //! Creates new light source.
OpenGl_RaytraceLight (const BVH_Vec4f& theEmission, Standard_EXPORT OpenGl_RaytraceLight (const BVH_Vec4f& theEmission,
const BVH_Vec4f& thePosition); const BVH_Vec4f& thePosition);
//! Returns packed (serialized) representation of light source. //! Returns packed (serialized) representation of light source.
@ -118,7 +118,7 @@ public:
public: public:
//! Creates new OpenGL element triangulation. //! Creates new OpenGL element triangulation.
OpenGl_TriangleSet (const Standard_Size theArrayID, Standard_EXPORT OpenGl_TriangleSet (const Standard_Size theArrayID,
const opencascade::handle<BVH_Builder<Standard_ShortReal, 3> >& theBuilder); const opencascade::handle<BVH_Builder<Standard_ShortReal, 3> >& theBuilder);
//! Returns ID of associated primitive array. //! Returns ID of associated primitive array.
@ -154,10 +154,10 @@ public:
using BVH_Triangulation<Standard_ShortReal, 3>::Box; using BVH_Triangulation<Standard_ShortReal, 3>::Box;
//! Returns centroid position along the given axis. //! Returns centroid position along the given axis.
virtual Standard_ShortReal Center (const Standard_Integer theIndex, const Standard_Integer theAxis) const Standard_OVERRIDE; Standard_EXPORT virtual Standard_ShortReal Center (const Standard_Integer theIndex, const Standard_Integer theAxis) const Standard_OVERRIDE;
//! Returns quad BVH (QBVH) tree produced from binary BVH. //! Returns quad BVH (QBVH) tree produced from binary BVH.
const QuadBvhHandle& QuadBVH(); Standard_EXPORT const QuadBvhHandle& QuadBVH();
public: public:
@ -228,35 +228,35 @@ public:
} }
//! Clears ray-tracing geometry. //! Clears ray-tracing geometry.
virtual void Clear() Standard_OVERRIDE; Standard_EXPORT virtual void Clear() Standard_OVERRIDE;
public: //! @name methods related to acceleration structure public: //! @name methods related to acceleration structure
//! Performs post-processing of high-level scene BVH. //! Performs post-processing of high-level scene BVH.
Standard_Boolean ProcessAcceleration(); Standard_EXPORT Standard_Boolean ProcessAcceleration();
//! Returns offset of bottom-level BVH for given leaf node. //! Returns offset of bottom-level BVH for given leaf node.
//! If the node index is not valid the function returns -1. //! If the node index is not valid the function returns -1.
//! @note Can be used after processing acceleration structure. //! @note Can be used after processing acceleration structure.
Standard_Integer AccelerationOffset (Standard_Integer theNodeIdx); Standard_EXPORT Standard_Integer AccelerationOffset (Standard_Integer theNodeIdx);
//! Returns offset of triangulation vertices for given leaf node. //! Returns offset of triangulation vertices for given leaf node.
//! If the node index is not valid the function returns -1. //! If the node index is not valid the function returns -1.
//! @note Can be used after processing acceleration structure. //! @note Can be used after processing acceleration structure.
Standard_Integer VerticesOffset (Standard_Integer theNodeIdx); Standard_EXPORT Standard_Integer VerticesOffset (Standard_Integer theNodeIdx);
//! Returns offset of triangulation elements for given leaf node. //! Returns offset of triangulation elements for given leaf node.
//! If the node index is not valid the function returns -1. //! If the node index is not valid the function returns -1.
//! @note Can be used after processing acceleration structure. //! @note Can be used after processing acceleration structure.
Standard_Integer ElementsOffset (Standard_Integer theNodeIdx); Standard_EXPORT Standard_Integer ElementsOffset (Standard_Integer theNodeIdx);
//! Returns triangulation data for given leaf node. //! Returns triangulation data for given leaf node.
//! If the node index is not valid the function returns NULL. //! If the node index is not valid the function returns NULL.
//! @note Can be used after processing acceleration structure. //! @note Can be used after processing acceleration structure.
OpenGl_TriangleSet* TriangleSet (Standard_Integer theNodeIdx); Standard_EXPORT OpenGl_TriangleSet* TriangleSet (Standard_Integer theNodeIdx);
//! Returns quad BVH (QBVH) tree produced from binary BVH. //! Returns quad BVH (QBVH) tree produced from binary BVH.
const QuadBvhHandle& QuadBVH(); Standard_EXPORT const QuadBvhHandle& QuadBVH();
public: //! @name methods related to texture management public: //! @name methods related to texture management
@ -267,16 +267,16 @@ public: //! @name methods related to texture management
} }
//! Adds new OpenGL texture to the scene and returns its index. //! Adds new OpenGL texture to the scene and returns its index.
Standard_Integer AddTexture (const Handle(OpenGl_Texture)& theTexture); Standard_EXPORT Standard_Integer AddTexture (const Handle(OpenGl_Texture)& theTexture);
//! Updates unique 64-bit texture handles to use in shaders. //! Updates unique 64-bit texture handles to use in shaders.
Standard_Boolean UpdateTextureHandles (const Handle(OpenGl_Context)& theContext); Standard_EXPORT Standard_Boolean UpdateTextureHandles (const Handle(OpenGl_Context)& theContext);
//! Makes the OpenGL texture handles resident (must be called before using). //! Makes the OpenGL texture handles resident (must be called before using).
Standard_Boolean AcquireTextures (const Handle(OpenGl_Context)& theContext); Standard_EXPORT Standard_Boolean AcquireTextures (const Handle(OpenGl_Context)& theContext);
//! Makes the OpenGL texture handles non-resident (must be called after using). //! Makes the OpenGL texture handles non-resident (must be called after using).
Standard_Boolean ReleaseTextures (const Handle(OpenGl_Context)& theContext) const; Standard_EXPORT Standard_Boolean ReleaseTextures (const Handle(OpenGl_Context)& theContext) const;
//! Returns array of texture handles. //! Returns array of texture handles.
const std::vector<GLuint64>& TextureHandles() const const std::vector<GLuint64>& TextureHandles() const

View File

@ -23,19 +23,19 @@ class OpenGl_StencilTest : public OpenGl_Element
public: public:
//! Default constructor //! Default constructor
OpenGl_StencilTest (); Standard_EXPORT OpenGl_StencilTest ();
//! Render primitives to the window //! Render primitives to the window
virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const; Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
virtual void Release (OpenGl_Context* theContext); Standard_EXPORT virtual void Release (OpenGl_Context* theContext);
void SetOptions (const Standard_Boolean theIsEnabled); Standard_EXPORT void SetOptions (const Standard_Boolean theIsEnabled);
protected: protected:
//! Destructor //! Destructor
virtual ~OpenGl_StencilTest(); Standard_EXPORT virtual ~OpenGl_StencilTest();
private: private:
Standard_Boolean myIsEnabled; Standard_Boolean myIsEnabled;

View File

@ -100,10 +100,10 @@ public:
Standard_EXPORT void Clear (const Handle(OpenGl_Context)& theGlCtx); Standard_EXPORT void Clear (const Handle(OpenGl_Context)& theGlCtx);
//! Renders the structure. //! Renders the structure.
virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const; Standard_EXPORT virtual void Render (const Handle(OpenGl_Workspace)& theWorkspace) const;
//! Releases structure resources. //! Releases structure resources.
virtual void Release (const Handle(OpenGl_Context)& theGlCtx); Standard_EXPORT virtual void Release (const Handle(OpenGl_Context)& theGlCtx);
//! This method releases GL resources without actual elements destruction. //! This method releases GL resources without actual elements destruction.
//! As result structure could be correctly destroyed layer without GL context //! As result structure could be correctly destroyed layer without GL context

View File

@ -31,10 +31,10 @@ public:
public: public:
//! Raise exception on API misuse. //! Raise exception on API misuse.
virtual void Connect (Graphic3d_CStructure& ) Standard_OVERRIDE; Standard_EXPORT virtual void Connect (Graphic3d_CStructure& ) Standard_OVERRIDE;
//! Raise exception on API misuse. //! Raise exception on API misuse.
virtual void Disconnect (Graphic3d_CStructure& ) Standard_OVERRIDE; Standard_EXPORT virtual void Disconnect (Graphic3d_CStructure& ) Standard_OVERRIDE;
private: private:

View File

@ -43,13 +43,13 @@ protected:
//! Create reader context. //! Create reader context.
//! Can be overridden by sub-class to read triangulation into application-specific data structures instead of Poly_Triangulation. //! Can be overridden by sub-class to read triangulation into application-specific data structures instead of Poly_Triangulation.
virtual Handle(RWObj_TriangulationReader) createReaderContext(); Standard_EXPORT virtual Handle(RWObj_TriangulationReader) createReaderContext();
//! @param theShape shape to register //! @param theShape shape to register
//! @param theName shape name //! @param theName shape name
//! @param theMaterial shape material //! @param theMaterial shape material
//! @param theIsRootShape indicates that this is a root object (free shape) //! @param theIsRootShape indicates that this is a root object (free shape)
virtual void BindNamedShape (const TopoDS_Shape& theShape, Standard_EXPORT virtual void BindNamedShape (const TopoDS_Shape& theShape,
const TCollection_AsciiString& theName, const TCollection_AsciiString& theName,
const RWObj_Material* theMaterial, const RWObj_Material* theMaterial,
const Standard_Boolean theIsRootShape) Standard_OVERRIDE; const Standard_Boolean theIsRootShape) Standard_OVERRIDE;
@ -58,7 +58,6 @@ protected:
NCollection_DataMap<TCollection_AsciiString, Handle(XCAFDoc_VisMaterial)> myObjMaterialMap; NCollection_DataMap<TCollection_AsciiString, Handle(XCAFDoc_VisMaterial)> myObjMaterialMap;
Standard_Boolean myIsSinglePrecision; //!< flag for reading vertex data with single or double floating point precision Standard_Boolean myIsSinglePrecision; //!< flag for reading vertex data with single or double floating point precision
}; };
#endif // _RWObj_CafReader_HeaderFile #endif // _RWObj_CafReader_HeaderFile

View File

@ -37,9 +37,9 @@ public:
public: public:
SelectBasics_SelectingVolumeManager() {}; SelectBasics_SelectingVolumeManager() {}
virtual ~SelectBasics_SelectingVolumeManager() {}; virtual ~SelectBasics_SelectingVolumeManager() {}
virtual Standard_Integer GetActiveSelectionType() const = 0; virtual Standard_Integer GetActiveSelectionType() const = 0;

View File

@ -36,7 +36,7 @@ public:
//! Creates instances of all available selecting volume types //! Creates instances of all available selecting volume types
Standard_EXPORT SelectMgr_SelectingVolumeManager (Standard_Boolean theToAllocateFrustums = Standard_True); Standard_EXPORT SelectMgr_SelectingVolumeManager (Standard_Boolean theToAllocateFrustums = Standard_True);
virtual ~SelectMgr_SelectingVolumeManager() {}; virtual ~SelectMgr_SelectingVolumeManager() {}
//! IMPORTANT: Scaling makes sense only for frustum built on a single point! //! IMPORTANT: Scaling makes sense only for frustum built on a single point!
//! Note that this method does not perform any checks on type of the frustum. //! Note that this method does not perform any checks on type of the frustum.

View File

@ -36,7 +36,7 @@ public:
//! Empty constructor. //! Empty constructor.
Standard_EXPORT SelectMgr_SensitiveEntitySet (const Handle(Select3D_BVHBuilder3d)& theBuilder); Standard_EXPORT SelectMgr_SensitiveEntitySet (const Handle(Select3D_BVHBuilder3d)& theBuilder);
virtual ~SelectMgr_SensitiveEntitySet() {}; virtual ~SelectMgr_SensitiveEntitySet() {}
//! Adds new entity to the set and marks BVH tree for rebuild //! Adds new entity to the set and marks BVH tree for rebuild
Standard_EXPORT void Append (const Handle(SelectMgr_SensitiveEntity)& theEntity); Standard_EXPORT void Append (const Handle(SelectMgr_SensitiveEntity)& theEntity);