Page MenuHomec4science

dumper_C_wrapper.cpp
No OneTemporary

File Metadata

Created
Fri, Sep 13, 09:01

dumper_C_wrapper.cpp

#include "dumper.h"
#include "dumper_paraview.h"
#include "dumper_restart.h"
extern "C" {
#include "dumper_C_wrapper.h"
}
extern "C" DumpHelper * getNewDumperHandle(int dumper_style){
DumpHelper * box;
switch (dumper_style){
case PARAVIEW:
{
DumperParaview * obj = new DumperParaview();
box = (DumpHelper*)malloc(sizeof(DumpHelper));
box->object_ptr = obj;
}
break;
case RESTART:
{
DumperRestart * obj = new DumperRestart();
box = (DumpHelper*)malloc(sizeof(DumpHelper));
box->object_ptr = obj;
}
break;
default:
FATAL("unknown dumper style");
}
return box;
}
extern "C" void Dump(DumpHelper * pH){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->Dump();
}
extern "C" void DumperInit(DumpHelper * pH){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->Init();
}
extern "C" void DumperSetPoints(DumpHelper * pH,double * points,int dimension,int nb,const char * name){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetPoints(points,dimension,nb,name);
}
extern "C" void DumperSetConnectivity(DumpHelper * pH,int * connectivity,int element_type,int nb_elem,int mode){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetConnectivity(connectivity,element_type,nb_elem,mode);
}
extern "C" void DumperAddNodeDataField(DumpHelper * pH,double * data,int dimension,const char * name){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->AddNodeDataField(data,dimension,name);
}
extern "C" void DumperAddElemDataField(DumpHelper * pH,double * data,int dimension,const char * name){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->AddElemDataField(data,dimension,name);
}
extern "C" void DumperSetMode(DumpHelper * pH,int mode){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetMode(mode);
}
extern "C" void DumperSetEmbeddedValue(DumpHelper * pH,const char * name,int value){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetEmbeddedValue(name,value);
}
extern "C" void DumperSetPrefix(DumpHelper * pH,const char * dir){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetPrefix(dir);
}
extern "C" void DumperSetParallelContext(DumpHelper * pH,const int me,const int wld_size){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetParallelContext(me,wld_size);
}
extern "C" void DumperFreeHandle(DumpHelper * pH){
Dumper * ptr = (Dumper *)pH->object_ptr;
delete(ptr);
free(pH);
}
//! set number of filtered elements
extern "C" void DumperSetNumberFilteredElements(DumpHelper * pH,int nb_filtered){
Dumper * ptr = (Dumper *)pH->object_ptr;
ptr->SetNumberFilteredElements(nb_filtered);
}

Event Timeline