Table of Contents |
---|
3.3.1
...
CHEAT SHEET | |
ITM | IMAS |
---|---|
#include "UALClasses.h" | #include "UALClasses.h" |
using namespace ItmNs; | using namespace IdsNs; |
ItmNs::Itm itm(shot,run,refshot,refrun); | IdsNs::IDS imas(shot,run,refshot,refrun); |
ItmNs::Itm::<cpo_name>Array cpoArray | IdsNs::IDS::<ids_name> ids |
ItmNs::Itm::<cpo_name> cpo | IdsNs::IDS::<ids_name> ids |
3.3.2 CPO/IDS put
...
language | cpp |
---|---|
title | ITM |
linenumbers | true |
...
Method "put"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#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();
} |
...
3.3
...
...
language | cpp |
---|---|
title | ITM |
linenumbers | true |
...
.
...
2 Method "putSlice"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#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();
} |
3.3.
...
language | cpp |
---|---|
title | ITM |
linenumbers | true |
...
3 Method "get"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#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();
} |
3.3.
...
language | cpp |
---|---|
title | ITM |
linenumbers | true |
...
4 Method "getSlice"
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
#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();
} |