#include <sstream>
#include <cstring>
-using VTKToMEDMem::Grp;
-using VTKToMEDMem::Fam;
+using VTKToMEDMemWriter::Grp;
+using VTKToMEDMemWriter::Fam;
using MEDCoupling::MEDFileData;
using MEDCoupling::MEDFileMesh;
using MEDCoupling::Traits;
using MEDCoupling::MLFieldTraits;
+using namespace VTKToMEDMemWriter;
+
///////////////////
Fam::Fam(const std::string& name)
#include "VTKMEDTraits.hxx"
-std::map<int,int> ComputeMapOfType()
+static std::map<int,int> ComputeMapOfType()
{
std::map<int,int> ret;
int nbOfTypesInMC(sizeof(MEDCOUPLING2VTKTYPETRADUCER)/sizeof( decltype(MEDCOUPLING2VTKTYPETRADUCER[0]) ));
return ret;
}
-std::string GetMeshNameWithContext(const std::vector<int>& context)
+static std::string GetMeshNameWithContext(const std::vector<int>& context)
{
static const char DFT_MESH_NAME[]="Mesh";
if(context.empty())
return oss.str();
}
-DataArrayIdType *ConvertVTKArrayToMCArrayInt(vtkDataArray *data)
+static DataArrayIdType *ConvertVTKArrayToMCArrayInt(vtkDataArray *data)
{
if(!data)
throw MZCException("ConvertVTKArrayToMCArrayInt : internal error !");
}
template<class T>
-typename Traits<T>::ArrayType *ConvertVTKArrayToMCArrayDouble(vtkDataArray *data)
+static typename Traits<T>::ArrayType *ConvertVTKArrayToMCArrayDouble(vtkDataArray *data)
{
if(!data)
throw MZCException("ConvertVTKArrayToMCArrayDouble : internal error !");
throw MZCException(oss.str());
}
-DataArrayDouble *ConvertVTKArrayToMCArrayDoubleForced(vtkDataArray *data)
+static DataArrayDouble *ConvertVTKArrayToMCArrayDoubleForced(vtkDataArray *data)
{
if(!data)
throw MZCException("ConvertVTKArrayToMCArrayDoubleForced : internal error 0 !");
throw MZCException("ConvertVTKArrayToMCArrayDoubleForced : unrecognized type of data for double !");
}
-DataArray *ConvertVTKArrayToMCArray(vtkDataArray *data)
+static DataArray *ConvertVTKArrayToMCArray(vtkDataArray *data)
{
if(!data)
throw MZCException("ConvertVTKArrayToMCArray : internal error !");
throw MZCException(oss.str());
}
-MEDCouplingUMesh *BuildMeshFromCellArray(vtkCellArray *ca, DataArrayDouble *coords, int meshDim, INTERP_KERNEL::NormalizedCellType type)
+static MEDCouplingUMesh *BuildMeshFromCellArray(vtkCellArray *ca, DataArrayDouble *coords, int meshDim, INTERP_KERNEL::NormalizedCellType type)
{
MCAuto<MEDCouplingUMesh> subMesh(MEDCouplingUMesh::New("",meshDim));
subMesh->setCoords(coords); subMesh->allocateCells();
return subMesh.retn();
}
-MEDCouplingUMesh *BuildMeshFromCellArrayTriangleStrip(vtkCellArray *ca, DataArrayDouble *coords, MCAuto<DataArrayIdType>& ids)
+static MEDCouplingUMesh *BuildMeshFromCellArrayTriangleStrip(vtkCellArray *ca, DataArrayDouble *coords, MCAuto<DataArrayIdType>& ids)
{
MCAuto<MEDCouplingUMesh> subMesh(MEDCouplingUMesh::New("",2));
subMesh->setCoords(coords); subMesh->allocateCells();
}
template<class T>
-void AppendToFields(MEDCoupling::TypeOfField tf, MEDCouplingMesh *mesh, const DataArrayIdType *n2oPtr, typename MEDFileVTKTraits<T>::MCType *dadPtr, MEDFileFields *fs, double timeStep, int tsId)
+static void AppendToFields(MEDCoupling::TypeOfField tf, MEDCouplingMesh *mesh, const DataArrayIdType *n2oPtr, typename MEDFileVTKTraits<T>::MCType *dadPtr, MEDFileFields *fs, double timeStep, int tsId)
{
std::string fieldName(dadPtr->getName());
MCAuto< typename Traits<T>::FieldType > f(Traits<T>::FieldType::New(tf));
fs->pushField(fmts);
}
-void AppendMCFieldFrom(MEDCoupling::TypeOfField tf, MEDCouplingMesh *mesh, MEDFileData *mfd, MCAuto<DataArray> da, const DataArrayIdType *n2oPtr, double timeStep, int tsId)
+static void AppendMCFieldFrom(MEDCoupling::TypeOfField tf, MEDCouplingMesh *mesh, MEDFileData *mfd, MCAuto<DataArray> da, const DataArrayIdType *n2oPtr, double timeStep, int tsId)
{
static const char FAMFIELD_FOR_CELLS[]="FamilyIdCell";
static const char FAMFIELD_FOR_NODES[]="FamilyIdNode";
}
}
-void PutAtLevelDealOrder(MEDFileData *mfd, int meshDimRel, const MicroField& mf, double timeStep, int tsId)
+static void PutAtLevelDealOrder(MEDFileData *mfd, int meshDimRel, const MicroField& mf, double timeStep, int tsId)
{
if(!mfd)
throw MZCException("PutAtLevelDealOrder : internal error !");
}
}
-void AssignSingleGTMeshes(MEDFileData *mfd, const std::vector< MicroField >& ms, double timeStep, int tsId)
+static void AssignSingleGTMeshes(MEDFileData *mfd, const std::vector< MicroField >& ms, double timeStep, int tsId)
{
if(!mfd)
throw MZCException("AssignSingleGTMeshes : internal error !");
}
}
-DataArrayDouble *BuildCoordsFrom(vtkPointSet *ds)
+static DataArrayDouble *BuildCoordsFrom(vtkPointSet *ds)
{
if(!ds)
throw MZCException("BuildCoordsFrom : internal error !");
return ConvertVTKArrayToMCArrayDoubleForced(data);
}
-void AddNodeFields(MEDFileData *mfd, vtkDataSetAttributes *dsa, double timeStep, int tsId)
+static void AddNodeFields(MEDFileData *mfd, vtkDataSetAttributes *dsa, double timeStep, int tsId)
{
if(!mfd || !dsa)
throw MZCException("AddNodeFields : internal error !");
}
}
-std::vector<MCAuto<DataArray> > AddPartFields(const DataArrayIdType *part, vtkDataSetAttributes *dsa)
+static std::vector<MCAuto<DataArray> > AddPartFields(const DataArrayIdType *part, vtkDataSetAttributes *dsa)
{
std::vector< MCAuto<DataArray> > ret;
if(!dsa)
return ret;
}
-std::vector<MCAuto<DataArray> > AddPartFields2(int bg, int end, vtkDataSetAttributes *dsa)
+static std::vector<MCAuto<DataArray> > AddPartFields2(int bg, int end, vtkDataSetAttributes *dsa)
{
std::vector< MCAuto<DataArray> > ret;
if(!dsa)
return ret;
}
-void ConvertFromRectilinearGrid(MEDFileData *ret, vtkRectilinearGrid *ds, const std::vector<int>& context, double timeStep, int tsId)
+static void ConvertFromRectilinearGrid(MEDFileData *ret, vtkRectilinearGrid *ds, const std::vector<int>& context, double timeStep, int tsId)
{
if(!ds || !ret)
throw MZCException("ConvertFromRectilinearGrid : internal error !");
}
}
-void ConvertFromPolyData(MEDFileData *ret, vtkPolyData *ds, const std::vector<int>& context, double timeStep, int tsId)
+static void ConvertFromPolyData(MEDFileData *ret, vtkPolyData *ds, const std::vector<int>& context, double timeStep, int tsId)
{
if(!ds || !ret)
throw MZCException("ConvertFromPolyData : internal error !");
AddNodeFields(ret,ds->GetPointData(),timeStep,tsId);
}
-void ConvertFromUnstructuredGrid(MEDFileData *ret, vtkUnstructuredGrid *ds, const std::vector<int>& context, double timeStep, int tsId)
+static void ConvertFromUnstructuredGrid(MEDFileData *ret, vtkUnstructuredGrid *ds, const std::vector<int>& context, double timeStep, int tsId)
{
if(!ds || !ret)
throw MZCException("ConvertFromUnstructuredGrid : internal error !");
///////////////////
-void WriteMEDFileFromVTKDataSet(MEDFileData *mfd, vtkDataSet *ds, const std::vector<int>& context, double timeStep, int tsId)
+void VTKToMEDMemWriter::WriteMEDFileFromVTKDataSet(MEDFileData *mfd, vtkDataSet *ds, const std::vector<int>& context, double timeStep, int tsId)
{
if(!ds || !mfd)
throw MZCException("Internal error in WriteMEDFileFromVTKDataSet.");
throw MZCException("Unrecognized vtkDataSet ! Sorry ! Try to convert it to UnstructuredGrid to be able to write it !");
}
-void WriteMEDFileFromVTKMultiBlock(MEDFileData *mfd, vtkMultiBlockDataSet *ds, const std::vector<int>& context, double timeStep, int tsId)
+static void WriteMEDFileFromVTKMultiBlock(MEDFileData *mfd, vtkMultiBlockDataSet *ds, const std::vector<int>& context, double timeStep, int tsId)
{
if(!ds || !mfd)
throw MZCException("Internal error in WriteMEDFileFromVTKMultiBlock.");
}
}
-void WriteMEDFileFromVTKGDS(MEDFileData *mfd, vtkDataObject *input, double timeStep, int tsId)
+void VTKToMEDMemWriter::WriteMEDFileFromVTKGDS(MEDFileData *mfd, vtkDataObject *input, double timeStep, int tsId)
{
if(!input || !mfd)
throw MZCException("WriteMEDFileFromVTKGDS : internal error !");
throw MZCException("WriteMEDFileFromVTKGDS : not recognized data type !");
}
-void PutFamGrpInfoIfAny(MEDFileData *mfd, const std::string& meshName, const std::vector<Grp>& groups, const std::vector<Fam>& fams)
+void VTKToMEDMemWriter::PutFamGrpInfoIfAny(MEDFileData *mfd, const std::string& meshName, const std::vector<Grp>& groups, const std::vector<Fam>& fams)
{
if(!mfd)
return ;