diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-04-06 16:37:46 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2017-04-06 16:37:46 +0300 |
commit | a1b8c0bca2a112a451e448accf731c6f6bb30b75 (patch) | |
tree | 5cbd44274a93139d835fb07690db1ebc5ed0664f /source/blender/depsgraph/DEG_depsgraph.h | |
parent | d8f931c9b7db09f969a0a6379782103071e0e9f5 (diff) |
Depsgraph: More type definitions to new depsgraph header
Diffstat (limited to 'source/blender/depsgraph/DEG_depsgraph.h')
-rw-r--r-- | source/blender/depsgraph/DEG_depsgraph.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/source/blender/depsgraph/DEG_depsgraph.h b/source/blender/depsgraph/DEG_depsgraph.h index 130881ea96d..cda8664bc5a 100644 --- a/source/blender/depsgraph/DEG_depsgraph.h +++ b/source/blender/depsgraph/DEG_depsgraph.h @@ -66,6 +66,35 @@ struct Main; struct PointerRNA; struct PropertyRNA; +/* Dependency graph evaluation context + * + * This structure stores all the local dependency graph data, + * which is needed for it's evaluation, + */ +typedef struct EvaluationContext { + int mode; /* evaluation mode */ + float ctime; /* evaluation time */ +} EvaluationContext; + +typedef enum eEvaluationMode { + DAG_EVAL_VIEWPORT = 0, /* evaluate for OpenGL viewport */ + DAG_EVAL_PREVIEW = 1, /* evaluate for render with preview settings */ + DAG_EVAL_RENDER = 2, /* evaluate for render purposes */ +} eEvaluationMode; + +/* DagNode->eval_flags */ +enum { + /* Regardless to curve->path animation flag path is to be evaluated anyway, + * to meet dependencies with such a things as curve modifier and other guys + * who're using curve deform, where_on_path and so. + */ + DAG_EVAL_NEED_CURVE_PATH = 1, + /* Scene evaluation would need to have object's data on CPU, + * meaning no GPU shortcuts is allowed. + */ + DAG_EVAL_NEED_CPU = 2, +}; + #ifdef __cplusplus extern "C" { #endif |