#include "UALClasses.h"
using namespace IdsNs;
int main(int argc, char *argv[])
{
int number = 10; //number of elements
//Create a new instance of database
IDS imas(123, 1, 123, 1);
imas.create();
IDS::core_profiles ids = imas._core_profiles;
// Mandatory to define this property
ids.ids_properties.homogeneous_time = 1;
// allocate the CPO structures
ids.time.resize(number);
ids.global_quantities.ip.resize(number);
// Fill IDS time-independent fields
ids.ids_properties.comment = "IDS created by C++ PUT";
// Fill IDS time-dependent fields
for(int i=0; i < number; i++)
{
ids.x.y(i) = VALUE(i) ;
// Do not forget time!!
ids.time(i) = TIME;
}
// Save data in the database
ids.put();
// Close the pulse file
imas.close();
}
Code Block
language
cpp
title
IMAS C++ :: putSlice
linenumbers
true
#include "UALClasses.h"
using namespace IdsNs;
int main(int argc, char *argv[])
{
//Create a new instance of database
IDS imas(12, 2, -1, -1);
imas.create();
IDS::core_profiles ids = imas._core_profiles;
//! Mandatory to define this property
ids.ids_properties.homogeneous_time = 1;
// Fill IDS time-independent fields
ids.ids_properties.comment = "IDS created by C++ PUT";
ids.putNonTimed();
// Fill IDS time-dependent fields
ids.global_quantities.ip.resize(1);
ids.global_quantities.ip(0) = VALUE;
// Do not forget time!!
ids.time.resize(1);
ids.time(0) = TIME;
// Save data in the database
ids.putSlice();
// Close the pulse file
imas.close();
}
...
06.2.3.2 "get" and "getSlice" functions
get
getSlice
Code Block
language
cpp
title
IMAS C++ :: get
linenumbers
true
#include "UALClasses.h"
using namespace IdsNs;
int main(int argc, char *argv[])
{
int number;
//Open the database
IdsNs::IDS imas(12, 2, -1, -1);
imas.open(); //Open the database
IdsNs::IDS::core_profiles ids = imas._core_profiles;
ids.get();
number = ids.time.extent(0);
for (int j=0; j< number; j++)
{
printf("Time: %g",ids.time(j));
printf("Value: %g",ids.x.y(j));
}
// Close the pulse file
imas.close();
}
Code Block
language
cpp
title
IMAS C++ :: getSlice
linenumbers
true
#include "UALClasses.h"
using namespace IdsNs;
int main(int argc, char *argv[])
{
//Open the database
IDS imas(12, 2, -1, -1);
imas.open();
IDS::core_profiles ids = imas._core_profiles;
//Get the slice corresponding to the passed time
ids.getSlice(1.0, 2);
printf("Time %g",ids.time(0));
printf("Value: %g",ids.x.y(0));
// Close the pulse file
imas.close();
}