X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FHDFPersist%2FHDFdataset.cc;h=1d6a698ff1abadc596e50b594e51af46318343de;hb=54c311c4540ce9169bcb2d291f27d222162a04f0;hp=de5d07afa97fe64ed9fd17f3a100037faecf10b2;hpb=e6bfea36374791cd31c274a2f97df90dc60ddaf3;p=modules%2Fkernel.git diff --git a/src/HDFPersist/HDFdataset.cc b/src/HDFPersist/HDFdataset.cc index de5d07afa..1d6a698ff 100644 --- a/src/HDFPersist/HDFdataset.cc +++ b/src/HDFPersist/HDFdataset.cc @@ -1,40 +1,36 @@ -// SALOME HDFPersist : implementation of HDF persitent ( save/ restore ) +// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE // -// Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, +// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License. // +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. // +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + +// SALOME HDFPersist : implementation of HDF persitent ( save/ restore ) // File : HDFdataset.cc // Module : SALOME - -extern "C" -{ +// #include "hdfi.h" #include -} #include "HDFdataset.hxx" #include "HDFcontainerObject.hxx" #include "HDFexception.hxx" #include -using namespace std; herr_t dataset_attr(hid_t loc_id, const char *attr_name, void *operator_data) { @@ -43,7 +39,7 @@ herr_t dataset_attr(hid_t loc_id, const char *attr_name, void *operator_data) return 1; } -HDFdataset::HDFdataset(char *name, HDFcontainerObject *father,hdf_type type, +HDFdataset::HDFdataset(const char *name, HDFcontainerObject *father,hdf_type type, hdf_size dim[], int dimsize, hdf_byte_order order) : HDFinternalObject(name) { @@ -63,10 +59,11 @@ HDFdataset::HDFdataset(char *name, HDFcontainerObject *father,hdf_type type, _dim[i] = dim[i]; _size = _size * _dim[i]; } + _arrayId = -1; } -HDFdataset::HDFdataset(char *name,HDFcontainerObject *father) +HDFdataset::HDFdataset(const char *name,HDFcontainerObject *father) : HDFinternalObject(name) { _father = father; @@ -78,6 +75,7 @@ HDFdataset::HDFdataset(char *name,HDFcontainerObject *father) _byte_order = H5T_ORDER_ERROR; _size = -1; _attribute = NULL; + _arrayId = -1; } HDFdataset::~HDFdataset() @@ -87,7 +85,7 @@ HDFdataset::~HDFdataset() void HDFdataset::CreateOnDisk() { - if ((_id = HDFdatasetCreate(_fid,_name,_type,_dim,_ndim,_byte_order)) < 0) + if ((_id = HDFdatasetCreate(_fid,_name,_type,_dim,_ndim,_byte_order,_arrayId)) < 0) throw HDFexception("Can't create dataset"); } @@ -167,7 +165,7 @@ void HDFdataset::GetDim(hdf_size dim[]) dim[i] = _dim[i]; } -int HDFdataset::GetSize() +hdf_size HDFdataset::GetSize() { int size_type; @@ -230,3 +228,6 @@ char* HDFdataset::GetAttributeName(unsigned idx) return _attribute; } +void HDFdataset::SetArrayId(hdf_idt arrayId) { + _arrayId = arrayId; +}