- refactored common sources into common
git-svn-id: http://moon:8086/svn/mips@197 a8ebac50-d88d-4704-bea3-6648445a41b3
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
#ifndef JMAN_ENGINE_H
|
||||
#define JMAN_ENGINE_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#include <jman/types.h>
|
||||
#include <jman/ri.h>
|
||||
#include <jman/vars.h>
|
||||
#include <jman/object.h>
|
||||
#include <jman/engine.h>
|
||||
#include <jman/graph_state.h>
|
||||
|
||||
#define ENGINE_CONTEXT_LEVEL_MAIN 0
|
||||
#define ENGINE_CONTEXT_LEVEL_SUB 1
|
||||
|
||||
#define ENGINE_CONTEXT_INVALID 0
|
||||
#define ENGINE_CONTEXT_MAIN 1
|
||||
#define ENGINE_CONTEXT_FRAME 2
|
||||
#define ENGINE_CONTEXT_WORLD 3
|
||||
#define ENGINE_CONTEXT_ATTRIBUTE 4
|
||||
#define ENGINE_CONTEXT_TRANSFORM 5
|
||||
#define ENGINE_CONTEXT_SOLID 6
|
||||
#define ENGINE_CONTEXT_OBJECT 7
|
||||
#define ENGINE_CONTEXT_MOTION 8
|
||||
|
||||
extern ri_var_t* V_P;
|
||||
extern ri_var_t* V_PZ;
|
||||
extern ri_var_t* V_PW;
|
||||
extern ri_var_t* V_N;
|
||||
extern ri_var_t* V_NP;
|
||||
extern ri_var_t* V_CS;
|
||||
extern ri_var_t* V_OS;
|
||||
extern ri_var_t* V_S;
|
||||
extern ri_var_t* V_T;
|
||||
extern ri_var_t* V_ST;
|
||||
extern ri_var_t* V_WIDTH;
|
||||
extern ri_var_t* V_CONSTANTWIDTH;
|
||||
|
||||
typedef uint32_t context_t;
|
||||
|
||||
typedef struct _sengine_t
|
||||
{
|
||||
FILE *pFile;
|
||||
RtToken name;
|
||||
context_t *pContext;
|
||||
stack_t *pContext_stack;
|
||||
var_list_t varList;
|
||||
scene_t geometry;
|
||||
scene_t lights;
|
||||
graph_state_t gs;
|
||||
void *pErrorHandler;
|
||||
|
||||
} engine_t;
|
||||
|
||||
// JayMan functions
|
||||
void Engine_init(engine_t *pObj, RtToken name);
|
||||
void Engine_free(engine_t *pObj);
|
||||
void Engine_context_set(engine_t *pObj, uint32_t context, uint32_t level);
|
||||
uint32_t Engine_context_get(engine_t *pObj, uint32_t level);
|
||||
void Engine_context_push(engine_t *pObj);
|
||||
void Engine_context_pop(engine_t *pObj);
|
||||
|
||||
void Engine_Render(engine_t *pObj);
|
||||
void Engine_DeleteScene(engine_t *pObj);
|
||||
void Engine_SceneInfo(engine_t *pObj);
|
||||
|
||||
void* jmalloc(uint32_t size);
|
||||
void jfree(void *pMem);
|
||||
void jstats(void);
|
||||
|
||||
void Tic(double *tic_start);
|
||||
double Toc(double *tic_start);
|
||||
|
||||
#endif // JMAN_ENGINE_H
|
||||
Reference in New Issue
Block a user