0031501: Foundation Classes, Message_Printer - remove theToPutEndl argument -- prepar...
[occt.git] / src / Interface / Interface_CopyControl.hxx
CommitLineData
42cf5bc1 1// Created on: 1993-04-08
2// Created by: Christian CAILLET
3// Copyright (c) 1993-1999 Matra Datavision
4// Copyright (c) 1999-2014 OPEN CASCADE SAS
5//
6// This file is part of Open CASCADE Technology software library.
7//
8// This library is free software; you can redistribute it and/or modify it under
9// the terms of the GNU Lesser General Public License version 2.1 as published
10// by the Free Software Foundation, with special exception defined in the file
11// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12// distribution for complete text of the license and disclaimer of any warranty.
13//
14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
16
17#ifndef _Interface_CopyControl_HeaderFile
18#define _Interface_CopyControl_HeaderFile
19
20#include <Standard.hxx>
21#include <Standard_Type.hxx>
22
25e59720 23#include <Standard_Transient.hxx>
42cf5bc1 24#include <Standard_Boolean.hxx>
25class Interface_InterfaceError;
26class Standard_Transient;
27
28
29class Interface_CopyControl;
25e59720 30DEFINE_STANDARD_HANDLE(Interface_CopyControl, Standard_Transient)
42cf5bc1 31
32//! This deferred class describes the services required by
33//! CopyTool to work. They are very simple and correspond
34//! basically to the management of an indexed map.
35//! But they can be provided by various classes which can
36//! control a Transfer. Each Starting Entity have at most
37//! one Result (Mapping one-one)
25e59720 38class Interface_CopyControl : public Standard_Transient
42cf5bc1 39{
40
41public:
42
43
44 //! Clears List of Copy Results. Gets Ready to begin another Copy
45 //! Process.
46 Standard_EXPORT virtual void Clear() = 0;
47
48 //! Bind a Result to a Starting Entity identified by its Number
49 Standard_EXPORT virtual void Bind (const Handle(Standard_Transient)& ent, const Handle(Standard_Transient)& res) = 0;
50
51 //! Searches for the Result bound to a Startingf Entity identified
52 //! by its Number.
53 //! If Found, returns True and fills <res>
54 //! Else, returns False and nullifies <res>
55 Standard_EXPORT virtual Standard_Boolean Search (const Handle(Standard_Transient)& ent, Handle(Standard_Transient)& res) const = 0;
56
57
58
59
25e59720 60 DEFINE_STANDARD_RTTIEXT(Interface_CopyControl,Standard_Transient)
42cf5bc1 61
62protected:
63
64
65
66
67private:
68
69
70
71
72};
73
74
75
76
77
78
79
80#endif // _Interface_CopyControl_HeaderFile