Geant4-11
xDataTOM_KalbachMann.cc
Go to the documentation of this file.
1/*
2# <<BEGIN-copyright>>
3# <<END-copyright>>
4*/
5#include <string.h>
6
7#include "xDataTOM_private.h"
8
9#if defined __cplusplus
10namespace GIDI {
11using namespace GIDI;
12#endif
13
14char const *xDataTOM_KalbachMann_ID = "KalbachMann";
15
16/*
17************************************************************
18*/
20
21 KalbachMann->coefficients = NULL;
22 KalbachMann->numberOfEnergies = 0;
23 if( ( KalbachMann->coefficients = (xDataTOM_KalbachMannCoefficients *) smr_malloc2( smr, length * sizeof( xDataTOM_KalbachMannCoefficients ), 1, "KalbachMann->coefficients" ) ) == NULL ) return( 1 );
24 if( xDataTOM_subAxes_initialize( smr, &(KalbachMann->subAxes), xDataTOM_subAxesType_proxy, 0, axes, NULL ) != 0 ) {
25 smr_freeMemory( (void **) &(KalbachMann->coefficients) );
26 return( 1 );
27 }
28
29 return( 0 );
30}
31
32/*
33************************************************************
34*/
36
37 if( xDI == NULL ) return( 0 );
38 if( strcmp( xDataTOM_KalbachMann_ID, xDI->ID ) != 0 ) return( 1 );
40 smr_freeMemory( (void **) &(xDI->data) );
41 return( 0 );
42}
43/*
44************************************************************
45*/
47
48 int i;
49
50 xDataTOM_subAxes_release( &(KalbachMann->subAxes) );
51 for( i = 0; i < KalbachMann->numberOfEnergies; i++ ) smr_freeMemory( (void **) &(KalbachMann->coefficients[i].coefficients) );
52 KalbachMann->numberOfEnergies = 0;
53 smr_freeMemory( (void **) &(KalbachMann->coefficients) );
54
55 return( 0 );
56}
57
58#if defined __cplusplus
59}
60#endif
void * smr_freeMemory(void **p)
#define smr_malloc2(smr, size, zero, forItem)
xDataTOM_subAxes subAxes
Definition: xDataTOM.h:140
xDataTOM_KalbachMannCoefficients * coefficients
Definition: xDataTOM.h:141
const char * ID
Definition: xDataTOM.h:151
int xDataTOM_subAxes_release(xDataTOM_subAxes *subAxes)
@ xDataTOM_subAxesType_proxy
Definition: xDataTOM.h:24
int xDataTOM_subAxes_initialize(statusMessageReporting *smr, xDataTOM_subAxes *subAxes, enum xDataTOM_subAxesType type, int offset, xDataTOM_axes *axes, xDataTOM_interpolation *interpolation)
char const * xDataTOM_KalbachMann_ID
int xDataTOM_KalbachMann_release(xDataTOM_KalbachMann *KalbachMann)
int xDataTOM_KalbachMann_initialize(statusMessageReporting *smr, xDataTOM_KalbachMann *KalbachMann, int length, xDataTOM_axes *axes)
int xDataTOM_KalbachMann_free(xDataTOM_xDataInfo *xDI)