cangyeone's picture
Publish audited synthetic reproducibility data and independent revision evidence
2b6ccf8 verified
Raw History Blame Contribute Delete
1.6 kB
/*------------------------------------------------------------*/
/** grid memory management routines */
typedef struct gridMem { /* 3D grid data in memory */
GridDesc* pgrid; /* pointer to copy of grid description structure */
void* buffer; /* corresponding buffer (contiguous floats) */
void*** array; /* corresponding array access to buffer */
int grid_read; /* grid read flag = 1 if grid has been read from disk */
int active; /* active flag = 1 if grid is being used in current location */
} GridMemStruct;
/* array of gridMem structure pointers for storing list of grids in memory */
extern GridMemStruct** GridMemList;
extern int GridMemListSize;
extern int GridMemListNumElements;
extern int Num3DGridReadToMemory, MaxNum3DGridMemory;
extern int GridMemListTotalNumElementsAdded;
/* GridLib wrapper functions */
void* NLL_AllocateGrid(GridDesc* pgrid);
void NLL_FreeGrid(GridDesc* pgrid);
void NLL_FreeGridMemory();
void*** NLL_CreateGridArray(GridDesc* pgrid);
void NLL_DestroyGridArray(GridDesc* pgrid);
int NLL_ReadGrid3dBuf(GridDesc* pgrid, FILE* fpio);
GridMemStruct* GridMemList_AddGridDesc(GridDesc* pgrid);
void GridMemList_AddElement(GridMemStruct* pnewGridMemStruct);
void GridMemList_RemoveElementAt(int index);
GridMemStruct* GridMemList_TryToReplaceElementAt(GridMemStruct* pGridMemStruct, GridDesc* pgrid);
GridMemStruct* GridMemList_ElementAt(int index);
int GridMemList_IndexOfGridDesc(int verbose, GridDesc* pgrid);
int GridMemList_NumElements();
/** end of grid memory management routines */
/*------------------------------------------------------------*/