Salome HOME
Merge from V5_1_main 14/05/2010
[modules/visu.git] / src / VISU_I / VISU_Tools.h
1 //  Copyright (C) 2007-2010  CEA/DEN, EDF R&D, OPEN CASCADE
2 //
3 //  This library is free software; you can redistribute it and/or
4 //  modify it under the terms of the GNU Lesser General Public
5 //  License as published by the Free Software Foundation; either
6 //  version 2.1 of the License.
7 //
8 //  This library is distributed in the hope that it will be useful,
9 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
10 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 //  Lesser General Public License for more details.
12 //
13 //  You should have received a copy of the GNU Lesser General Public
14 //  License along with this library; if not, write to the Free Software
15 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 //
17 //  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 //
19
20 //  File   : VISU_Tools.h
21 //  Author : Oleg UVAROV
22 //  Module : VISU
23 //
24 #ifndef VISU_TOOLS_H
25 #define VISU_TOOLS_H
26
27 #include "VISUConfig.hh"
28 #include "VISU_I.hxx"
29
30 #include <SALOMEDSClient_Study.hxx>
31
32 class SPlot2d_Curve;
33 class Plot2d_ViewFrame;
34 class SalomeApp_Study;
35 class SalomeApp_Application;
36
37 namespace VISU 
38 {
39   class Gen_i;
40   class Table_i;
41   class Curve_i;
42   class Container_i;
43
44   /*! Display/Erase/Update a curve presentation.
45    *  Parameter \a frame may be NULL, in this case there is only update without display/erase
46    */
47   VISU_I_EXPORT void                                 UpdateCurve( VISU::Curve_i*,
48                                                                   Plot2d_ViewFrame*,
49                                                                   SPlot2d_Curve*,
50                                                                   int theDisplaying );
51
52   VISU_I_EXPORT void                                 PlotTable( SalomeApp_Study*,
53                                                                 Plot2d_ViewFrame*,
54                                                                 VISU::Table_i*,
55                                                                 int theDisplaying );
56
57   VISU_I_EXPORT void                                 PlotCurve( Plot2d_ViewFrame*,
58                                                                 VISU::Curve_i*,
59                                                                 int theDisplaying );
60
61   VISU_I_EXPORT void                                 PlotRemoveCurve(SalomeApp_Application*,
62                                                                      VISU::Curve_i* );
63
64   VISU_I_EXPORT void                                 PlotContainer( Plot2d_ViewFrame*,
65                                                                     VISU::Container_i*,
66                                                                     int theDisplaying );
67
68   VISU_I_EXPORT void                                 CreatePlot( VISU_Gen_i*,
69                                                                  Plot2d_ViewFrame*,
70                                                                  _PTR(SObject) theTableSO );
71 }
72
73 #endif