24# include <type_traits>
61class StripKeyframeData;
494 POSE_HAS_IKS = (1 << 14),
537#define PCHAN_CUSTOM_BONE_LENGTH(pchan) \
538 (((pchan)->drawflag & PCHAN_DRAW_NO_CUSTOM_BONE_SIZE) ? 1.0f : (pchan)->bone->length)
540#ifdef DNA_DEPRECATED_ALLOW
542typedef enum ePchan_BBoneFlag {
544 PCHAN_BBONE_CUSTOM_HANDLES = (1 << 1),
546 PCHAN_BBONE_CUSTOM_START_REL = (1 << 2),
548 PCHAN_BBONE_CUSTOM_END_REL = (1 << 3),
#define ENUM_OPERATORS(_type, _max)
ID and Library types, which are fundamental for SDNA.
@ ADS_FILTER_NOLIGHTPROBE
@ ADS_FILTER_DRIVER_FALLBACK_AS_ERROR
@ ADS_FILTER_NOMOVIECLIPS
@ ADS_FILTER_NOCACHEFILES
@ ADS_FILTER_NOPOINTCLOUD
@ MOTIONPATH_BAKE_CAMERA_SPACE
@ MOTIONPATH_BAKE_HAS_PATHS
struct SpaceActionOverlays SpaceActionOverlays
@ ADS_FILTER_ONLY_SLOTS_OF_ACTIVE
struct GPUVertBufHandle GPUVertBufHandle
struct bDopeSheet bDopeSheet
@ POSE_RUNTIME_IN_SELECTION_AREA
@ POSE_RUNTIME_HINGE_CHILD_TRANSFORM
@ POSE_RUNTIME_TRANSFORM_CHILD
struct ActionChannelbag ActionChannelbag
enum eMotionPaths_Types eMotionPath_Types
struct SpaceAction SpaceAction
struct ActionLayer ActionLayer
struct ActionStrip ActionStrip
struct SpaceAction_Runtime SpaceAction_Runtime
struct ActionSlotRuntimeHandle ActionSlotRuntimeHandle
struct bActionGroup bActionGroup
struct ActionStripKeyframeData ActionStripKeyframeData
@ ITASC_TRANSLATE_ROOT_BONES
@ ITASC_INITIAL_REITERATION
@ MOTIONPATH_RANGE_KEYS_ALL
@ MOTIONPATH_RANGE_KEYS_SELECTED
@ MOTIONPATH_RANGE_MANUAL
@ MOTIONPATH_FLAG_BAKE_CAMERA
@ ADS_SHOW_SCENE_STRIP_FRAME_RANGE
@ ADS_OVERLAY_SHOW_OVERLAYS
@ TIME_CACHE_DYNAMICPAINT
@ TIME_CACHE_SIMULATION_NODES
@ PCHAN_DRAW_NO_CUSTOM_BONE_SIZE
@ POSE_TRANSFORM_AT_CUSTOM_TX
@ POSE_TRANSFORM_AROUND_CUSTOM_TX
struct GPUBatchHandle GPUBatchHandle
@ ADS_FLAG_SHOW_DBFILTERS
@ ADS_FLAG_SUMMARY_COLLAPSED
struct ActionSlot ActionSlot
enum eMotionPaths_BakeFlag eMotionPath_BakeFlag
enum eMotionPaths_ViewFlag eMotionPath_ViewFlag
@ POSE_CONSTRAINTS_NEED_UPDATE_FLAGS
@ POSE_CONSTRAINTS_TIMEDEPEND
@ SACTION_RUNTIME_FLAG_NEED_CHAN_SYNC
@ SACTION_POSEMARKERS_SHOW
@ SACTION_SHOW_INTERPOLATION
@ SACTION_NOREALTIMEUPDATES
#define DNA_DEFINE_CXX_METHODS(class_name)
These structs are the foundation for all linked lists in the library system.
float wrap(float value, float max, float min)
struct bActionGroup ** group_array
struct FCurve ** fcurve_array
struct ActionStrip ** strip_array
ActionSlotRuntimeHandle * runtime
struct ActionChannelbag ** channelbag_array
View2D v2d DNA_DEPRECATED
SpaceActionOverlays overlays
SpaceAction_Runtime runtime
struct bActionGroup * prev
struct bActionGroup * next
struct ActionChannelbag * channelbag
struct ActionSlot ** slot_array
struct ActionStripKeyframeData ** strip_keyframe_data_array
struct ActionLayer ** layer_array
int strip_keyframe_data_array_num
struct Collection * filter_grp
GPUBatchHandle * batch_line
GPUVertBufHandle * points_vbo
GPUBatchHandle * batch_points
float bbone_matrix[0][4][4]
struct Mat4 * bbone_deform_mats
struct DualQuat deform_dual_quat
struct bPoseChannel_BBoneSegmentBoundary * bbone_segment_boundaries
struct DualQuat * bbone_dual_quats
struct Mat4 * bbone_pose_mats
float bbone_arc_length_reciprocal
struct Mat4 * bbone_rest_mats
float custom_scale_xyz[3]
bPoseChannelDrawData * draw_data
float custom_rotation_euler[3]
struct bPoseChannel * parent
struct bPoseChannel * custom_tx
struct bPoseChannel * bbone_next
struct bPoseChannel * prev
struct bPoseChannel * next
float custom_translation[3]
float custom_shape_wire_width
IDProperty * system_properties
struct bPoseChannel_Runtime runtime
char selectflag DNA_DEPRECATED
struct bPoseChannel * orig_pchan
float disp_tail_mat[4][4]
struct bPoseChannel * bbone_prev
struct bPoseChannel * child
bPoseChannel ** chan_array