1 // Copyright (C) 2010-2012 CEA/DEN, EDF R&D
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.
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.
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
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 #include "vtkMedProfile.h"
22 #include "vtkObjectFactory.h"
23 #include "vtkMedIntArray.h"
24 #include "vtkMedSetGet.h"
25 #include "vtkMedUtilities.h"
26 #include "vtkMedFile.h"
27 #include "vtkMedDriver.h"
29 vtkCxxSetObjectMacro(vtkMedProfile,Ids,vtkMedIntArray);
30 vtkCxxSetObjectMacro(vtkMedProfile,ParentFile,vtkMedFile);
32 vtkCxxRevisionMacro(vtkMedProfile, "$Revision$");
33 vtkStandardNewMacro(vtkMedProfile);
35 vtkMedProfile::vtkMedProfile()
37 this->NumberOfElement = 0;
40 this->MedIterator = -1;
41 this->GeometryType = MED_NO_GEOTYPE;
42 this->ParentFile = NULL;
45 vtkMedProfile::~vtkMedProfile()
51 int vtkMedProfile::IsLoaded()
53 return this->Ids != NULL && this->Ids->GetNumberOfComponents()
54 == 1 && this->Ids->GetNumberOfTuples() == this->NumberOfElement
55 && this->NumberOfElement > 0;
58 void vtkMedProfile::Load()
60 this->ParentFile->GetMedDriver()->LoadProfile(this);
63 void vtkMedProfile::PrintSelf(ostream& os, vtkIndent indent)
65 this->Superclass::PrintSelf(os, indent);
66 PRINT_IVAR(os, indent, NumberOfElement);
67 PRINT_IVAR(os, indent, MedIterator);
68 PRINT_OBJECT(os, indent, Ids);