1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-04 13:13:25 +03:00

0024002: Overall code and build procedure refactoring -- automatic

Automatic upgrade of OCCT code by command "occt_upgrade . -nocdl":
- WOK-generated header files from inc and sources from drv are moved to src
- CDL files removed
- All packages are converted to nocdlpack
This commit is contained in:
abv
2015-07-12 07:42:38 +03:00
parent 543a996496
commit 42cf5bc1ca
15354 changed files with 623957 additions and 509844 deletions

8
src/XSAlgo/FILES Normal file
View File

@@ -0,0 +1,8 @@
XSAlgo.cxx
XSAlgo.hxx
XSAlgo_AlgoContainer.cxx
XSAlgo_AlgoContainer.hxx
XSAlgo_AlgoContainer.lxx
XSAlgo_Caller.hxx
XSAlgo_ToolContainer.cxx
XSAlgo_ToolContainer.hxx

View File

@@ -1,57 +0,0 @@
-- Created on: 2000-01-19
-- Created by: data exchange team
-- Copyright (c) 2000-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.
package XSAlgo
---Purpose:
uses
MMgt,
Geom,
Geom2d,
TopoDS,
ShapeExtend,
ShapeAnalysis,
ShapeFix,
Transfer,
Message
is
enumeration Caller is
---Purpose: Identifies the caller of the algorithm
DEFAULT,
IGES,
STEP
end Caller;
class ToolContainer;
class AlgoContainer;
---Purpose: Provides initerface to the algorithms from Shape Healing
-- and others for XSTEP processors.
Init;
---Purpose: Creates and initializes default AlgoContainer.
SetAlgoContainer (aContainer: AlgoContainer from XSAlgo);
---Purpose: Sets default AlgoContainer
AlgoContainer returns AlgoContainer from XSAlgo;
---Purpose: Returns default AlgoContainer
end XSAlgo;

View File

@@ -13,10 +13,12 @@
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
#include <XSAlgo.ixx>
#include <Interface_Static.hxx>
#include <ShapeAlgo.hxx>
#include <ShapeProcess_OperLibrary.hxx>
#include <Interface_Static.hxx>
#include <XSAlgo.hxx>
#include <XSAlgo_AlgoContainer.hxx>
static Handle(XSAlgo_AlgoContainer) theContainer;

72
src/XSAlgo/XSAlgo.hxx Normal file
View File

@@ -0,0 +1,72 @@
// Created on: 2000-01-19
// Created by: data exchange team
// Copyright (c) 2000-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 _XSAlgo_HeaderFile
#define _XSAlgo_HeaderFile
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Handle.hxx>
class XSAlgo_AlgoContainer;
class XSAlgo_ToolContainer;
class XSAlgo_AlgoContainer;
class XSAlgo
{
public:
DEFINE_STANDARD_ALLOC
//! Provides initerface to the algorithms from Shape Healing
//! and others for XSTEP processors.
//! Creates and initializes default AlgoContainer.
Standard_EXPORT static void Init();
//! Sets default AlgoContainer
Standard_EXPORT static void SetAlgoContainer (const Handle(XSAlgo_AlgoContainer)& aContainer);
//! Returns default AlgoContainer
Standard_EXPORT static Handle(XSAlgo_AlgoContainer) AlgoContainer();
protected:
private:
friend class XSAlgo_ToolContainer;
friend class XSAlgo_AlgoContainer;
};
#endif // _XSAlgo_HeaderFile

View File

@@ -1,110 +0,0 @@
-- Created on: 2000-01-19
-- Created by: data exchange team
-- Copyright (c) 2000-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.
class AlgoContainer from XSAlgo inherits TShared from MMgt
---Purpose:
uses
Curve from Geom2d,
Surface from Geom,
Edge from TopoDS,
Face from TopoDS,
Shape from TopoDS,
Caller from XSAlgo,
ToolContainer from XSAlgo,
WireData from ShapeExtend,
Wire from ShapeAnalysis,
Wire from ShapeFix,
TransientProcess from Transfer,
FinderProcess from Transfer,
ProgressIndicator from Message
is
Create returns AlgoContainer from XSAlgo;
---Purpose: Empty constructor
SetToolContainer (me: mutable; TC: ToolContainer from XSAlgo);
---C++ : inline
---Purpose: Sets ToolContainer
ToolContainer (me) returns ToolContainer from XSAlgo;
---C++ : inline
---Purpose: Returns ToolContainer
PrepareForTransfer (me) is virtual;
---Purpose: Performs actions necessary for preparing environment
-- for transfer. Empty in Open version.
ProcessShape (me; shape:
Shape from TopoDS;
Prec, MaxTol: Real;
rscfile: CString;
seq: CString;
info: out Transient;
progress: ProgressIndicator from Message = 0)
returns Shape from TopoDS is virtual;
---Purpose: Does shape processing with specified tolerances
-- and returns resulting shape and associated information
-- in the form of Transient.
-- This information should be later transmitted to
-- MergeTransferInfo in order to be recorded in the
-- translation map
--
---Default behaviour:
-- Applies sequence with name identified by parameter named
-- <seq> (see Interface_Static), defined in resource file
-- identified by parameter with name <rscfile>, to shape,
-- and keeps info of substitutions made during the process.
-- The Prec and MaxTol define run-time parameters
-- Runtime.Tolerance and Runtime.MaxTolerance which can be
-- referred from the resource file
-- ("param : &Runtime.Tolerance")
-- In the info returns ShapeProcess_ShapeContext with recorded
-- modifications. If info has already this type on input, uses it.
--
-- If resource file is not found, or sequence is not defined
-- there, performs default fixes:
-- - if <seq> is write.iges.sequence or write.step.sequence, does DirectFaces
-- - if <seq> is read.iges.sequence or read.step.sequence, performs FixShape
CheckPCurve (me; edge : Edge from TopoDS;
face : Face from TopoDS;
preci : Real;
isSeam: Boolean)
returns Boolean is virtual;
---Purpose: Checks quality of pcurve of the edge on the given face,
-- and corrects it if necessary.
---Remark : In Open CASCADE does nothing.
MergeTransferInfo (me; TP : TransientProcess from Transfer;
info: Transient;
startTPitem: Integer = 1) is virtual;
MergeTransferInfo (me; FP : FinderProcess from Transfer;
info: Transient) is virtual;
---Purpose: Updates translation map (TP or FP) with information
-- resulting from ShapeProcessing
-- Parameter startTPitem can be used for optimisation, to
-- restrict modifications to entities stored in TP starting
-- from item startTPitem
fields
myTC : ToolContainer from XSAlgo;
end AlgoContainer;

View File

@@ -13,57 +13,61 @@
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
#include <XSAlgo_AlgoContainer.ixx>
#include <Standard_ErrorHandler.hxx>
#include <Standard_Failure.hxx>
#include <Message_ListOfMsg.hxx>
#include <Message_ListIteratorOfListOfMsg.hxx>
#include <gp_Pnt.hxx>
#include <gp_Pnt2d.hxx>
#include <BRep_Builder.hxx>
#include <BRep_Tool.hxx>
#include <BRepBuilderAPI_MakeEdge.hxx>
#include <Geom2d_Curve.hxx>
#include <Geom_Curve.hxx>
#include <Geom_Surface.hxx>
#include <Geom2d_Curve.hxx>
#include <TopoDS.hxx>
#include <TopoDS_Vertex.hxx>
#include <TopoDS_Iterator.hxx>
#include <TopExp.hxx>
#include <BRep_Tool.hxx>
#include <BRep_Builder.hxx>
#include <BRepBuilderAPI_MakeEdge.hxx>
#include <TopTools_DataMapOfShapeShape.hxx>
#include <TopTools_DataMapIteratorOfDataMapOfShapeShape.hxx>
#include <ShapeProcess.hxx>
#include <ShapeProcess_ShapeContext.hxx>
#include <gp_Pnt.hxx>
#include <gp_Pnt2d.hxx>
#include <Interface_Static.hxx>
#include <Message_ListIteratorOfListOfMsg.hxx>
#include <Message_ListOfMsg.hxx>
#include <Message_Msg.hxx>
#include <Message_ProgressIndicator.hxx>
#include <Resource_Manager.hxx>
#include <ShapeAlgo.hxx>
#include <ShapeAlgo_AlgoContainer.hxx>
#include <ShapeAlgo_ToolContainer.hxx>
#include <ShapeAnalysis_Edge.hxx>
#include <ShapeBuild_Edge.hxx>
#include <ShapeBuild_ReShape.hxx>
#include <ShapeCustom.hxx>
#include <ShapeExtend_DataMapOfShapeListOfMsg.hxx>
#include <ShapeExtend_MsgRegistrator.hxx>
#include <ShapeFix_Shape.hxx>
#include <ShapeBuild_Edge.hxx>
#include <ShapeAnalysis_Edge.hxx>
#include <ShapeFix_Edge.hxx>
#include <UnitsMethods.hxx>
#include <ShapeCustom.hxx>
#include <TransferBRep.hxx>
#include <TransferBRep_ShapeMapper.hxx>
#include <TransferBRep_ShapeBinder.hxx>
#include <ShapeFix_Shape.hxx>
#include <ShapeProcess.hxx>
#include <ShapeProcess_ShapeContext.hxx>
#include <Standard_ErrorHandler.hxx>
#include <Standard_Failure.hxx>
#include <Standard_Transient.hxx>
#include <Standard_Type.hxx>
#include <TopExp.hxx>
#include <TopoDS.hxx>
#include <TopoDS_Edge.hxx>
#include <TopoDS_Face.hxx>
#include <TopoDS_Iterator.hxx>
#include <TopoDS_Shape.hxx>
#include <TopoDS_Vertex.hxx>
#include <TopTools_DataMapIteratorOfDataMapOfShapeShape.hxx>
#include <TopTools_DataMapOfShapeShape.hxx>
#include <Transfer_FinderProcess.hxx>
#include <Transfer_TransientListBinder.hxx>
#include <Resource_Manager.hxx>
#include <Interface_Static.hxx>
#include <Message_Msg.hxx>
#include <Transfer_TransientProcess.hxx>
#include <TransferBRep.hxx>
#include <TransferBRep_ShapeBinder.hxx>
#include <TransferBRep_ShapeMapper.hxx>
#include <UnitsMethods.hxx>
#include <XSAlgo_AlgoContainer.hxx>
#include <XSAlgo_ToolContainer.hxx>
//=======================================================================
//function : XSAlgo_AlgoContainer
//purpose :
//=======================================================================
XSAlgo_AlgoContainer::XSAlgo_AlgoContainer()
{
myTC = new XSAlgo_ToolContainer;

View File

@@ -0,0 +1,106 @@
// Created on: 2000-01-19
// Created by: data exchange team
// Copyright (c) 2000-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 _XSAlgo_AlgoContainer_HeaderFile
#define _XSAlgo_AlgoContainer_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <MMgt_TShared.hxx>
#include <Standard_Real.hxx>
#include <Standard_CString.hxx>
#include <Standard_Boolean.hxx>
#include <Standard_Integer.hxx>
class XSAlgo_ToolContainer;
class TopoDS_Shape;
class Standard_Transient;
class Message_ProgressIndicator;
class TopoDS_Edge;
class TopoDS_Face;
class Transfer_TransientProcess;
class Transfer_FinderProcess;
class XSAlgo_AlgoContainer;
DEFINE_STANDARD_HANDLE(XSAlgo_AlgoContainer, MMgt_TShared)
class XSAlgo_AlgoContainer : public MMgt_TShared
{
public:
//! Empty constructor
Standard_EXPORT XSAlgo_AlgoContainer();
//! Sets ToolContainer
void SetToolContainer (const Handle(XSAlgo_ToolContainer)& TC);
//! Returns ToolContainer
Handle(XSAlgo_ToolContainer) ToolContainer() const;
//! Performs actions necessary for preparing environment
//! for transfer. Empty in Open version.
Standard_EXPORT virtual void PrepareForTransfer() const;
//! Does shape processing with specified tolerances
//! and returns resulting shape and associated information
//! in the form of Transient.
//! This information should be later transmitted to
//! MergeTransferInfo in order to be recorded in the
//! translation map
Standard_EXPORT virtual TopoDS_Shape ProcessShape (const TopoDS_Shape& shape, const Standard_Real Prec, const Standard_Real MaxTol, const Standard_CString rscfile, const Standard_CString seq, Handle(Standard_Transient)& info, const Handle(Message_ProgressIndicator)& progress = 0) const;
//! Checks quality of pcurve of the edge on the given face,
//! and corrects it if necessary.
Standard_EXPORT virtual Standard_Boolean CheckPCurve (const TopoDS_Edge& edge, const TopoDS_Face& face, const Standard_Real preci, const Standard_Boolean isSeam) const;
Standard_EXPORT virtual void MergeTransferInfo (const Handle(Transfer_TransientProcess)& TP, const Handle(Standard_Transient)& info, const Standard_Integer startTPitem = 1) const;
//! Updates translation map (TP or FP) with information
//! resulting from ShapeProcessing
//! Parameter startTPitem can be used for optimisation, to
//! restrict modifications to entities stored in TP starting
//! from item startTPitem
Standard_EXPORT virtual void MergeTransferInfo (const Handle(Transfer_FinderProcess)& FP, const Handle(Standard_Transient)& info) const;
DEFINE_STANDARD_RTTI(XSAlgo_AlgoContainer,MMgt_TShared)
protected:
private:
Handle(XSAlgo_ToolContainer) myTC;
};
#include <XSAlgo_AlgoContainer.lxx>
#endif // _XSAlgo_AlgoContainer_HeaderFile

View File

@@ -0,0 +1,27 @@
// Created on: 2000-01-19
// Created by: data exchange team
// Copyright (c) 2000-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 _XSAlgo_Caller_HeaderFile
#define _XSAlgo_Caller_HeaderFile
//! Identifies the caller of the algorithm
enum XSAlgo_Caller
{
XSAlgo_DEFAULT,
XSAlgo_IGES,
XSAlgo_STEP
};
#endif // _XSAlgo_Caller_HeaderFile

View File

@@ -1,24 +0,0 @@
-- Created on: 2000-01-19
-- Created by: data exchange team
-- Copyright (c) 2000-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.
class ToolContainer from XSAlgo inherits TShared from MMgt
---Purpose: Returns tools used by AlgoContainer
is
Create returns ToolContainer from XSAlgo;
---Purpose: Empty constructor
end ToolContainer;

View File

@@ -13,13 +13,14 @@
// Alternatively, this file may be used under the terms of Open CASCADE
// commercial license or contractual agreement.
#include <XSAlgo_ToolContainer.ixx>
#include <Standard_Type.hxx>
#include <XSAlgo_ToolContainer.hxx>
//=======================================================================
//function : XSAlgo_ToolContainer
//purpose :
//=======================================================================
XSAlgo_ToolContainer::XSAlgo_ToolContainer()
{
}

View File

@@ -0,0 +1,61 @@
// Created on: 2000-01-19
// Created by: data exchange team
// Copyright (c) 2000-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 _XSAlgo_ToolContainer_HeaderFile
#define _XSAlgo_ToolContainer_HeaderFile
#include <Standard.hxx>
#include <Standard_Type.hxx>
#include <MMgt_TShared.hxx>
class XSAlgo_ToolContainer;
DEFINE_STANDARD_HANDLE(XSAlgo_ToolContainer, MMgt_TShared)
//! Returns tools used by AlgoContainer
class XSAlgo_ToolContainer : public MMgt_TShared
{
public:
//! Empty constructor
Standard_EXPORT XSAlgo_ToolContainer();
DEFINE_STANDARD_RTTI(XSAlgo_ToolContainer,MMgt_TShared)
protected:
private:
};
#endif // _XSAlgo_ToolContainer_HeaderFile