0030686: Visualization, SelectMgr_ViewerSelector - sorting issues of transformation...
[occt.git] / src / BRepAlgoAPI / BRepAlgoAPI_Algo.hxx
CommitLineData
42cf5bc1 1// Created by: Peter KURNEV
2// Copyright (c) 2014 OPEN CASCADE SAS
3//
4// This file is part of Open CASCADE Technology software library.
5//
6// This library is free software; you can redistribute it and/or modify it under
7// the terms of the GNU Lesser General Public License version 2.1 as published
8// by the Free Software Foundation, with special exception defined in the file
9// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
10// distribution for complete text of the license and disclaimer of any warranty.
11//
12// Alternatively, this file may be used under the terms of Open CASCADE
13// commercial license or contractual agreement.
14
15#ifndef _BRepAlgoAPI_Algo_HeaderFile
16#define _BRepAlgoAPI_Algo_HeaderFile
17
18#include <Standard.hxx>
19#include <Standard_DefineAlloc.hxx>
20#include <Standard_Handle.hxx>
21
1155d05a 22#include <NCollection_BaseAllocator.hxx>
42cf5bc1 23#include <Standard_Integer.hxx>
24#include <Standard_Boolean.hxx>
25#include <BRepBuilderAPI_MakeShape.hxx>
33ba8565 26#include <BOPAlgo_Options.hxx>
42cf5bc1 27class Message_ProgressIndicator;
28class TopoDS_Shape;
29
30
33ba8565 31//! Provides the root interface for the API algorithms
32
33class BRepAlgoAPI_Algo : public BRepBuilderAPI_MakeShape,
34 protected BOPAlgo_Options
42cf5bc1 35{
36public:
37
38 DEFINE_STANDARD_ALLOC
39
ecac41a9 40 Standard_EXPORT virtual const TopoDS_Shape& Shape() Standard_OVERRIDE;
42cf5bc1 41
33ba8565 42 // Provide access to methods of protected base class BOPAlgo_Options
43 // (inherited as protected to avoid problems with SWIG wrapper)
44 using BOPAlgo_Options::Clear;
45 using BOPAlgo_Options::SetRunParallel;
46 using BOPAlgo_Options::RunParallel;
47 using BOPAlgo_Options::SetFuzzyValue;
48 using BOPAlgo_Options::FuzzyValue;
49 using BOPAlgo_Options::HasErrors;
50 using BOPAlgo_Options::HasWarnings;
51 using BOPAlgo_Options::HasError;
52 using BOPAlgo_Options::HasWarning;
53 using BOPAlgo_Options::DumpErrors;
54 using BOPAlgo_Options::DumpWarnings;
55 using BOPAlgo_Options::ClearWarnings;
56 using BOPAlgo_Options::GetReport;
57 using BOPAlgo_Options::SetProgressIndicator;
944768d2 58 using BOPAlgo_Options::SetUseOBB;
42cf5bc1 59
60protected:
61
42cf5bc1 62 //! Empty constructor
63 Standard_EXPORT BRepAlgoAPI_Algo();
42cf5bc1 64
33ba8565 65 //! Destructor
66 Standard_EXPORT virtual ~BRepAlgoAPI_Algo();
42cf5bc1 67
33ba8565 68 //! Empty constructor
1155d05a 69 Standard_EXPORT BRepAlgoAPI_Algo(const Handle(NCollection_BaseAllocator)& theAllocator);
42cf5bc1 70
71private:
72
42cf5bc1 73};
74
42cf5bc1 75#endif // _BRepAlgoAPI_Algo_HeaderFile