Version: 6.3.1

src/VISU_I/VISU_DeformedShapeAndScalarMap_i.hh

Go to the documentation of this file.
00001 // Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // This library is free software; you can redistribute it and/or
00004 // modify it under the terms of the GNU Lesser General Public
00005 // License as published by the Free Software Foundation; either
00006 // version 2.1 of the License.
00007 //
00008 // This library is distributed in the hope that it will be useful,
00009 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011 // Lesser General Public License for more details.
00012 //
00013 // You should have received a copy of the GNU Lesser General Public
00014 // License along with this library; if not, write to the Free Software
00015 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00016 //
00017 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00018 //
00019 
00020 //  VISU OBJECT : interactive object for VISU entities implementation
00021 // File:    VISU_DeformedShapeAndScalarMap_i.hh
00022 // Author:  Eugeny Nikolaev
00023 // Module : VISU
00024 //
00025 #ifndef VISU_DeformedShapeAndScalarMap_i_HeaderFile
00026 #define VISU_DeformedShapeAndScalarMap_i_HeaderFile
00027 
00028 #include "VISU_ScalarMap_i.hh"
00029 
00030 class VISU_DeformedShapeAndScalarMapPL;
00031 
00032 namespace VISU
00033 {
00034   //----------------------------------------------------------------------------  
00036   class VISU_I_EXPORT DeformedShapeAndScalarMap_i : public virtual POA_VISU::DeformedShapeAndScalarMap,
00037                                   public virtual ScalarMap_i
00038   {
00039     static int myNbPresent;
00040     DeformedShapeAndScalarMap_i(const DeformedShapeAndScalarMap_i&);
00041     
00042   public:
00043     //----------------------------------------------------------------------------     
00044     typedef ScalarMap_i TSuperClass;
00045     typedef VISU::DeformedShapeAndScalarMap TInterface;
00046         
00047     explicit
00048     DeformedShapeAndScalarMap_i(EPublishInStudyMode thePublishInStudyModep);
00049     
00050     virtual
00051     ~DeformedShapeAndScalarMap_i();
00052 
00053     virtual
00054     VISU::VISUType
00055     GetType()
00056     { 
00057       return VISU::TDEFORMEDSHAPEANDSCALARMAP;
00058     }
00059     
00060     virtual 
00061     void
00062     SetScale(CORBA::Double theScale);
00063 
00064     virtual
00065     CORBA::Double 
00066     GetScale();
00067 
00068     virtual 
00069     void
00070     SameAs(const Prs3d_i* theOrigin);
00071 
00072     VISU_DeformedShapeAndScalarMapPL* 
00073     GetSpecificPL()
00074     { 
00075       return myDeformedShapeAndScalarMapPL;
00076     }
00077    
00078   protected:
00080     virtual
00081     void
00082     SetField(VISU::PField theField);
00083 
00085     virtual
00086     void
00087     CreatePipeLine(VISU_PipeLine* thePipeLine);
00088 
00090     virtual 
00091     bool 
00092     CheckIsPossible();
00093 
00094   public:
00096     static
00097     size_t
00098     IsPossible(Result_i* theResult, 
00099             const std::string& theMeshName, 
00100             VISU::Entity theEntity,
00101             const std::string& theFieldName, 
00102             CORBA::Long theTimeStampNumber,
00103             bool theIsMemoryCheck);
00104 
00106     virtual
00107     Storable* 
00108     Create(const std::string& theMeshName, 
00109         VISU::Entity theEntity,
00110         const std::string& theFieldName, 
00111         CORBA::Long theTimeStampNumber);
00112 
00114     virtual
00115     void
00116     ToStream(std::ostringstream& theStr);
00117 
00119     virtual
00120     Storable* 
00121     Restore(SALOMEDS::SObject_ptr theSObject,
00122          const Storable::TRestoringMap& theMap);
00123     
00124     static const std::string myComment;
00125 
00126     virtual
00127     const char* 
00128     GetComment() const;
00129 
00130     virtual
00131     QString 
00132     GenerateName();
00133 
00134     virtual
00135     const char* 
00136     GetIconName();
00137     
00138     virtual
00139     VISU_Actor* 
00140     CreateActor();
00141 
00142     virtual
00143     void
00144     UpdateActor(VISU_Actor* theActor) ;
00145 
00146     virtual 
00147     void
00148     SetScalarField(VISU::Entity theEntity,
00149              const char* theFieldName,
00150              CORBA::Long theTimeStampNumber);
00151 
00152     virtual
00153     VISU::Entity
00154     GetScalarEntity();
00155 
00156     virtual
00157     char* 
00158     GetScalarFieldName();
00159 
00160     virtual
00161     CORBA::Long
00162     GetScalarTimeStampNumber();
00163 
00164     virtual 
00165     VISU::PField
00166     GetScalarField();
00167 
00168   private:
00169     VISU_DeformedShapeAndScalarMapPL *myDeformedShapeAndScalarMapPL;
00170 
00171     PField myScalarField;
00172     VISU::Entity myScalarEntity;
00173     std::string myScalarFieldName;
00174     CORBA::Long myScalarTimeStampNumber;
00175   };
00176 }
00177 #endif
Copyright © 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
Copyright © 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS