Renderer/src/main/c/includes/environment.h
austin a9c7118ac5
All checks were successful
studiorailgun/Renderer/pipeline/head This commit looks good
moving native code around
2024-12-03 12:38:40 -05:00

56 lines
1.1 KiB
C

#include <jni.h>
#ifndef ENVIRONMENT_H
#define ENVIRONMENT_H
/**
* The List lookup table
*/
typedef struct {
jmethodID jListSize;
jmethodID jListGet;
jmethodID jListAdd;
} ListLookupTable;
/**
* The ServerFluidChunk lookup table
*/
typedef struct {
jfieldID dJId;
jfieldID d0JId;
jfieldID uJId;
jfieldID vJId;
jfieldID wJId;
jfieldID u0JId;
jfieldID v0JId;
jfieldID w0JId;
jfieldID neighborsId;
jfieldID chunkmaskJId;
jfieldID updatedId;
jfieldID totalDensityId;
jfieldID asleepId;
jfieldID homogenousId;
jfieldID normalizationRatioId;
} ServerFluidChunkLookupTable;
/**
* Lookup table for various java fields, methods, etc
*/
typedef struct {
ListLookupTable listTable;
ServerFluidChunkLookupTable serverFluidChunkTable;
jclass serverFluidChunkClass;
} JNILookupTable;
/**
* Stores data about the simulation environment
*/
typedef struct {
JNILookupTable lookupTable;
float gravity;
double existingDensity;
double newDensity;
float normalizationRatio;
} Environment;
#endif