diff options
Diffstat (limited to 'src/stage-private.h')
-rw-r--r-- | src/stage-private.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/stage-private.h b/src/stage-private.h new file mode 100644 index 0000000..ac045a4 --- /dev/null +++ b/src/stage-private.h @@ -0,0 +1,23 @@ +#ifndef _STAGE_PRIVATE_H +#define _STAGE_PRIVATE_H + +#include <dll_h/dll.h> + +#include "stage-public.h" + +struct stage_t { + stage_t *parent; /* NULL when root stage */ + dll_t layer; /* node on parent->layers[layer] when parent != NULL */ + dll_t layers[STAGE_LAYERS_MAX]; + char name[STAGE_NAME_MAX]; + float alpha; /* alpha for the stage */ + unsigned active:1; /* stage is active */ + unsigned locked:1; /* stage is locked */ + unsigned dirty:1; /* stage is dirty (since last render) */ + unsigned allocated:1; /* stage is allocated by libstage, needs freeing. */ + + const stage_ops_t *ops; /* ops for operating on this stage's object */ + void *object; /* this stage's object */ +}; + +#endif |