-// Copyright (C) 2007-2014 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2015 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
#include "MEDFileData.hxx"
-using namespace ParaMEDMEM;
+using namespace MEDCoupling;
MEDFileData *MEDFileData::New(const std::string& fileName)
{
return new MEDFileData;
}
-MEDFileData *MEDFileData::deepCpy() const
+MEDFileData *MEDFileData::deepCopy() const
{
- MEDCouplingAutoRefCountObjectPtr<MEDFileFields> fields;
+ MCAuto<MEDFileFields> fields;
if((const MEDFileFields *)_fields)
- fields=_fields->deepCpy();
- MEDCouplingAutoRefCountObjectPtr<MEDFileMeshes> meshes;
+ fields=_fields->deepCopy();
+ MCAuto<MEDFileMeshes> meshes;
if((const MEDFileMeshes *)_meshes)
- meshes=_meshes->deepCpy();
- MEDCouplingAutoRefCountObjectPtr<MEDFileParameters> params;
+ meshes=_meshes->deepCopy();
+ MCAuto<MEDFileParameters> params;
if((const MEDFileParameters *)_params)
- params=_params->deepCpy();
- MEDCouplingAutoRefCountObjectPtr<MEDFileData> ret=MEDFileData::New();
+ params=_params->deepCopy();
+ MCAuto<MEDFileData> ret(MEDFileData::New());
ret->_fields=fields; ret->_meshes=meshes; ret->_params=params;
return ret.retn();
}
return 0;
}
-std::vector<const BigMemoryObject *> MEDFileData::getDirectChildren() const
+std::vector<const BigMemoryObject *> MEDFileData::getDirectChildrenWithNull() const
{
std::vector<const BigMemoryObject *> ret;
- if((const MEDFileFields *)_fields)
- ret.push_back((const MEDFileFields *)_fields);
- if((const MEDFileMeshes *)_meshes)
- ret.push_back((const MEDFileMeshes *)_meshes);
- if((const MEDFileParameters *)_params)
- ret.push_back((const MEDFileParameters *)_params);
+ ret.push_back((const MEDFileFields *)_fields);
+ ret.push_back((const MEDFileMeshes *)_meshes);
+ ret.push_back((const MEDFileParameters *)_params);
return ret;
-
+
}
+/** Return a borrowed reference (caller is not responsible for object destruction) */
MEDFileFields *MEDFileData::getFields() const
{
return const_cast<MEDFileFields *>(static_cast<const MEDFileFields *>(_fields));
}
+/** Return a borrowed reference (caller is not responsible for object destruction) */
MEDFileMeshes *MEDFileData::getMeshes() const
{
return const_cast<MEDFileMeshes *>(static_cast<const MEDFileMeshes *>(_meshes));
}
+/** Return a borrowed reference (caller is not responsible for object destruction) */
MEDFileParameters *MEDFileData::getParams() const
{
return const_cast<MEDFileParameters *>(static_cast<const MEDFileParameters *>(_params));
std::vector< MEDFileMesh * > meshesImpacted;
std::vector< DataArrayInt * > renumParamsOfMeshImpacted;//same size as meshesImpacted
std::vector< std::vector<int> > oldCodeOfMeshImpacted,newCodeOfMeshImpacted;//same size as meshesImpacted
- std::vector<MEDCouplingAutoRefCountObjectPtr<DataArrayInt> > memSaverIfThrow;//same size as meshesImpacted
+ std::vector<MCAuto<DataArrayInt> > memSaverIfThrow;//same size as meshesImpacted
for(int i=0;i<ms->getNumberOfMeshes();i++)
{
MEDFileMesh *m=ms->getMeshAtPos(i);
MEDFileData::MEDFileData(const std::string& fileName)
try
- {
+{
_fields=MEDFileFields::New(fileName);
_meshes=MEDFileMeshes::New(fileName);
_params=MEDFileParameters::New(fileName);
- }
+}
catch(INTERP_KERNEL::Exception& e)
- {
+{
throw e;
- }
+}
void MEDFileData::write(const std::string& fileName, int mode) const
{