Page MenuHomec4science

reader_C_wrapper.cpp
No OneTemporary

File Metadata

Created
Wed, Oct 9, 05:47

reader_C_wrapper.cpp

#include "reader.h"
#include "reader_restart.h"
extern "C" {
#include "reader_C_wrapper.h"
}
extern "C" ReadHelper * getNewReaderHandle(int reader_style){
ReadHelper * box;
switch (reader_style){
case RESTART:
{
ReaderRestart * obj = new ReaderRestart();
box = (ReadHelper*)malloc(sizeof(ReadHelper));
box->object_ptr = obj;
}
break;
default:
FATAL("unknown reader style");
}
return box;
}
extern "C" void Read(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->Read();
}
extern "C" void ReaderInit(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->Init();
}
extern "C" void ReaderSetPoints(ReadHelper * pH,const char * name){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->SetPoints(name);
}
extern "C" void ReaderSetConnectivity(ReadHelper * pH,int element_type){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->SetConnectivity(element_type);
}
extern "C" void ReaderAddNodeDataField(ReadHelper * pH,const char * name){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->AddNodeDataField(name);
}
extern "C" void ReaderAddElemDataField(ReadHelper * pH,const char * name){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->AddElemDataField(name);
}
extern "C" void ReaderSetPrefix(ReadHelper * pH,const char * dir){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->SetPrefix(dir);
}
extern "C" void ReaderSetParallelContext(ReadHelper * pH,const int me,const int wld_size){
Reader * ptr = (Reader *)pH->object_ptr;
ptr->SetParallelContext(me,wld_size);
}
extern "C" void ReaderFreeHandle(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
delete(ptr);
free(pH);
}
extern "C" double * ReaderGetPoints(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetPoints();
}
extern "C" int * ReaderGetConnectivity(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetConnectivity();
}
extern "C" double * ReaderGetNodeDataField(ReadHelper * pH,const char * name){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetNodeDataField(name);
}
extern "C" double * ReaderGetElemDataField(ReadHelper * pH,const char * name){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetElemDataField(name);
}
extern "C" int ReaderGetNumberNodes(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetNumberNodes();
}
extern "C" int ReaderGetNumberElements(ReadHelper * pH){
Reader * ptr = (Reader *)pH->object_ptr;
return ptr->GetNumberElements();
}

Event Timeline