blender/intern
Kévin Dietrich 527f8b32b3 Cycles API: encapsulate Node socket members
This encapsulates Node socket members behind a set of specific methods;
as such it is no longer possible to directly access Node class members
from exporters and parts of Cycles.

The methods are defined via the NODE_SOCKET_API macros in `graph/
node.h`, and are for getting or setting a specific socket's value, as
well as querying or modifying the state of its update flag.

The setters will check whether the value has changed and tag the socket
as modified appropriately. This will let us know how a Node has changed
and what to update, which is the first concrete step toward a more
granular scene update system.

Since the setters will tag the Node sockets as modified when passed
different data, this patch also removes the various `modified` methods
on Nodes in favor of `Node::is_modified` which checks the sockets'
update flags status.

Reviewed By: brecht

Maniphest Tasks: T79174

Differential Revision: https://developer.blender.org/D8544
2020-10-26 23:11:14 +01:00
..
atomic Spelling: It's Versus Its 2020-10-19 08:12:33 -07:00
audaspace Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
clog CLOG: Add getter to know if output supports coloring 2020-10-24 14:07:05 -04:00
cycles Cycles API: encapsulate Node socket members 2020-10-26 23:11:14 +01:00
dualcon Spelling: Then Versus Than 2020-10-19 08:43:08 -07:00
eigen Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
ffmpeg Tests: bundle tests for some modules in their own executables 2020-09-17 12:29:19 +02:00
ghost Spelling: Miscellaneous 2020-10-19 09:11:00 -07:00
glew-mx Cleanup: GPUState: Remove stack from the state manager and rename it 2020-08-18 21:30:10 +02:00
guardedalloc Cleanup: avoid member access within null pointer 2020-10-01 14:49:44 +10:00
iksolver Spelling: It's Versus Its 2020-10-19 08:12:33 -07:00
itasc Spelling: Miscellaneous 2020-10-19 09:11:00 -07:00
libc_compat Build: add more libc compatibility functions for upcoming libraries update 2020-07-09 18:10:05 +02:00
libmv Libmv: Refactor camera intrinsics parameter block 2020-10-20 15:02:50 +02:00
locale Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
mantaflow Fluid: Fix in addition to new obstacle distance parameter 2020-10-21 10:52:30 +02:00
memutil Cleanup: use C style doxygen comments 2020-09-12 16:33:34 +10:00
mikktspace Spelling: It's Versus Its 2020-10-19 08:12:33 -07:00
numaapi Cleanup: use angle-brackets for email addresses 2020-09-30 12:05:56 +10:00
opencolorio Spelling: It's Versus Its 2020-10-19 08:12:33 -07:00
opensubdiv Spelling: It's Versus Its 2020-10-19 08:12:33 -07:00
openvdb Cleanup: remove dead code in point cache and openvdb wrapper 2020-09-23 14:57:41 +02:00
quadriflow Quadriflow: Fix compilation error with C++17 2020-06-19 12:02:21 +02:00
rigidbody Fix missing "extern_bullet" library when building rigidbodies 2020-09-02 19:44:29 +02:00
sky Merge branch 'blender-v2.90-release' 2020-08-10 18:30:53 +02:00
utfconv Cleanup: make format after SortedIncludes change 2020-03-19 09:33:58 +01:00
CMakeLists.txt Tests: move remaining gtests into their own module folders 2020-08-10 18:14:00 +02:00