diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-04-18 12:25:31 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-04-18 12:25:31 +0300 |
commit | 7cdc0b76aa976d7e6f7abd97ceb75529cf9a785b (patch) | |
tree | 386aa7bd99a4ec955bd982bcd2772687d46eb951 /source/blender/makesdna | |
parent | 05ef225272366f754a56ef5bfe63405f6af01729 (diff) |
Make depsgraph tag for auto-override IDs it updates.
This will reduce amount of needless auto-override checks, at least when
not touching anything related to overriding IDs...
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r-- | source/blender/makesdna/DNA_ID.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index d53f290e606..f192c9ea75a 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -387,6 +387,10 @@ typedef enum ID_Type { #define ID_IS_STATIC_OVERRIDE_TEMPLATE(_id) (((ID *)(_id))->override_static != NULL && \ ((ID *)(_id))->override_static->reference == NULL) +#define ID_IS_STATIC_OVERRIDE_AUTO(_id) (!ID_IS_LINKED((_id)) && \ + ID_IS_STATIC_OVERRIDE((_id)) && \ + (((ID *)(_id))->flag & LIB_OVERRIDE_STATIC_AUTO)) + #ifdef GS # undef GS #endif @@ -436,6 +440,8 @@ enum { /* RESET_NEVER tag datablock as being up-to-date regarding its reference. */ LIB_TAG_OVERRIDESTATIC_REFOK = 1 << 9, + /* RESET_NEVER tag datablock as needing an auto-override execution, if enabled. */ + LIB_TAG_OVERRIDESTATIC_AUTOREFRESH = 1 << 17, /* tag datablock has having an extra user. */ LIB_TAG_EXTRAUSER = 1 << 2, |