Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
xDataTOM_polynomial.cc File Reference
#include <string.h>
#include "xDataTOM_private.h"

Go to the source code of this file.

Functions

int xDataTOM_polynomial_initialize (statusMessageReporting *smr, xDataTOM_polynomial *polynomial, int length, xDataTOM_axes *axes)
 
int xDataTOM_polynomial_free (xDataTOM_xDataInfo *xDI)
 
int xDataTOM_polynomial_release (xDataTOM_polynomial *polynomial)
 
int xDataTOM_polynomial_getData (xDataTOM_polynomial *polynomial, double **data)
 
int xDataTOM_polynomial_getDataFromXDataInfo (xDataTOM_xDataInfo *xDI, double **data)
 

Variables

char const * xDataTOM_polynomial_ID = "polynomial"
 

Function Documentation

◆ xDataTOM_polynomial_free()

int xDataTOM_polynomial_free ( xDataTOM_xDataInfo * xDI)

Definition at line 33 of file xDataTOM_polynomial.cc.

33 {
34
35 if( xDI == NULL ) return( 0 );
36 if( strcmp( xDataTOM_polynomial_ID, xDI->ID ) != 0 ) return( 1 );
38 smr_freeMemory( (void **) &(xDI->data) );
39 return( 0 );
40}
void * smr_freeMemory(void **p)
const char * ID
Definition xDataTOM.h:151
int xDataTOM_polynomial_release(xDataTOM_polynomial *polynomial)
char const * xDataTOM_polynomial_ID

Referenced by xDataTOM_releaseElement().

◆ xDataTOM_polynomial_getData()

int xDataTOM_polynomial_getData ( xDataTOM_polynomial * polynomial,
double ** data )

Definition at line 55 of file xDataTOM_polynomial.cc.

55 {
56
57 *data = polynomial->coefficients;
58 return( polynomial->length );
59}

Referenced by xDataTOM_polynomial_getDataFromXDataInfo().

◆ xDataTOM_polynomial_getDataFromXDataInfo()

int xDataTOM_polynomial_getDataFromXDataInfo ( xDataTOM_xDataInfo * xDI,
double ** data )

Definition at line 63 of file xDataTOM_polynomial.cc.

63 {
64
65 return( xDataTOM_polynomial_getData( (xDataTOM_polynomial *) xDI->data, data ) );
66}
int xDataTOM_polynomial_getData(xDataTOM_polynomial *polynomial, double **data)

◆ xDataTOM_polynomial_initialize()

int xDataTOM_polynomial_initialize ( statusMessageReporting * smr,
xDataTOM_polynomial * polynomial,
int length,
xDataTOM_axes * axes )

Definition at line 19 of file xDataTOM_polynomial.cc.

19 {
20
21 polynomial->length = length;
22 if( ( polynomial->coefficients = (double *) smr_malloc2( smr, length * sizeof( double ), 1, "polynomial->coefficients" ) ) == NULL ) return( 1 );
23 if( xDataTOM_subAxes_initialize( smr, &(polynomial->subAxes), xDataTOM_subAxesType_proxy, 0, axes, NULL ) != 0 ) {
24 smr_freeMemory( (void **) &(polynomial->coefficients) );
25 return( 1 );
26 }
27
28 return( 0 );
29}
#define smr_malloc2(smr, size, zero, forItem)
xDataTOM_subAxes subAxes
Definition xDataTOM.h:146
@ 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)

Referenced by xDataXML_polynomialToTOM().

◆ xDataTOM_polynomial_release()

int xDataTOM_polynomial_release ( xDataTOM_polynomial * polynomial)

Definition at line 44 of file xDataTOM_polynomial.cc.

44 {
45
46 xDataTOM_subAxes_release( &(polynomial->subAxes) );
47 polynomial->length = 0;
48 smr_freeMemory( (void **) &(polynomial->coefficients) );
49
50 return( 0 );
51}
int xDataTOM_subAxes_release(xDataTOM_subAxes *subAxes)

Referenced by xDataTOM_polynomial_free(), and xDataXML_polynomialToTOM().

Variable Documentation

◆ xDataTOM_polynomial_ID

char const* xDataTOM_polynomial_ID = "polynomial"