Back to index

salome-gui  6.5.0
OCCViewer_VService.h
Go to the documentation of this file.
00001 // Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00004 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
00005 //
00006 // This library is free software; you can redistribute it and/or
00007 // modify it under the terms of the GNU Lesser General Public
00008 // License as published by the Free Software Foundation; either
00009 // version 2.1 of the License.
00010 //
00011 // This library is distributed in the hope that it will be useful,
00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014 // Lesser General Public License for more details.
00015 //
00016 // You should have received a copy of the GNU Lesser General Public
00017 // License along with this library; if not, write to the Free Software
00018 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00019 //
00020 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00021 //
00022 
00023 #ifndef OCCVIEWER_VSERVICE_H
00024 #define OCCVIEWER_VSERVICE_H
00025 
00026 #ifndef _Handle_V3d_View_HeaderFile
00027 #include <Handle_V3d_View.hxx>
00028 #endif
00029 #ifndef _Standard_Integer_HeaderFile
00030 #include <Standard_Integer.hxx>
00031 #endif
00032 #ifndef _Xw_WindowQuality_HeaderFile
00033 #include <Xw_WindowQuality.hxx>
00034 #endif
00035 #ifndef _Handle_V3d_Viewer_HeaderFile
00036 #include <Handle_V3d_Viewer.hxx>
00037 #endif
00038 #ifndef _Standard_CString_HeaderFile
00039 #include <Standard_CString.hxx>
00040 #endif
00041 #ifndef _Standard_ExtString_HeaderFile
00042 #include <Standard_ExtString.hxx>
00043 #endif
00044 #ifndef _Quantity_Length_HeaderFile
00045 #include <Quantity_Length.hxx>
00046 #endif
00047 #ifndef _Quantity_NameOfColor_HeaderFile
00048 #include <Quantity_NameOfColor.hxx>
00049 #endif
00050 #ifndef _V3d_TypeOfOrientation_HeaderFile
00051 #include <V3d_TypeOfOrientation.hxx>
00052 #endif
00053 #ifndef _Standard_Boolean_HeaderFile
00054 #include <Standard_Boolean.hxx>
00055 #endif
00056 #ifndef _Handle_Graphic2d_View_HeaderFile
00057 #include <Handle_Graphic2d_View.hxx>
00058 #endif
00059 #ifndef _Handle_Aspect_WindowDriver_HeaderFile
00060 #include <Handle_Aspect_WindowDriver.hxx>
00061 #endif
00062 #ifndef _Handle_Aspect_Window_HeaderFile
00063 #include <Handle_Aspect_Window.hxx>
00064 #endif
00065 
00066 class V3d_View;
00067 class V2d_View;
00068 class V3d_Viewer;
00069 class V2d_Viewer;
00070 class Graphic2d_View;
00071 class Aspect_WindowDriver;
00072 
00073 #ifndef _Standard_HeaderFile
00074 #include <Standard.hxx>
00075 #endif
00076 #ifndef _Standard_Macro_HeaderFile
00077 #include <Standard_Macro.hxx>
00078 #endif
00079 
00080 class Standard_EXPORT OCCViewer_VService
00081 {
00082 public:
00083     inline void* operator new(size_t,void* anAddress)
00084     {
00085         return anAddress;
00086     }
00087     inline void* operator new(size_t size)
00088     {
00089         return Standard::Allocate(size);
00090     }
00091     inline void  operator delete(void *anAddress)
00092     {
00093         if ( anAddress ) Standard::Free((Standard_Address&)anAddress);
00094     }
00095 
00096     // STATIC METHODS
00097     static Handle(Aspect_Window) 
00098                     CreateWindow( const Handle(V3d_View)& view,
00099                                   const Standard_Integer hiwin,
00100                                   const Standard_Integer lowin,
00101                                   const Xw_WindowQuality quality );
00102 
00103     static void     SetWindow( const Handle(  V3d_View )& view,
00104                                const Standard_Integer hiwin,
00105                                const Standard_Integer lowin,
00106                                const Xw_WindowQuality quality = Xw_WQ_3DQUALITY );
00107 
00108     static void     SetMagnify( const Handle( V3d_View)& view,
00109                                 const Standard_Integer hiwin,
00110                                 const Standard_Integer lowin,
00111                                 const Handle( V3d_View)& aPreviousView,
00112                                 const Standard_Integer x1,
00113                                 const Standard_Integer y1,
00114                                 const Standard_Integer x2,
00115                                 const Standard_Integer y2,
00116                                 const Xw_WindowQuality quality = Xw_WQ_3DQUALITY );
00117     static Handle_V3d_Viewer
00118                     Viewer3d( const Standard_CString display,
00119                               const Standard_ExtString name,
00120                               const Standard_CString domain = "",
00121                               const Quantity_Length ViewSize = 1000.0,
00122                               const V3d_TypeOfOrientation ViewProj = V3d_XposYnegZpos,
00123                               const Standard_Boolean ComputedMode = Standard_True,
00124                               const Standard_Boolean DefaultComputedMode = Standard_True );
00125 
00126     static Handle_Aspect_WindowDriver
00127                     WindowDriver( const Standard_CString display,
00128                                   const Standard_Integer hiwin,
00129                                   const Standard_Integer lowin,
00130                                   const Quantity_NameOfColor color = Quantity_NOC_GRAY69 );
00131     /*static Handle_Aspect_WindowDriver
00132                     XdpsDriver( const Standard_CString display,
00133                                 const Standard_Integer hiwin,
00134                                 const Standard_Integer lowin,
00135                                 const Quantity_NameOfColor color = Quantity_NOC_GRAY69 );
00136     */
00137     static Handle_Aspect_WindowDriver
00138                     ImageDriver( const Standard_CString display,
00139                                  const Standard_Integer hiwin,
00140                                  const Standard_Integer lowin,
00141                                  const Quantity_NameOfColor color = Quantity_NOC_GRAY69 );
00142 
00143 };
00144 
00145 #endif