-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D
+// Copyright (C) 2007-2019 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 <string>
#include <fstream>
#include <iostream>
+#include <sstream>
#include <libxml/tree.h>
#include <libxml/parser.h>
readMEDFileData(filedata);
std::vector<MEDPARTITIONER::ConnectZone*> cz; // to fill from filedata
- std::vector<int*> cellglobal;
- std::vector<int*> nodeglobal;
- std::vector<int*> faceglobal;
- int size = (_collection->getMesh()).size();
+ std::vector<mcIdType*> cellglobal;
+ std::vector<mcIdType*> nodeglobal;
+ std::vector<mcIdType*> faceglobal;
+ std::size_t size = _collection->getMesh().size();
cellglobal.resize(size);
nodeglobal.resize(size);
faceglobal.resize(size);
- for ( int idomain = 0; idomain < size; ++idomain )
+ for ( unsigned int idomain = 0; idomain < size; ++idomain )
{
cellglobal[idomain]=0;
faceglobal[idomain]=0;
int MeshCollectionMedAsciiDriver::read(const char* filename, ParaDomainSelector* domainSelector)
{
//distributed meshes
- std::vector<int*> cellglobal;
- std::vector<int*> nodeglobal;
- std::vector<int*> faceglobal;
+ std::vector<mcIdType*> cellglobal;
+ std::vector<mcIdType*> nodeglobal;
+ std::vector<mcIdType*> faceglobal;
int nbdomain;
//reading ascii master file
*/
void MeshCollectionMedAsciiDriver::write(const char* filename, ParaDomainSelector* domainSelector) const
{
- int nbdomains=_collection->getMesh().size();
+ std::size_t nbdomains=_collection->getMesh().size();
std::vector<std::string> filenames;
filenames.resize(nbdomains);
//loop on the domains
- for (int idomain=0; idomain<nbdomains; idomain++)
+ for (unsigned idomain=0; idomain<nbdomains; idomain++)
{
std::string distfilename;
std::ostringstream suffix;
if ( !domainSelector || domainSelector->isMyDomain( idomain ) )
{
- if ( !_collection->getMesh()[idomain]->getNumberOfCells()==0 ) continue;//empty domain
+ // [ABN] spurious test in 8.2 - fixed as I think it should be:
+ if ( _collection->getMesh()[idomain]->getNumberOfCells() == 0 ) continue;
WriteUMesh(distfilename.c_str(),(_collection->getMesh())[idomain],true);
//writeSubdomain(idomain, nbdomains, distfilename.c_str(), domainSelector);
}
file << "#" << " " << std::endl;
file << _collection->getMesh().size() << " " << std::endl;
- for (int idomain=0; idomain<nbdomains; idomain++)
+ for (std::size_t idomain=0; idomain<nbdomains; idomain++)
file << _collection->getName() <<" "<< idomain+1 << " "
<< (_collection->getMesh())[idomain]->getName() << " localhost "
<< filenames[idomain] << " "<< std::endl;