Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Functions
xData_2d_xindex_y.cc File Reference
#include <stdlib.h>
#include <limits.h>
#include <ctype.h>
#include "xData.h"

Go to the source code of this file.

Functions

int xData_init_2d_xindex_y (statusMessageReporting *smr, xData_element *element)
 
int xData_is_2d_xindex_y (statusMessageReporting *smr, xDataType *xDT, int setMsg)
 
int xData_isElement_2d_xindex_y (statusMessageReporting *smr, xData_element *element, int setMsg)
 
xData_IntxData_2d_xindex_y_rawIndices (statusMessageReporting *smr, xData_element *element)
 
int xData_2d_xindex_y_free_rawIndices (statusMessageReporting *smr, void *data)
 
double * xData_2d_xindex_y_toXYs (statusMessageReporting *smr, xData_element *element, double *Xs)
 
double * xData_2d_xindex_y_toFilledYs (statusMessageReporting *smr, xData_element *element, double *Xs)
 
int xData_2d_xindex_y_free_toFilledYs (statusMessageReporting *smr, void *data)
 
double * xData_2d_xindex_y_toFilledXYs (statusMessageReporting *smr, xData_element *element, double *Xs)
 

Function Documentation

int xData_2d_xindex_y_free_rawIndices ( statusMessageReporting smr,
void data 
)

Definition at line 170 of file xData_2d_xindex_y.cc.

References xData_free().

170  {
171 
172  xData_free( smr, data );
173  return( 0 );
174 }
void * xData_free(statusMessageReporting *smr, void *p)
Definition: xDataMisc.cc:89
const XML_Char const XML_Char * data
int xData_2d_xindex_y_free_toFilledYs ( statusMessageReporting smr,
void data 
)

Definition at line 209 of file xData_2d_xindex_y.cc.

References xData_free().

209  {
210 
211  xData_free( smr, data );
212  return( 0 );
213 }
void * xData_free(statusMessageReporting *smr, void *p)
Definition: xDataMisc.cc:89
const XML_Char const XML_Char * data
xData_Int* xData_2d_xindex_y_rawIndices ( statusMessageReporting smr,
xData_element element 
)

Definition at line 150 of file xData_2d_xindex_y.cc.

References xDataType_s::data, xData_2d_xindex_y_s::index, xDataType_s::length, xDataType_s::start, xData_malloc2, and xData_element_s::xDataTypeInfo.

150  {
151 /*
152 * Returns NULL if length is 0 or memory could not be allocated.
153 */
154  xDataType *xDT = &(element->xDataTypeInfo);
155  xData_Int i, index = xDT->start, *values;
157 
158  if( xDT->length == 0 ) return( NULL );
159  //if( ( values = xData_malloc2( smr, xDT->length * sizeof( xData_Int ), 0, "values" ) ) == NULL ) return( NULL );
160  if( ( values = (xData_Int*) xData_malloc2( smr, xDT->length * sizeof( xData_Int ), 0, "values" ) ) == NULL ) return( NULL );
161  for( i = 0; i < xDT->length; i++ ) {
162  values[i] = index;
163  index += data[i].index;
164  }
165  return( values );
166 }
xData_Int length
Definition: xData.h:162
xData_Int start
Definition: xData.h:162
#define xData_malloc2(smr, size, zero, forItem)
Definition: xData.h:313
xDataType xDataTypeInfo
Definition: xData.h:187
int xData_Int
Definition: xData.h:50
xData_Int index
Definition: xData.h:102
const XML_Char const XML_Char * data
void * data
Definition: xData.h:163
double* xData_2d_xindex_y_toFilledXYs ( statusMessageReporting smr,
xData_element element,
double *  Xs 
)

Definition at line 217 of file xData_2d_xindex_y.cc.

217  {
218 
219  return( xData_2d_xindex_y_toFilled( smr, element, Xs, 2 ) );
220 }
double* xData_2d_xindex_y_toFilledYs ( statusMessageReporting smr,
xData_element element,
double *  Xs 
)

Definition at line 202 of file xData_2d_xindex_y.cc.

Referenced by tpia_misc_get2dxindex_y_data().

202  {
203 
204  return( xData_2d_xindex_y_toFilled( smr, element, Xs, 1 ) );
205 }
double* xData_2d_xindex_y_toXYs ( statusMessageReporting smr,
xData_element element,
double *  Xs 
)

Definition at line 178 of file xData_2d_xindex_y.cc.

References xDataType_s::data, xData_2d_xindex_y_s::index, xDataType_s::length, xDataType_s::start, xData_2d_xindex_y_s::value, xData_malloc2, and xData_element_s::xDataTypeInfo.

178  {
179 /*
180 * Returns NULL if length is 0 or memory could not be allocated.
181 */
182  xDataType *xDT = &(element->xDataTypeInfo);
183  xData_Int i, index = xDT->start;
184  double *values = NULL, *p;
186 
187  if( xDT->length == 0 ) return( NULL );
188  //if( ( values = xData_malloc2( smr, 2 * xDT->length * sizeof( double ), 0, "values" ) ) == NULL ) return( NULL );
189  if( ( values = (double*) xData_malloc2( smr, 2 * xDT->length * sizeof( double ), 0, "values" ) ) == NULL ) return( NULL );
190  p = values;
191  for( i = 0; i < xDT->length; i++, p++ ) {
192  index += data[i].index;
193  *p = Xs[index];
194  p++;
195  *p = data[i].value;
196  }
197  return( values );
198 }
xData_Int length
Definition: xData.h:162
xData_Int start
Definition: xData.h:162
const char * p
Definition: xmltok.h:285
#define xData_malloc2(smr, size, zero, forItem)
Definition: xData.h:313
xDataType xDataTypeInfo
Definition: xData.h:187
int xData_Int
Definition: xData.h:50
xData_Int index
Definition: xData.h:102
const XML_Char const XML_Char * data
void * data
Definition: xData.h:163
int xData_init_2d_xindex_y ( statusMessageReporting smr,
xData_element element 
)

Definition at line 55 of file xData_2d_xindex_y.cc.

References xDataType_s::data, xDataType_s::element, xDataType_s::release, xDataType_s::status, xDataType_s::toData, xDataType_s::toString, xDataType_s::typeString, xData_twod_xindex_y_ID, xData_xDataType_Ok, xData_xDataTypeConvertAttributes(), and xData_element_s::xDataTypeInfo.

55  {
56 
57  xDataType *xDT = &(element->xDataTypeInfo);
58 
61  xDT->element = element;
62  xDT->toData = toData;
63  xDT->toString = toString;
64  xDT->release = release;
65  xDT->data = NULL;
66  return( xData_xDataTypeConvertAttributes( smr, element ) );
67 }
int xData_xDataTypeConvertAttributes(statusMessageReporting *smr, xData_element *element)
Definition: xData.cc:668
const char *const xData_twod_xindex_y_ID
Definition: xData.h:73
xDT_toStringFunction toString
Definition: xData.h:159
enum xData_xDataType status
Definition: xData.h:155
xDataType xDataTypeInfo
Definition: xData.h:187
xDT_releaseFunction release
Definition: xData.h:160
xData_element * element
Definition: xData.h:157
const char * typeString
Definition: xData.h:156
xDT_toDataFunction toData
Definition: xData.h:158
void * data
Definition: xData.h:163
int xData_is_2d_xindex_y ( statusMessageReporting smr,
xDataType xDT,
int  setMsg 
)

Definition at line 71 of file xData_2d_xindex_y.cc.

References xData_is_xDataType(), and xData_twod_xindex_y_ID.

Referenced by tpia_misc_get2dxindex_y_data(), and xData_isElement_2d_xindex_y().

71  {
72 
73  return( xData_is_xDataType( smr, xDT, xData_twod_xindex_y_ID, setMsg ) );
74 }
int xData_is_xDataType(statusMessageReporting *smr, xDataType *xDT, char const *const type, int setMsg)
Definition: xData.cc:900
const char *const xData_twod_xindex_y_ID
Definition: xData.h:73
int xData_isElement_2d_xindex_y ( statusMessageReporting smr,
xData_element element,
int  setMsg 
)

Definition at line 78 of file xData_2d_xindex_y.cc.

References xData_is_2d_xindex_y(), and xData_element_s::xDataTypeInfo.

78  {
79 
80  return( xData_is_2d_xindex_y( smr, &(element->xDataTypeInfo), setMsg ) );
81 }
xDataType xDataTypeInfo
Definition: xData.h:187
int xData_is_2d_xindex_y(statusMessageReporting *smr, xDataType *xDT, int setMsg)