0031687: Draw Harness, ViewerTest - extend command vrenderparams with option updating...
[occt.git] / src / DNaming / DNaming_BoxDriver.hxx
CommitLineData
42cf5bc1 1// Created on: 2009-04-29
2// Created by: Sergey ZARITCHNY <sergey.zaritchny@opencascade.com>
3// Copyright (c) 2009-2014 OPEN CASCADE SAS
4//
5// This file is part of Open CASCADE Technology software library.
6//
7// This library is free software; you can redistribute it and/or modify it under
8// the terms of the GNU Lesser General Public License version 2.1 as published
9// by the Free Software Foundation, with special exception defined in the file
10// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11// distribution for complete text of the license and disclaimer of any warranty.
12//
13// Alternatively, this file may be used under the terms of Open CASCADE
14// commercial license or contractual agreement.
15
16#ifndef _DNaming_BoxDriver_HeaderFile
17#define _DNaming_BoxDriver_HeaderFile
18
19#include <Standard.hxx>
20#include <Standard_Type.hxx>
21
22#include <TFunction_Driver.hxx>
23#include <Standard_Boolean.hxx>
24#include <Standard_Integer.hxx>
25class TFunction_Logbook;
26class TDF_Label;
27class BRepPrimAPI_MakeBox;
28
29
30class DNaming_BoxDriver;
31DEFINE_STANDARD_HANDLE(DNaming_BoxDriver, TFunction_Driver)
32
33
34class DNaming_BoxDriver : public TFunction_Driver
35{
36
37public:
38
39
40 //! Constructor
41 //! validation
42 //! ==========
43 Standard_EXPORT DNaming_BoxDriver();
44
45 //! Validates labels of a function in <log>.
46 //! In regeneration mode this method must be called (by the
47 //! solver) even if the function is not executed, to build
48 //! the valid label scope.
49 //! execution of function
50 //! ======================
f486f64d 51 Standard_EXPORT virtual void Validate (Handle(TFunction_Logbook)& theLog) const Standard_OVERRIDE;
42cf5bc1 52
53 //! Analyse in <log> if the loaded function must be executed
54 //! (i.e.arguments are modified) or not.
55 //! If the Function label itself is modified, the function must
56 //! be executed.
f486f64d 57 Standard_EXPORT virtual Standard_Boolean MustExecute (const Handle(TFunction_Logbook)& theLog) const Standard_OVERRIDE;
42cf5bc1 58
59 //! Execute the function and push in <log> the impacted
60 //! labels (see method SetImpacted).
f486f64d 61 Standard_EXPORT virtual Standard_Integer Execute (Handle(TFunction_Logbook)& theLog) const Standard_OVERRIDE;
42cf5bc1 62
63
64
65
92efcf78 66 DEFINE_STANDARD_RTTIEXT(DNaming_BoxDriver,TFunction_Driver)
42cf5bc1 67
68protected:
69
70
71
72
73private:
74
75
76 Standard_EXPORT void LoadNamingDS (const TDF_Label& theResultLabel, BRepPrimAPI_MakeBox& mkBox) const;
77
78
79
80};
81
82
83
84
85
86
87
88#endif // _DNaming_BoxDriver_HeaderFile