Forward declaration of TCollection instances as classes are replaced by inclusion of corresponding header.
Cyclic dependencies between declaration of collection class and its item are resolved by forward declaring a class in collection header.
class LocalContext;
- private class LocalStatus;
+ class LocalStatus;
- private class GlobalStatus;
+ class GlobalStatus;
deferred class InteractiveObject;
-- Alternatively, this file may be used under the terms of Open CASCADE
-- commercial license or contractual agreement.
-private class GlobalStatus from AIS inherits TShared from MMgt
+class GlobalStatus from AIS inherits TShared from MMgt
---Purpose: Stores information about objects in graphic context:
-- - Status Of Display : in the main viewer
---Category: INTERNAL METHODS;
- Status(me) returns AsciiString from TCollection is private;
+ Status(me) returns AsciiString from TCollection;
Status(me;anObject : InteractiveObject from AIS)
- returns any LocalStatus from AIS is private;
+ returns any LocalStatus from AIS;
---C++: return const&
-- This variable is used by following functions:
-- InitDetected(), MoreDetected(), NextDetected(), DetectedCurrentShape(), DetectedCurrentObject().
-friends
-
- KeepTemporary from InteractiveContext from AIS(me:mutable;anIObj:InteractiveObject from AIS;WhichMode : Integer from Standard = -1)
-
end LocalContext;
-- Alternatively, this file may be used under the terms of Open CASCADE
-- commercial license or contractual agreement.
-private class LocalStatus from AIS inherits TShared from MMgt
+class LocalStatus from AIS inherits TShared from MMgt
---Purpose: Stored Info about temporary objects.
uses
TColStd,
TColgp,
TColGeom,
- TCollection,
AdvApprox,
Standard
GeomAbs,
TColStd,
TColgp,
- TCollection,
- Standard,
StdFail,
PLib
---Purpose: Adds Tool argument of the operation
is virtual;
- SetTools (me:out;
- theShapes: ListOfShape from TopTools)
- is virtual;
-
SetTools (me:out;
theShapes: ListOfShape from BOPCol)
is virtual;
//function : SetTools
//purpose :
//=======================================================================
-void BOPAlgo_BOP::SetTools(const TopTools_ListOfShape& theShapes)
-{
- TopTools_ListIteratorOfListOfShape aIt;
- //
- myTools.Clear();
- aIt.Initialize(theShapes);
- for (; aIt.More(); aIt.Next()) {
- const TopoDS_Shape& aS = aIt.Value();
- AddTool(aS);
- }
-}
-//=======================================================================
-//function : SetTools
-//purpose :
-//=======================================================================
void BOPAlgo_BOP::SetTools(const BOPCol_ListOfShape& theShapes)
{
BOPCol_ListIteratorOfListOfShape aIt;
theShape: Shape from TopoDS)
is virtual;
- SetArguments(me:out;
- theLS:ListOfShape from TopTools);
-
SetArguments (me:out;
theLS: ListOfShape from BOPCol)
is virtual;
//function : SetArguments
//purpose :
//=======================================================================
-void BOPAlgo_Builder::SetArguments(const TopTools_ListOfShape& theShapes)
-{
- TopTools_ListIteratorOfListOfShape aIt;
- //
- myArguments.Clear();
- //
- aIt.Initialize(theShapes);
- for (; aIt.More(); aIt.Next()) {
- const TopoDS_Shape& aS = aIt.Value();
- AddArgument(aS);
- }
-}
-//=======================================================================
-//function : SetArguments
-//purpose :
-//=======================================================================
void BOPAlgo_Builder::SetArguments(const BOPCol_ListOfShape& theShapes)
{
BOPCol_ListIteratorOfListOfShape aIt;
SetArguments(me:out;
theLS:ListOfShape from BOPCol);
- SetArguments(me:out;
- theLS:ListOfShape from TopTools);
-
Arguments(me)
returns ListOfShape from BOPCol;
---C++: return const &
//function : SetArguments
//purpose :
//=======================================================================
-void BOPAlgo_PaveFiller::SetArguments(const TopTools_ListOfShape& theLS)
-{
- TopTools_ListIteratorOfListOfShape aItLS;
- //
- myArguments.Clear();
- aItLS.Initialize(theLS);
- for (; aItLS.More(); aItLS.Next()) {
- const TopoDS_Shape& aS=aItLS.Value();
- myArguments.Append(aS);
- }
-}
-//=======================================================================
-//function : SetArguments
-//purpose :
-//=======================================================================
void BOPAlgo_PaveFiller::SetArguments(const BOPCol_ListOfShape& theLS)
{
myArguments=theLS;
Standard_Integer goodIndex = 0;
TopOpeBRepDS_Kind goodKind;
for(;II.More();II.Next()) {
- Handle(TopOpeBRepDS_Interference)& I = II.Value();
+ const Handle(TopOpeBRepDS_Interference)& I = II.Value();
const TopOpeBRepDS_Transition& T = I->Transition();
if((T.ONAfter() == TopAbs_FACE) &&
(T.IndexAfter() == iF)) {
{
const TopoDS_Edge& anEdge = TopoDS::Edge(itl.Value());
TopTools_ListOfShape LCE;
- const TopTools_ListOfShape* pVertices =
- static_cast<TopTools_ListOfShape*>(myVerOnEdges.Find1(anEdge));
+ const TopTools_ListOfShape* pVertices = myVerOnEdges.Seek (anEdge);
if (pVertices)
{
CutEdge (anEdge, *pVertices, LCE);
// add cut edges.
for (itl.Initialize(myEdges); itl.More(); itl.Next())
{
- const TopTools_ListOfShape* pLCE =
- static_cast<TopTools_ListOfShape*>(myCutEdges.Find1(itl.Value()));
+ const TopTools_ListOfShape* pLCE = myCutEdges.Seek (itl.Value());
if (pLCE)
{
for (itl1.Initialize(*pLCE); itl1.More(); itl1.Next()) {
#include <TopTools_IndexedMapOfShape.hxx>
#include <Standard_OStream.hxx>
#include <Standard_DefineAlloc.hxx>
-
-class TopoDS_Shape;
-class TopTools_IndexedMapOfShape;
-
+#include <TopTools_IndexedMapOfShape.hxx>
//! This class provides tools to compute minimum distance <br>
//! between two Shapes (Compound,CompSolid, Solid, Shell, Face, Wire, Edge, Vertex). <br>
const Standard_Integer& iLst = itLstEdg.Key();
const TopTools_ListOfShape& LmapEdg = myMapLstEdg.Find(iLst);
- TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
+ TopoDS_Edge OldEdge = TopoDS::Edge(LmapEdg.First());
// the first edge of the list will be replaced by the result fusion edge
if (OldEdge.Orientation()==TopAbs_REVERSED) {
TopTools_ListIteratorOfListOfShape itEdg;
EdgeToSubs.Clear();
- TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
-
+ TopoDS_Edge OldEdge = TopoDS::Edge(LmapEdg.First());
EdgeToSubs.Append(myMapEdg(iLst));
Bsub.Substitute(OldEdge,EdgeToSubs);
#include <BRepMesh.hxx>
#include <BRepMesh_DataStructureOfDelaun.hxx>
#include <BRepMesh_GeomTool.hxx>
+#include <TColStd_Array1OfInteger.hxx>
+#include <TColStd_SequenceOfInteger.hxx>
+#include <TColStd_MapOfInteger.hxx>
class Bnd_B2d;
class Bnd_Box2d;
-class BRepMesh_Array1OfVertexOfDelaun;
class BRepMesh_Vertex;
//! Compute the Delaunay's triangulation with the algorithm of Watson.
#include <Plugin_MapOfFunctions.hxx>
#include <BRepMesh_DiscretRoot.hxx>
-class TColStd_MapOfAsciiString;
-class TCollection_AsciiString;
-class BRepMesh_DiscretRoot;
class TopoDS_Shape;
//! This class intended to setup / retrieve default triangulation algorithm. <br>
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Extrema_LocateExtPC.hxx>
-#include <Handle_TColStd_HArray1OfReal.hxx>
+#include <TColStd_HArray1OfReal.hxx>
class gp_Pnt;
class TopoDS_Edge;
#include <Handle_Geom2d_Curve.hxx>
#include <Handle_BRepAdaptor_HSurface.hxx>
#include <BRepAdaptor_Curve.hxx>
+#include <TopTools_IndexedDataMapOfShapeListOfShape.hxx>
class Geom_Surface;
class Geom2d_Curve;
class TopoDS_Edge;
class BRepAdaptor_HSurface;
-class TopTools_IndexedDataMapOfShapeListOfShape;
//! Auxiliary class implements functionality producing tessellated
//! representation of an edge based on edge geometry.
#include <BRepMesh_FaceAttribute.hxx>
#include <Standard_Transient.hxx>
#include <TopTools_MutexForShapeProvider.hxx>
+#include <TopTools_DataMapOfShapeReal.hxx>
#include <Handle_BRepAdaptor_HSurface.hxx>
#include <Handle_Poly_Triangulation.hxx>
#include <BRepMesh_Delaun.hxx>
class BRepMesh_DataStructureOfDelaun;
class BRepMesh_FaceAttribute;
class TopoDS_Face;
-class TopTools_DataMapOfShapeReal;
class TopoDS_Vertex;
class BRepAdaptor_HSurface;
class TopoDS_Edge;
#include <BRepMesh_Status.hxx>
#include <BRepMesh_DataStructureOfDelaun.hxx>
#include <BRepMesh.hxx>
+#include <TColStd_IndexedMapOfInteger.hxx>
#include <TopoDS_Edge.hxx>
#include <Bnd_Box2d.hxx>
#include <gp_Pnt2d.hxx>
#include <vector>
-class BRepMesh_DataMapOfShapePairOfPolygon;
-class TColStd_IndexedMapOfInteger;
//! Auxilary class intended to check correctness of discretized face.
//! In particular, checks boundaries of discretized face for self
#include <TopoDS_Edge.hxx>
-static void CopyRanges (const TopoDS_Edge& toedge,
- const TopoDS_Edge& fromedge,
- const Standard_Real alpha,
- const Standard_Real beta)
+static void CopyRanges (const TopoDS_Shape& toedge, const TopoDS_Shape& fromedge,
+ const Standard_Real alpha, const Standard_Real beta)
{
-/* BRep_Builder B;
- for (BRep_ListIteratorOfListOfCurveRepresentation itcr
- ((*((Handle(BRep_TEdge)*)&fromedge.TShape()))->ChangeCurves()); itcr.More(); itcr.Next()) {
- Handle(BRep_GCurve) GC = Handle(BRep_GCurve)::DownCast(itcr.Value());
- if ( GC.IsNull() ) continue;
- Standard_Real first, last;
- GC->Range ( first, last );
- if ( GC->IsCurve3D() )
- B.Range ( toedge, first, last );
- else if ( GC->IsCurveOnSurface() )
- B.Range ( toedge, GC->Surface(), fromedge.Location().Multiplied (GC->Location()), first, last);
- }
-*/
- for (BRep_ListIteratorOfListOfCurveRepresentation fromitcr
- ((*((Handle(BRep_TEdge)*)&fromedge.TShape()))->ChangeCurves()); fromitcr.More(); fromitcr.Next()) {
+ Handle(BRep_TEdge) aTEdgeFrom = Handle(BRep_TEdge)::DownCast(fromedge.TShape());
+ Handle(BRep_TEdge) aTEdgeTo = Handle(BRep_TEdge)::DownCast(toedge.TShape());
+ BRep_ListOfCurveRepresentation& tolist = aTEdgeTo->ChangeCurves();
+ BRep_ListIteratorOfListOfCurveRepresentation fromitcr (aTEdgeFrom->ChangeCurves());
+ for (; fromitcr.More(); fromitcr.Next()) {
Handle(BRep_GCurve) fromGC = Handle(BRep_GCurve)::DownCast(fromitcr.Value());
if ( fromGC.IsNull() ) continue;
Standard_Boolean isC3d = fromGC->IsCurve3D();
L = fromGC->Location();
}
- BRep_ListOfCurveRepresentation& tolist = (*((Handle(BRep_TEdge)*)&toedge.TShape()))->ChangeCurves();
Handle(BRep_GCurve) toGC;
for (BRep_ListIteratorOfListOfCurveRepresentation toitcr (tolist); toitcr.More(); toitcr.Next()) {
toGC = Handle(BRep_GCurve)::DownCast(toitcr.Value());
// restore Range on edge broken by EmptyCopied()
if ( st == TopAbs_EDGE ) {
- //BRepTools_Edge sbe;
- CopyRanges ( TopoDS::Edge ( result ), TopoDS::Edge ( shape ),0,1 );
+ CopyRanges (result, shape, 0, 1);
}
else if (st == TopAbs_FACE) {
TopoDS_Face face = TopoDS::Face ( shape );
#include <gp_Vec2d.hxx>
#include <gp_Vec.hxx>
-class Handle(BSplCLib_Cache);
-class TColStd_Array1OfReal;
-class TColgp_Array1OfPnt;
-class TColgp_Array1OfPnt2d;
+#include <TColStd_HArray2OfReal.hxx>
+#include <TColStd_HArray1OfReal.hxx>
+#include <TColStd_Array1OfReal.hxx>
+#include <TColgp_Array1OfPnt.hxx>
+#include <TColgp_Array1OfPnt2d.hxx>
#ifndef NOWEIGHTS_CURVE
#define NOWEIGHTS_CURVE (*((TColStd_Array1OfReal*) NULL))
#include <Standard_Type.hxx>
#include <Standard_Transient.hxx>
-#include <Handle_TColStd_HArray1OfReal.hxx>
-#include <Handle_TColStd_HArray2OfReal.hxx>
-
#include <gp_Pnt.hxx>
#include <gp_Vec.hxx>
-class Handle(BSplSLib_Cache);
-class TColgp_Array2OfPnt;
-class TColStd_Array1OfInteger;
-class TColStd_Array1OfReal;
-class TColStd_Array2OfReal;
+#include <TColgp_Array2OfPnt.hxx>
+#include <TColStd_Array1OfInteger.hxx>
+#include <TColStd_HArray2OfReal.hxx>
+#include <TColStd_HArray1OfReal.hxx>
+#include <TColStd_Array1OfReal.hxx>
+#include <TColStd_Array2OfReal.hxx>
#ifndef NOWEIGHTS_SURF
#define NOWEIGHTS_SURF (*((TColStd_Array2OfReal*) NULL))
void Bisector_BisecPC::ComputeIntervals ()
{
Standard_Real U1 =0.,U2 =0.,UProj =0.;
- Standard_Real UStart,UEnd;
+ Standard_Real UStart = 0., UEnd = 0.;
Standard_Real Dist1,Dist2,DistProj;
isEmpty = Standard_False;
shiftParameter = 0.;
#ifndef CDM_MetaDataLookUpTable_HeaderFile
#define CDM_MetaDataLookUpTable_HeaderFile
-#include <TCollection_ExtendedString.hxx>
-#include <CDM_MetaData.hxx>
#include <TCollection_ExtendedString.hxx>
#include <NCollection_DataMap.hxx>
+class Handle(CDM_MetaData);
+
typedef NCollection_DataMap<TCollection_ExtendedString,Handle(CDM_MetaData),TCollection_ExtendedString> CDM_MetaDataLookUpTable;
typedef NCollection_DataMap<TCollection_ExtendedString,Handle(CDM_MetaData),TCollection_ExtendedString>::Iterator CDM_DataMapIteratorOfMetaDataLookUpTable;
class Storage_StreamWriteError;
class Storage_StreamExtCharParityError;
-class TColStd_SequenceOfExtendedString;
+#include <TColStd_SequenceOfExtendedString.hxx>
-#ifndef Standard_EXPORT
-#ifdef WNT
-#define Standard_EXPORT __declspec(dllexport)
-#else
-#define Standard_EXPORT
-#endif
-#endif
-#ifdef WNT
-#pragma warning (disable : 4275)
-#endif
-
-class Standard_EXPORT DDF_IOStream : public Storage_BaseDriver {
+class DDF_IOStream : public Storage_BaseDriver {
public:
#ifndef Expr_Array1OfNamedUnknown_HeaderFile
#define Expr_Array1OfNamedUnknown_HeaderFile
-#include <Expr_NamedUnknown.hxx>
+#include <Handle_Expr_NamedUnknown.hxx>
#include <NCollection_Array1.hxx>
typedef NCollection_Array1<Handle(Expr_NamedUnknown)> Expr_Array1OfNamedUnknown;
#include <BRepMesh_IncrementalMesh.hxx>
#include <TColStd_SequenceOfInteger.hxx>
#include <Draw_Drawable3D.hxx>
-#include <Handle_Draw_Drawable3D.hxx>
#include <Standard_OStream.hxx>
#include <Draw_Interpretor.hxx>
class TopoDS_Shape;
-class TColStd_SequenceOfInteger;
class Draw_Display;
-class Draw_Drawable3D;
//! A drawable mesh.
//! Provides a mesh object inherited from Drawable3d to draw a triangulation.
#include <Select3D_TypeOfSensitivity.hxx>
class SelectBasics_EntityOwner;
-class TColgp_Array1OfPnt;
-
//! This class provides custom sensitive face, which will be selected if it center is in rectangle.
class MeshVS_SensitiveFace : public Select3D_SensitiveFace
#include <Standard.hxx>
#include <Standard_Type.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
-#include <Handle_TColgp_HArray1OfPnt2d.hxx>
-#include <Handle_MeshVS_HArray1OfSequenceOfInteger.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
+#include <TColgp_HArray1OfPnt2d.hxx>
+#include <MeshVS_HArray1OfSequenceOfInteger.hxx>
#include <gp_XY.hxx>
#include <NCollection_List.hxx>
#include <Select3D_SensitiveEntity.hxx>
#include <Select3D_SensitiveEntity.hxx>
#include <Select3D_BndBox3d.hxx>
-class TColgp_HArray1OfPnt;
-class TColgp_HArray1OfPnt2d;
-class MeshVS_HArray1OfSequenceOfInteger;
class SelectBasics_EntityOwner;
-class TColgp_Array1OfPnt;
class Select3D_SensitiveEntity;
class TopLoc_Location;
-class TColgp_Array1OfPnt2d;
class Bnd_Box2d;
-class TColStd_SequenceOfInteger;
class gp_Lin;
class SelectBasics_ListOfBox2d;
#define MoniTool_DataMapOfTimer_HeaderFile
#include <Standard_CString.hxx>
-#include <MoniTool_Timer.hxx>
#include <MoniTool_MTHasher.hxx>
#include <NCollection_DataMap.hxx>
+class Handle(MoniTool_Timer);
typedef NCollection_DataMap<Standard_CString,Handle(MoniTool_Timer),MoniTool_MTHasher> MoniTool_DataMapOfTimer;
typedef NCollection_DataMap<Standard_CString,Handle(MoniTool_Timer),MoniTool_MTHasher>::Iterator MoniTool_DataMapIteratorOfDataMapOfTimer;
#include <Standard_CString.hxx>
-#include <Handle_TColStd_HArray1OfByte.hxx>
-#include <Handle_TColStd_HArray1OfReal.hxx>
+#include <TColStd_HArray1OfByte.hxx>
+#include <TColStd_HArray1OfReal.hxx>
#include <Quantity_PlaneAngle.hxx>
#include <Quantity_NameOfColor.hxx>
#include <Handle_OpenGl_View.hxx>
#include <Graphic3d_BufferType.hxx>
#include <NCollection_DataMap.hxx>
-class TColStd_Array1OfInteger;
-class TColStd_Array1OfReal;
-class TColStd_Array2OfReal;
-class TColStd_HArray1OfByte;
+#include <TColStd_Array1OfInteger.hxx>
+#include <TColStd_HArray1OfReal.hxx>
+#include <TColStd_Array2OfReal.hxx>
+#include <TColStd_HArray1OfByte.hxx>
+
class Graphic3d_Vector;
class Quantity_Color;
class Graphic3d_Vertex;
class TCollection_ExtendedString;
class Image_PixMap;
-class TColStd_HArray1OfReal;
class Handle(OpenGl_Workspace);
class OpenGl_Element;
class OpenGl_Structure;
class Adaptor3d_Curve;
class TopoDS_Edge;
class TopoDS_Shape;
-class TColgp_SequenceOfPnt;
class Handle(BRepAdaptor_HSurface);
class Handle(Prs3d_Drawer);
#include <Draw_PluginMacro.hxx>
//=======================================================================
-#if ! defined(WNT)
-extern ViewerTest_DoubleMapOfInteractiveAndName& GetMapOfAIS();
-extern Handle(AIS_InteractiveContext)& TheAISContext();
-#else
-Standard_EXPORT ViewerTest_DoubleMapOfInteractiveAndName& GetMapOfAIS();
-Standard_EXPORT Handle(AIS_InteractiveContext)& TheAISContext();
-#endif
+
#include <ViewerTest_DoubleMapOfInteractiveAndName.hxx>
#include <AIS_Trihedron.hxx>
#include <AIS_Axis.hxx>
#include <Geom_Line.hxx>
#include <AIS_Line.hxx>
+Standard_EXPORT ViewerTest_DoubleMapOfInteractiveAndName& GetMapOfAIS();
+Standard_EXPORT Handle(AIS_InteractiveContext)& TheAISContext();
+
//==============================================================================
// function : VTrihedronOrigins
// author : ota
FILES
QANCollection.cdl
QANCollection.cxx
-QANCollection_Simple.cxx
QANCollection_Test.cxx
QANCollection_Perf.cxx
QANCollection_Alloc.cxx
imported DoubleMapIteratorOfDoubleMapOfRealInteger;
Commands(DI : in out Interpretor from Draw);
- CommandsSimple(DI : in out Interpretor from Draw);
CommandsTest(DI : in out Interpretor from Draw);
CommandsPerf(DI : in out Interpretor from Draw);
CommandsAlloc(DI : in out Interpretor from Draw);
void QANCollection::Commands (Draw_Interpretor& theCommands)
{
- QANCollection::CommandsSimple (theCommands);
QANCollection::CommandsTest (theCommands);
QANCollection::CommandsPerf (theCommands);
QANCollection::CommandsAlloc (theCommands);
+++ /dev/null
-// Created on: 2004-03-05
-// Created by: Mikhail KUZMITCHEV
-// Copyright (c) 2004-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.
-
-#include <QANCollection.hxx>
-#include <Draw_Interpretor.hxx>
-
-#include <OSD_PerfMeter.hxx>
-
-#include <TColgp_Array1OfPnt.hxx>
-#include <TColgp_SequenceOfPnt.hxx>
-
-#include <NCollection_Sequence.hxx>
-#include <NCollection_Array1.hxx>
-#include <NCollection_IncAllocator.hxx>
-
-typedef NCollection_Array1<gp_Pnt> MyArray1;
-typedef NCollection_Sequence<gp_Pnt> MySequence;
-
-const Standard_Integer REPEAT = 100;
-
-static void printAllMeters (Draw_Interpretor& theDI)
-{
- char buffer[25600];
- perf_sprint_all_meters (buffer, 25600 - 1, 1);
- theDI << buffer;
-}
-
-static void createArray (TColgp_Array1OfPnt& anArrPnt)
-{
- OSD_PerfMeter aPerfMeter("Create array");
-
- for (Standard_Integer j = 0; j < 2*REPEAT; j++) {
- PERF_START_METER("Create array")
- for (Standard_Integer i = anArrPnt.Lower(); i <= anArrPnt.Upper(); i++)
- anArrPnt(i).SetCoord ((double)i, (double)(i+1), (double)(i+2));
- PERF_STOP_METER("Create array")
- }
-}
-
-static void createSequence (TColgp_SequenceOfPnt& aSeq)
-{
- for (Standard_Integer j = 0; j < REPEAT; j++) {
- PERF_START_METER("Clear sequence")
- aSeq.Clear();
- PERF_STOP_METER("Clear sequence")
- PERF_START_METER("Create sequence")
- for (Standard_Integer i = 0; i < 100000; i++)
- aSeq.Append (gp_Pnt((double)i, (double)(i+1), (double)(i+2)));
- PERF_STOP_METER("Create sequence")
- }
-}
-
-static void createSequence (MySequence& aSeq)
-{
- for (Standard_Integer j = 0; j < REPEAT; j++) {
- PERF_START_METER("Clear sequence")
- aSeq.Clear();
- PERF_STOP_METER("Clear sequence")
- PERF_START_METER("Create sequence")
- for (Standard_Integer i = 0; i < 100000; i++)
- aSeq.Append (gp_Pnt((double)i, (double)(i+1), (double)(i+2)));
- PERF_STOP_METER("Create sequence")
- }
-}
-
-static void assignSequence (TColgp_SequenceOfPnt& aDest,
- const TColgp_SequenceOfPnt& aSrc)
-{
- for (Standard_Integer i = 0; i < REPEAT; i++) {
- PERF_START_METER("Assign sequence to sequence")
- aDest = aSrc;
- PERF_STOP_METER("Assign sequence to sequence")
- }
-}
-
-static void assignSequence (MySequence& aDest, const MySequence& aSrc)
-{
- for (Standard_Integer i = 0; i < REPEAT; i++) {
- PERF_START_METER("Assign sequence to sequence")
- aDest = aSrc;
- PERF_STOP_METER("Assign sequence to sequence")
- }
-}
-
-static void createArray (MyArray1& anArrPnt)
-{
- for (Standard_Integer j = 0; j < 2*REPEAT; j++) {
- PERF_START_METER("Create array")
- for (Standard_Integer i = anArrPnt.Lower(); i <= anArrPnt.Upper(); i++)
- anArrPnt(i).SetCoord ((double)i, (double)(i+1), (double)(i+2));
- PERF_STOP_METER("Create array")
- }
-}
-
-static void assignArray (TColgp_Array1OfPnt& aDest, const TColgp_Array1OfPnt& aSrc)
-{
- for (Standard_Integer i = 0; i < 2*REPEAT; i++) {
- PERF_START_METER("Assign array to array")
- aDest = aSrc;
- PERF_STOP_METER("Assign array to array")
- }
-}
-
-template <class MyBaseCollPnt>
-void assignCollection (MyBaseCollPnt& aDest,
- const MyBaseCollPnt& aSrc,
- const char * MeterName)
-{
- for (Standard_Integer i = 0; i < REPEAT; i++) {
- perf_start_meter (MeterName);
- aDest.Assign(aSrc);
- perf_stop_meter (MeterName);
- }
-}
-
-static void assignArray (MyArray1& aDest, const MyArray1& aSrc)
-{
- for (Standard_Integer i = 0; i < 2*REPEAT; i++) {
- PERF_START_METER("Assign array to array")
- aDest = aSrc;
- PERF_STOP_METER("Assign array to array")
- }
-}
-
-static void checkArray (Draw_Interpretor& theDI, const Standard_Boolean isNewColl)
-{
- if (isNewColl) {
- MyArray1 anArrPnt (1, 100000), anArrPnt1 (1, 100000);
- createArray (anArrPnt);
- assignArray (anArrPnt1, anArrPnt);
- assignCollection (anArrPnt1, anArrPnt, "Assign collect to array");
- } else {
- TColgp_Array1OfPnt anArrPnt (1,100000), anArrPnt1 (1, 100000);
- createArray (anArrPnt);
- assignArray (anArrPnt1, anArrPnt);
- }
- printAllMeters (theDI);
-}
-
-static void checkSequence (Draw_Interpretor& theDI,
- const Standard_Boolean isNewColl,
- const Standard_Boolean isIncr)
-{
- if (isNewColl) {
- Handle(NCollection_BaseAllocator) anAlloc[2];
- if (isIncr) {
- anAlloc[0] = new NCollection_IncAllocator;
- anAlloc[1] = new NCollection_IncAllocator;
- }
- MySequence aSeqPnt (anAlloc[0]), aSeqPnt1(anAlloc[1]);
- createSequence (aSeqPnt);
- assignSequence (aSeqPnt1, aSeqPnt);
- assignCollection (aSeqPnt1, aSeqPnt, "Assign collect to sequence");
- } else {
- TColgp_SequenceOfPnt aSeqPnt, aSeqPnt1;
- createSequence (aSeqPnt);
- assignSequence (aSeqPnt1, aSeqPnt);
- }
- printAllMeters (theDI);
-}
-
-//=======================================================================
-//function : QANColCheckArray1
-//purpose :
-//=======================================================================
-static Standard_Integer QANColCheckArray1(Draw_Interpretor& di, Standard_Integer argc, const char ** argv)
-{
- if ( argc > 2) {
- di << "Usage : " << argv[0] << " [-n]" << "\n";
- return 1;
- }
-
- Standard_Boolean isNewColl = Standard_False;
- if (argc > 1) {
- if (strcmp (argv[1], "-n") == 0) isNewColl = Standard_True;
- }
- checkArray (di, isNewColl);
- return 0;
-}
-
-//=======================================================================
-//function : QANColCheckSequence
-//purpose :
-//=======================================================================
-static Standard_Integer QANColCheckSequence(Draw_Interpretor& di, Standard_Integer argc, const char ** argv)
-{
- if ( argc > 2) {
- di << "Usage : " << argv[0] << " [-n]/[-ni]/[-in]" << "\n";
- return 1;
- }
-
- Standard_Boolean isNewColl = Standard_False, isIncr = Standard_False;
- if (argc > 1) {
- if (strcmp (argv[1], "-n") == 0) isNewColl = Standard_True;
- if (strcmp (argv[1], "-ni") == 0 || strcmp (argv[1], "-in") == 0)
- {
- isNewColl = Standard_True;
- isIncr = Standard_True;
- }
- }
- checkSequence (di, isNewColl, isIncr);
- return 0;
-}
-
-void QANCollection::CommandsSimple(Draw_Interpretor& theCommands) {
- const char *group = "QANCollection";
-
- // from agvCollTest/src/AgvColEXE/TestEXE.cxx
- theCommands.Add("QANColCheckArray1", "QANColCheckArray1 [-n]", __FILE__, QANColCheckArray1, group);
- theCommands.Add("QANColCheckSequence", "QANColCheckSequence [-n]/[-ni]/[-in]", __FILE__, QANColCheckSequence, group);
-
- return;
-}
#include <NCollection_Vector.hxx>
#include <Handle_SelectBasics_EntityOwner.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
-#include <Handle_TColStd_HArray1OfInteger.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
+#include <TColStd_HArray1OfInteger.hxx>
#include <Select3D_SensitivePoly.hxx>
#include <Select3D_SensitiveSet.hxx>
class gp_Pnt;
class SelectBasics_EntityOwner;
-class TColgp_Array1OfPnt;
-class TColgp_HArray1OfPnt;
-class TColStd_HArray1OfInteger;
typedef NCollection_Vector<Handle(Select3D_SensitivePoly)> Select3D_VectorOfHPoly;
#include <Select3D_Pnt.hxx>
#include <Handle_Geom_Circle.hxx>
#include <Handle_SelectBasics_EntityOwner.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
#include <SelectMgr_SelectingVolumeManager.hxx>
#include <Select3D_TypeOfSensitivity.hxx>
class Standard_ConstructionError;
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
-class TColgp_HArray1OfPnt;
-class TColgp_Array1OfPnt;
class gp_Pnt;
class TopLoc_Location;
#include <Handle_Geom_Curve.hxx>
#include <Select3D_SensitivePoly.hxx>
#include <Handle_SelectBasics_EntityOwner.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
#include <Standard_Boolean.hxx>
#include <SelectMgr_SelectingVolumeManager.hxx>
#include <Standard_Real.hxx>
class Standard_ConstructionError;
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
-class TColgp_HArray1OfPnt;
-class TColgp_Array1OfPnt;
class Select3D_SensitiveEntity;
class TopLoc_Location;
#include <Select3D_TypeOfSensitivity.hxx>
#include <Select3D_SensitiveSet.hxx>
#include <Handle_SelectBasics_EntityOwner.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
#include <Standard_Boolean.hxx>
#include <SelectBasics_SelectingVolumeManager.hxx>
#include <Standard_Real.hxx>
class Standard_ConstructionError;
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
-class TColgp_Array1OfPnt;
-class TColgp_HArray1OfPnt;
class TopLoc_Location;
#include <Standard_Type.hxx>
#include <TColStd_HArray1OfInteger.hxx>
-#include <Handle_TColgp_HArray1OfPnt.hxx>
-#include <Handle_TColStd_HArray1OfInteger.hxx>
+#include <TColgp_HArray1OfPnt.hxx>
#include <Select3D_PointData.hxx>
#include <Select3D_Pnt.hxx>
class Standard_ConstructionError;
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
-class TColgp_Array1OfPnt;
-class TColgp_HArray1OfPnt;
//! Sensitive Entity to make a face selectable.
//! In some cases this class can raise Standard_ConstructionError and
class SelectBasics_EntityOwner;
class gp_Pnt;
class TopLoc_Location;
-class TColgp_Array1OfPnt2d;
-
//! A framework to define sensitive zones along a segment
//! One gives the 3D start and end point
class Standard_OutOfRange;
class SelectBasics_EntityOwner;
class gp_Pnt;
-class TColgp_Array1OfPnt2d;
class Select3D_SensitiveEntity;
class TopLoc_Location;
#include <gp_Trsf.hxx>
#include <gp_Pnt.hxx>
#include <TColStd_HArray1OfInteger.hxx>
-#include <Handle_TColStd_HArray1OfInteger.hxx>
+#include <TColStd_HArray1OfInteger.hxx>
#include <Standard_Boolean.hxx>
#include <TColgp_HArray1OfPnt.hxx>
#include <Select3D_SensitiveEntity.hxx>
#include <NCollection_Handle.hxx>
class Poly_Triangulation;
-class TColStd_HArray1OfInteger;
class SelectBasics_EntityOwner;
class TopLoc_Location;
class gp_Pnt;
class Select3D_SensitiveEntity;
class Handle(Select3D_SensitiveEntity);
-class TColgp_Array1OfPnt2d;
//! A framework to define selection of a sensitive entity made of a set of triangles.
class Select3D_SensitiveTriangulation : public Select3D_SensitiveSet
class Bnd_Box;
class gp_Pnt;
-class TColgp_Array1OfPnt;
//! This class provides an interface for selecting volume manager,
//! which is responsible for all overlap detection methods and
#include <NCollection_DataMap.hxx>
#include <OSD_Chronometer.hxx>
#include <TColStd_SequenceOfInteger.hxx>
-#include <Handle_TColStd_HArray1OfInteger.hxx>
+#include <TColStd_HArray1OfInteger.hxx>
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <Standard_OStream.hxx>
#include <Handle_SelectBasics_SensitiveEntity.hxx>
-class TColStd_HArray1OfInteger;
class SelectMgr_SelectionManager;
class SelectMgr_Selection;
class SelectMgr_SensitiveEntitySet;
class SelectMgr_EntityOwner;
-class TColStd_ListOfInteger;
class TCollection_AsciiString;
class SelectBasics_SensitiveEntity;
class SelectMgr_SelectableObjectSet;
const TopoDS_Shape& theKey,
const TopoDS_Shape& theItem)
{
- Standard_Address aListPtr = theMap.ChangeFind1 (theKey);
+ TopTools_ListOfShape* aListPtr = theMap.ChangeSeek (theKey);
if (aListPtr == NULL)
{
TopTools_ListOfShape aList;
theMap.Bind (theKey, aList);
}
else
- ((TopTools_ListOfShape*)aListPtr)->Append (theItem);
+ aListPtr->Append (theItem);
}
//=======================================================================
{
if (theItems.IsEmpty()) return;
- Standard_Address aListPtr = theMap.ChangeFind1 (theKey);
+ TopTools_ListOfShape* aListPtr = theMap.ChangeSeek (theKey);
if (aListPtr == NULL)
theMap.Bind (theKey, theItems);
else
- ((TopTools_ListOfShape*)aListPtr)->Append (theItems);
+ aListPtr->Append (theItems);
}
//=======================================================================
if (aFace.ShapeType() != TopAbs_FACE) continue;
// find an outer shell that shares the current face
- Standard_Address anOuterShellPtr = theMapFacesToOuterShells.Find1 (aFace);
+ const TopoDS_Shape* anOuterShellPtr = theMapFacesToOuterShells.Seek (aFace);
if (anOuterShellPtr == NULL) continue;
- const TopoDS_Shape& anOuterShell = *(TopoDS_Shape*)anOuterShellPtr;
+ const TopoDS_Shape& anOuterShell = *anOuterShellPtr;
// add the face area to the sum shared area for the outer shell
Standard_Real anArea = ShapeArea (aFace);
- Standard_Address aSharedAreaPtr = aSharedAreas.ChangeFind1 (anOuterShell);
+ Standard_Real* aSharedAreaPtr = aSharedAreas.ChangeSeek (anOuterShell);
if (aSharedAreaPtr == NULL)
aSharedAreas.Bind (anOuterShell, anArea);
else
- anArea = *(Standard_Real*)aSharedAreaPtr += anArea;
+ anArea = (*aSharedAreaPtr) += anArea;
// if this outer shell currently has maximum shared area,
// remember it and the current solid's shell
}
// classify the face
- Standard_Address anOuterShellPtr = theMapFacesToOuterShells.Find1 (aFace);
+ const TopoDS_Shape* anOuterShellPtr = theMapFacesToOuterShells.Seek (aFace);
if (anOuterShellPtr != NULL)
{
- if (((TopoDS_Shape*)anOuterShellPtr)->IsSame (theBaseShell))
+ if (anOuterShellPtr->IsSame (theBaseShell))
aRemoveFaces.Add (aFace); // face shared with the base shell
else
aBuilder.Add (aNewShell, aFace); // face shared with another outer shell
TopTools_ListOfShape& aShellsToBeMerged =
(TopTools_ListOfShape&)aShellIter.Value();
TopTools_ListOfShape* aShellsToBeAddedPtr =
- (TopTools_ListOfShape*)aShellsToAdd.ChangeFind1 (aBaseShell);
+ aShellsToAdd.ChangeSeek (aBaseShell);
// merge needed shells
TopoDS_Shape aNewShell = MergeShells (aBaseShell, aShellsToBeMerged,
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <Handle_Poly_Triangulation.hxx>
+#include <TColgp_Array1OfDir.hxx>
class TopoDS_Shape;
class Poly_Triangulation;
class TopoDS_Face;
class TopLoc_Location;
class Poly_Connect;
-class TColgp_Array1OfDir;
class StdPrs_ToolShadedShape
{
class Graphic3d_Group;
class Graphic3d_Structure;
class V3d_View;
-class TColgp_Array1OfPnt2d;
class SelectMgr_EntityOwner;
class SelectMgr_SelectableObjectSet;
#ifndef TDF_AttributeIndexedMap_HeaderFile
#define TDF_AttributeIndexedMap_HeaderFile
-#include <TDF_Attribute.hxx>
+#include <Handle_TDF_Attribute.hxx>
#include <TColStd_MapTransientHasher.hxx>
#include <NCollection_IndexedMap.hxx>
imported DataMapOfShapePtrRefShape;
imported DataMapIteratorOfDataMapOfShapePtrRefShape;
-
-
- pointer PtrDataMapOfShapePtrRefShape to DataMapOfShapePtrRefShape from TNaming;
-
---Category: private classes for ANaming
-- ===========================
#include <TNaming_PtrNode.hxx>
#include <TNaming_PtrRefShape.hxx>
#include <TNaming_RefShape.hxx>
-#include <TNaming_PtrDataMapOfShapePtrRefShape.hxx>
#include <TNaming_UsedShapes.hxx>
#include <TNaming_Tool.hxx>
#include <TNaming_Iterator.hxx>
#include <TObj_Common.hxx>
#include <Message_Gravity.hxx>
#include <Message_Messenger.hxx>
+#include <TColStd_SequenceOfExtendedString.hxx>
class Handle(TObj_Application);
-class TColStd_SequenceOfExtendedString;
//!
//! This is a base class for OCAF based TObj models
#define TObj_Assistant_HeaderFile
#include <TObj_Common.hxx>
+#include <TColStd_SequenceOfTransient.hxx>
+#include <TColStd_SequenceOfAsciiString.hxx>
+#include <TColStd_IndexedMapOfTransient.hxx>
class Handle(TObj_Model);
-class TColStd_SequenceOfTransient;
-class TColStd_SequenceOfAsciiString;
-class TColStd_IndexedMapOfTransient;
//! This class provides interface to the static data
//! to be used during save or load models.
---Purpose: Move to the next Interference.
is static;
- Value(me) returns any Interference from TopOpeBRepDS
+ Value(me) returns Interference from TopOpeBRepDS
---Purpose: Returns the current Interference, matching the
-- conditions (if defined).
- ---C++: return &
+ ---C++: return const &
is static;
ChangeIterator(me : in out)
//purpose :
//=======================================================================
-Handle(TopOpeBRepDS_Interference)& TopOpeBRepDS_InterferenceIterator::Value() const
+const Handle(TopOpeBRepDS_Interference)& TopOpeBRepDS_InterferenceIterator::Value() const
{
return myIterator.Value();
}
TopOpeBRepTool_IndexedDataMapOfShapeconnexity.hxx
TopOpeBRepTool_DataMapOfShapeface.hxx
TopOpeBRepTool_DataMapIteratorOfDataMapOfShapeface.hxx
+TopOpeBRepTool_Plos.hxx
imported IndexedDataMapOfSolidClassifier;
- pointer Plos to ListOfShape from TopTools;
+ imported Plos;
class SolidClassifier;
class CurveTool;
TopTools_ListIteratorOfListOfShape itEdg;
#endif
- TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
+ const TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
// the first edge of the list will be replaced by the result fusion edge
if (OldEdge.Orientation()==TopAbs_REVERSED) {
TopTools_ListIteratorOfListOfShape itEdg;
EdgeToSubs.Clear();
- TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
+ const TopoDS_Edge& OldEdge = TopoDS::Edge(LmapEdg.First());
EdgeToSubs.Append(myMapEdg(iLst));
--- /dev/null
+// Created on: 1994-03-10
+// Created by: Jean Yves LEBEY
+// Copyright (c) 1994-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.
+
+#ifndef _TopOpeBRepTool_Plos_HeaderFile
+#define _TopOpeBRepTool_Plos_HeaderFile
+
+#include <TopTools_ListOfShape.hxx>
+
+typedef TopTools_ListOfShape* TopOpeBRepTool_Plos;
+
+#endif // _TopOpeBRepTool_Plos_HeaderFile
#ifndef TopoDS_ListOfShape_HeaderFile
#define TopoDS_ListOfShape_HeaderFile
-#include <TopoDS_Shape.hxx>
#include <NCollection_List.hxx>
+class TopoDS_Shape;
typedef NCollection_List<TopoDS_Shape> TopoDS_ListOfShape;
typedef NCollection_List<TopoDS_Shape>::Iterator TopoDS_ListIteratorOfListOfShape;
#include <Standard_Boolean.hxx>
#include <Handle_MMgt_TShared.hxx>
#include <TopAbs_ShapeEnum.hxx>
-#include <Handle_TopTools_HArray1OfShape.hxx>
+#include <TopTools_HArray1OfShape.hxx>
#include <Handle_AIS_InteractiveObject.hxx>
#include <AIS_KindOfInteractive.hxx>
-#include <Handle_TColStd_HArray1OfTransient.hxx>
+#include <TColStd_HArray1OfTransient.hxx>
#include <Handle_V3d_Viewer.hxx>
#include <Handle_AIS_InteractiveContext.hxx>
#include <Handle_ViewerTest_EventManager.hxx>
class V3d_View;
class MMgt_TShared;
class TopoDS_Shape;
-class TopTools_HArray1OfShape;
class AIS_InteractiveObject;
-class TColStd_HArray1OfTransient;
class V3d_Viewer;
class AIS_InteractiveContext;
class ViewerTest_EventManager;
class ViewerTest_EventManager;
-class ViewerTest_DoubleMapOfInteractiveAndName;
-class ViewerTest_DoubleMapNodeOfDoubleMapOfInteractiveAndName;
-class ViewerTest_DoubleMapIteratorOfDoubleMapOfInteractiveAndName;
class Quantity_Color;
class ViewerTest
//! This method is relevant for MS Windows only and respectively
//! returns WNT_WClass handle.
Standard_EXPORT static const Handle(MMgt_TShared)& WClass();
-
-friend class ViewerTest_EventManager;
-friend class ViewerTest_DoubleMapOfInteractiveAndName;
-friend class ViewerTest_DoubleMapNodeOfDoubleMapOfInteractiveAndName;
-friend class ViewerTest_DoubleMapIteratorOfDoubleMapOfInteractiveAndName;
-
};
#endif // _ViewerTest_HeaderFile
Standard_Boolean Nul, PNul, InterNul, Nuld, Nulf;
- Standard_Real DebNul,FinNul;
- Standard_Integer Indd,Indf;
+ Standard_Real DebNul = 0., FinNul = 0.;
+ Standard_Integer Indd = 0, Indf = 0;
Standard_Real cst,val,valsav=0,valbid;
Standard_Boolean fini;
Standard_Integer Nbp,i;