code cleanup: assign values to enums in DNA
authorCampbell Barton <ideasman42@gmail.com>
Fri, 8 Jun 2012 06:04:29 +0000 (06:04 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Fri, 8 Jun 2012 06:04:29 +0000 (06:04 +0000)
source/blender/makesdna/DNA_action_types.h

index 9cb5ca5da555b42243377faea84d5926afb02f28..b61916f7bfabd65ae9411a406f34c09ceb0d0b9a 100644 (file)
@@ -50,37 +50,37 @@ struct GHash;
 
 /* Data point for motion path (mpv) */
 typedef struct bMotionPathVert {
-       float co[3];                            /* coordinates of point in 3D-space */
-       int flag;                                       /* quick settings */
+       float co[3];                /* coordinates of point in 3D-space */
+       int flag;                   /* quick settings */
 } bMotionPathVert;
 
 /* bMotionPathVert->flag */
 typedef enum eMotionPathVert_Flag {
-               /* vert is selected */
-       MOTIONPATH_VERT_SEL             = (1<<0)
+       /* vert is selected */
+       MOTIONPATH_VERT_SEL     = (1 << 0)
 } eMotionPathVert_Flag;
 
 /* ........ */
 
 /* Motion Path data cache (mpath)
- *     - for elements providing transforms (i.e. Objects or PoseChannels) 
+ *  - for elements providing transforms (i.e. Objects or PoseChannels)
  */
 typedef struct bMotionPath {
-       bMotionPathVert *points;        /* path samples */
-       int     length;                                 /* the number of cached verts */
+       bMotionPathVert *points;    /* path samples */
+       int length;                 /* the number of cached verts */
        
-       int start_frame;                        /* for drawing paths, the start frame number */
-       int     end_frame;                              /* for drawing paths, the end frame number */
+       int start_frame;            /* for drawing paths, the start frame number */
+       int end_frame;              /* for drawing paths, the end frame number */
        
-       int flag;                                       /* baking settings - eMotionPath_Flag */ 
+       int flag;                   /* baking settings - eMotionPath_Flag */
 } bMotionPath;
 
 /* bMotionPath->flag */
 typedef enum eMotionPath_Flag {
-               /* (for bones) path represents the head of the bone */
-       MOTIONPATH_FLAG_BHEAD           = (1<<0),
-               /* motion path is being edited */
-       MOTIONPATH_FLAG_EDIT            = (1<<1)
+       /* (for bones) path represents the head of the bone */
+       MOTIONPATH_FLAG_BHEAD       = (1 << 0),
+       /* motion path is being edited */
+       MOTIONPATH_FLAG_EDIT        = (1 << 1)
 } eMotionPath_Flag;
 
 /* Visualisation General --------------------------- */
@@ -89,83 +89,83 @@ typedef enum eMotionPath_Flag {
 /* Animation Visualisation Settings (avs) */
 typedef struct bAnimVizSettings {
        /* Onion-Skinning Settings ----------------- */
-       int     ghost_sf, ghost_ef;                     /* start and end frames of ghost-drawing range (only used for GHOST_TYPE_RANGE) */
-       int ghost_bc, ghost_ac;                 /* number of frames before/after current frame to show */
+       int ghost_sf, ghost_ef;         /* start and end frames of ghost-drawing range (only used for GHOST_TYPE_RANGE) */
+       int ghost_bc, ghost_ac;         /* number of frames before/after current frame to show */
        
-       short ghost_type;                               /* eOnionSkin_Types */
-       short ghost_step;                               /* number of frames between each ghost shown (not for GHOST_TYPE_KEYS) */
+       short ghost_type;               /* eOnionSkin_Types */
+       short ghost_step;               /* number of frames between each ghost shown (not for GHOST_TYPE_KEYS) */
        
-       short ghost_flag;                               /* eOnionSkin_Flag */
+       short ghost_flag;               /* eOnionSkin_Flag */
        
        /* General Settings ------------------------ */
-       short recalc;                                   /* eAnimViz_RecalcFlags */
+       short recalc;                   /* eAnimViz_RecalcFlags */
        
        /* Motion Path Settings ------------------- */
-       short path_type;                                /* eMotionPath_Types */
-       short path_step;                                /* number of frames between points indicated on the paths */
+       short path_type;                /* eMotionPath_Types */
+       short path_step;                /* number of frames between points indicated on the paths */
        
-       short path_viewflag;                    /* eMotionPaths_ViewFlag */
-       short path_bakeflag;                    /* eMotionPaths_BakeFlag */
+       short path_viewflag;            /* eMotionPaths_ViewFlag */
+       short path_bakeflag;            /* eMotionPaths_BakeFlag */
        
-       int path_sf, path_ef;                   /* start and end frames of path-calculation range */
-       int     path_bc, path_ac;                       /* number of frames before/after current frame to show */
+       int path_sf, path_ef;           /* start and end frames of path-calculation range */
+       int path_bc, path_ac;           /* number of frames before/after current frame to show */
 } bAnimVizSettings;
 
 
 /* bAnimVizSettings->recalc */
 typedef enum eAnimViz_RecalcFlags {
-               /* motionpaths need recalculating */
-       ANIMVIZ_RECALC_PATHS    = (1<<0)
+       /* motionpaths need recalculating */
+       ANIMVIZ_RECALC_PATHS    = (1 << 0)
 } eAnimViz_RecalcFlags;
 
 
 /* bAnimVizSettings->ghost_type */
 typedef enum eOnionSkin_Types {
-               /* no ghosts at all */
+       /* no ghosts at all */
        GHOST_TYPE_NONE = 0,
-               /* around current frame */
-       GHOST_TYPE_ACFRA,
-               /* show ghosts within the specified frame range */
-       GHOST_TYPE_RANGE,
-               /* show ghosts on keyframes within the specified range only */
-       GHOST_TYPE_KEYS
+       /* around current frame */
+       GHOST_TYPE_ACFRA = 1,
+       /* show ghosts within the specified frame range */
+       GHOST_TYPE_RANGE = 2,
+       /* show ghosts on keyframes within the specified range only */
+       GHOST_TYPE_KEYS = 3
 } eOnionSkin_Types;
 
 /* bAnimVizSettings->ghost_flag */
 typedef enum eOnionSkin_Flag {
-               /* only show selected bones in ghosts */
-       GHOST_FLAG_ONLYSEL      = (1<<0)
+       /* only show selected bones in ghosts */
+       GHOST_FLAG_ONLYSEL  = (1 << 0)
 } eOnionSkin_Flag;
 
 
 /* bAnimVizSettings->path_type */
 typedef enum eMotionPaths_Types {
-               /* show the paths along their entire ranges */
+       /* show the paths along their entire ranges */
        MOTIONPATH_TYPE_RANGE = 0,
-               /* only show the parts of the paths around the current frame */
-       MOTIONPATH_TYPE_ACFRA
+       /* only show the parts of the paths around the current frame */
+       MOTIONPATH_TYPE_ACFRA = 1,
 } eMotionPath_Types;
 
 /* bAnimVizSettings->path_viewflag */
 typedef enum eMotionPaths_ViewFlag {
-               /* show frames on path */
-       MOTIONPATH_VIEW_FNUMS           = (1<<0),
-               /* show keyframes on path */
-       MOTIONPATH_VIEW_KFRAS           = (1<<1),
-               /* show keyframe/frame numbers */
-       MOTIONPATH_VIEW_KFNOS           = (1<<2),
-               /* find keyframes in whole action (instead of just in matching group name) */
-       MOTIONPATH_VIEW_KFACT           = (1<<3)
+       /* show frames on path */
+       MOTIONPATH_VIEW_FNUMS       = (1 << 0),
+       /* show keyframes on path */
+       MOTIONPATH_VIEW_KFRAS       = (1 << 1),
+       /* show keyframe/frame numbers */
+       MOTIONPATH_VIEW_KFNOS       = (1 << 2),
+       /* find keyframes in whole action (instead of just in matching group name) */
+       MOTIONPATH_VIEW_KFACT       = (1 << 3)
 } eMotionPath_ViewFlag;
 
 /* bAnimVizSettings->path_bakeflag */
 typedef enum eMotionPaths_BakeFlag {
-               /* motion paths directly associated with this block of settings needs updating */
-       MOTIONPATH_BAKE_NEEDS_RECALC    = (1<<0),
-               /* for bones - calculate head-points for curves instead of tips */
-       MOTIONPATH_BAKE_HEADS                   = (1<<1),
-               /* motion paths exist for AnimVizSettings instance - set when calc for first time, and unset when clearing */
-       MOTIONPATH_BAKE_HAS_PATHS               = (1<<2)
+       /* motion paths directly associated with this block of settings needs updating */
+       MOTIONPATH_BAKE_NEEDS_RECALC    = (1 << 0),
+       /* for bones - calculate head-points for curves instead of tips */
+       MOTIONPATH_BAKE_HEADS           = (1 << 1),
+       /* motion paths exist for AnimVizSettings instance - set when calc for first time, and unset when clearing */
+       MOTIONPATH_BAKE_HAS_PATHS       = (1 << 2)
 } eMotionPath_BakeFlag;
 
 /* ************************************************ */
@@ -179,142 +179,142 @@ typedef enum eMotionPaths_BakeFlag {
  * with respect to the restposition of Armature bones 
  */
 typedef struct bPoseChannel {
-       struct bPoseChannel     *next, *prev;
+       struct bPoseChannel *next, *prev;
        
-       IDProperty                      *prop;          /* User-Defined Properties on this PoseChannel */                       
+       IDProperty          *prop;      /* User-Defined Properties on this PoseChannel */
        
-       ListBase                        constraints;/* Constraints that act on this PoseChannel */
-       char                            name[64];       /* need to match bone name length: MAXBONENAME */
+       ListBase constraints;           /* Constraints that act on this PoseChannel */
+       char name[64];                  /* need to match bone name length: MAXBONENAME */
        
-       short                           flag;           /* dynamic, for detecting transform changes */
-       short                           ikflag;         /* settings for IK bones */
-       short                           protectflag; /* protect channels from being transformed */
-       short                           agrp_index; /* index of action-group this bone belongs to (0 = default/no group) */
-       char                            constflag;  /* for quick detecting which constraints affect this channel */
-       char                selectflag; /* copy of bone flag, so you can work with library armatures, not for runtime use */
-       char                            pad0[6];
+       short flag;                     /* dynamic, for detecting transform changes */
+       short ikflag;                   /* settings for IK bones */
+       short protectflag;              /* protect channels from being transformed */
+       short agrp_index;               /* index of action-group this bone belongs to (0 = default/no group) */
+       char constflag;                 /* for quick detecting which constraints affect this channel */
+       char selectflag;                /* copy of bone flag, so you can work with library armatures, not for runtime use */
+       char pad0[6];
 
-       struct Bone                     *bone;          /* set on read file or rebuild pose */
-       struct bPoseChannel *parent;    /* set on read file or rebuild pose */
-       struct bPoseChannel *child;             /* set on read file or rebuild pose, the 'ik' child, for b-bones */
-       
-       struct ListBase          iktree;                /* "IK trees" - only while evaluating pose */
-       struct ListBase         siktree;                /* Spline-IK "trees" - only while evaluating pose */
-       
-       bMotionPath *mpath;                             /* motion path cache for this bone */
-       struct Object *custom;                  /* draws custom object instead of default bone shape */
-       struct bPoseChannel *custom_tx; /* odd feature, display with another bones transform.
+       struct Bone         *bone;      /* set on read file or rebuild pose */
+       struct bPoseChannel *parent;    /* set on read file or rebuild pose */
+       struct bPoseChannel *child;     /* set on read file or rebuild pose, the 'ik' child, for b-bones */
+
+       struct ListBase iktree;         /* "IK trees" - only while evaluating pose */
+       struct ListBase siktree;        /* Spline-IK "trees" - only while evaluating pose */
+
+       bMotionPath *mpath;             /* motion path cache for this bone */
+       struct Object *custom;          /* draws custom object instead of default bone shape */
+       struct bPoseChannel *custom_tx; /* odd feature, display with another bones transform.
                                         * needed in rare cases for advanced rigs,
                                         * since the alternative is highly complicated - campbell */
 
-               /* transforms - written in by actions or transform */
-       float           loc[3];                         
-       float           size[3];
-       
-               /* rotations - written in by actions or transform (but only one representation gets used at any time) */
-       float           eul[3];                                 /* euler rotation */
-       float           quat[4];                                /* quaternion rotation */
-       float           rotAxis[3], rotAngle;   /* axis-angle rotation */
-       short           rotmode;                                /* eRotationModes - rotation representation to use */
-       short           pad;
+       /* transforms - written in by actions or transform */
+       float loc[3];
+       float size[3];
+
+       /* rotations - written in by actions or transform (but only one representation gets used at any time) */
+       float eul[3];                       /* euler rotation */
+       float quat[4];                      /* quaternion rotation */
+       float rotAxis[3], rotAngle;         /* axis-angle rotation */
+       short rotmode;                      /* eRotationModes - rotation representation to use */
+       short pad;
        
-       float           chan_mat[4][4];         /* matrix result of loc/quat/size , and where we put deform in, see next line */
-       float           pose_mat[4][4];         /* constraints accumulate here. in the end, pose_mat = bone->arm_mat * chan_mat
+       float chan_mat[4][4];           /* matrix result of loc/quat/size , and where we put deform in, see next line */
+       float pose_mat[4][4];           /* constraints accumulate here. in the end, pose_mat = bone->arm_mat * chan_mat
                                         * this matrix is object space */
-       float           constinv[4][4];         /* inverse result of constraints.
+       float constinv[4][4];           /* inverse result of constraints.
                                         * doesn't include effect of restposition, parent, and local transform*/
        
-       float           pose_head[3];           /* actually pose_mat[3] */
-       float           pose_tail[3];           /* also used for drawing help lines... */
+       float pose_head[3];             /* actually pose_mat[3] */
+       float pose_tail[3];             /* also used for drawing help lines... */
        
-       float           limitmin[3], limitmax[3];       /* DOF constraint, note! - these are stored in degrees, not radians */
-       float           stiffness[3];                           /* DOF stiffness */
-       float           ikstretch;
-       float           ikrotweight;            /* weight of joint rotation constraint */
-       float           iklinweight;            /* weight of joint stretch constraint */
+       float limitmin[3], limitmax[3]; /* DOF constraint, note! - these are stored in degrees, not radians */
+       float stiffness[3];             /* DOF stiffness */
+       float ikstretch;
+       float ikrotweight;              /* weight of joint rotation constraint */
+       float iklinweight;              /* weight of joint stretch constraint */
 
-       void            *temp;                          /* use for outliner */
+       void        *temp;              /* use for outliner */
 } bPoseChannel;
 
 
 /* PoseChannel (transform) flags */
 typedef enum ePchan_Flag {
-               /* has transforms */
-       POSE_LOC                =       (1<<0),
-       POSE_ROT                =       (1<<1),
-       POSE_SIZE               =       (1<<2),
-               /* old IK/cache stuff... */
-       POSE_IK_MAT             =       (1<<3),
-       POSE_UNUSED2    =       (1<<4),
-       POSE_UNUSED3    =       (1<<5),
-       POSE_UNUSED4    =       (1<<6),
-       POSE_UNUSED5    =       (1<<7),
-               /* has Standard IK */
-       POSE_HAS_IK             =       (1<<8),
-               /* IK/Pose solving*/
-       POSE_CHAIN              =       (1<<9),
-       POSE_DONE               =   (1<<10),
-               /* visualisation */
-       POSE_KEY                =       (1<<11),
-       POSE_STRIDE             =       (1<<12),
-               /* standard IK solving */
-       POSE_IKTREE             =   (1<<13),
-               /* has Spline IK */
-       POSE_HAS_IKS    =       (1<<14),
-               /* spline IK solving */
-       POSE_IKSPLINE   =       (1<<15)
+       /* has transforms */
+       POSE_LOC        =   (1 << 0),
+       POSE_ROT        =   (1 << 1),
+       POSE_SIZE       =   (1 << 2),
+       /* old IK/cache stuff... */
+       POSE_IK_MAT     =   (1 << 3),
+       POSE_UNUSED2    =   (1 << 4),
+       POSE_UNUSED3    =   (1 << 5),
+       POSE_UNUSED4    =   (1 << 6),
+       POSE_UNUSED5    =   (1 << 7),
+       /* has Standard IK */
+       POSE_HAS_IK     =   (1 << 8),
+       /* IK/Pose solving*/
+       POSE_CHAIN      =   (1 << 9),
+       POSE_DONE       =   (1 << 10),
+       /* visualisation */
+       POSE_KEY        =   (1 << 11),
+       POSE_STRIDE     =   (1 << 12),
+       /* standard IK solving */
+       POSE_IKTREE     =   (1 << 13),
+       /* has Spline IK */
+       POSE_HAS_IKS    =   (1 << 14),
+       /* spline IK solving */
+       POSE_IKSPLINE   =   (1 << 15)
 } ePchan_Flag;
 
 /* PoseChannel constflag (constraint detection) */
 typedef enum ePchan_ConstFlag {
-       PCHAN_HAS_IK            = (1<<0),
-       PCHAN_HAS_CONST         = (1<<1),
-               /* only used for drawing Posemode, not stored in channel */
-       PCHAN_HAS_ACTION        = (1<<2),
-       PCHAN_HAS_TARGET        = (1<<3),
-               /* only for drawing Posemode too */
-       PCHAN_HAS_STRIDE        = (1<<4),
-               /* spline IK */
-       PCHAN_HAS_SPLINEIK      = (1<<5)
+       PCHAN_HAS_IK        = (1 << 0),
+       PCHAN_HAS_CONST     = (1 << 1),
+       /* only used for drawing Posemode, not stored in channel */
+       PCHAN_HAS_ACTION    = (1 << 2),
+       PCHAN_HAS_TARGET    = (1 << 3),
+       /* only for drawing Posemode too */
+       PCHAN_HAS_STRIDE    = (1 << 4),
+       /* spline IK */
+       PCHAN_HAS_SPLINEIK  = (1 << 5)
 } ePchan_ConstFlag;
 
 /* PoseChannel->ikflag */
 typedef enum ePchan_IkFlag {
-       BONE_IK_NO_XDOF = (1<<0),
-       BONE_IK_NO_YDOF = (1<<1),
-       BONE_IK_NO_ZDOF = (1<<2),
+       BONE_IK_NO_XDOF = (1 << 0),
+       BONE_IK_NO_YDOF = (1 << 1),
+       BONE_IK_NO_ZDOF = (1 << 2),
 
-       BONE_IK_XLIMIT  = (1<<3),
-       BONE_IK_YLIMIT  = (1<<4),
-       BONE_IK_ZLIMIT  = (1<<5),
-       
-       BONE_IK_ROTCTL  = (1<<6),
-       BONE_IK_LINCTL  = (1<<7),
+       BONE_IK_XLIMIT  = (1 << 3),
+       BONE_IK_YLIMIT  = (1 << 4),
+       BONE_IK_ZLIMIT  = (1 << 5),
+
+       BONE_IK_ROTCTL  = (1 << 6),
+       BONE_IK_LINCTL  = (1 << 7),
 
-       BONE_IK_NO_XDOF_TEMP = (1<<10),
-       BONE_IK_NO_YDOF_TEMP = (1<<11),
-       BONE_IK_NO_ZDOF_TEMP = (1<<12)
+       BONE_IK_NO_XDOF_TEMP = (1 << 10),
+       BONE_IK_NO_YDOF_TEMP = (1 << 11),
+       BONE_IK_NO_ZDOF_TEMP = (1 << 12)
 } ePchan_IkFlag;
 
 /* PoseChannel->rotmode and Object->rotmode */
 typedef enum eRotationModes {
-               /* quaternion rotations (default, and for older Blender versions) */
-       ROT_MODE_QUAT   = 0,
-               /* euler rotations - keep in sync with enum in BLI_math.h */
-       ROT_MODE_EUL = 1,               /* Blender 'default' (classic) - must be as 1 to sync with BLI_math_rotation.h defines */
+       /* quaternion rotations (default, and for older Blender versions) */
+       ROT_MODE_QUAT   = 0,
+       /* euler rotations - keep in sync with enum in BLI_math.h */
+       ROT_MODE_EUL = 1,       /* Blender 'default' (classic) - must be as 1 to sync with BLI_math_rotation.h defines */
        ROT_MODE_XYZ = 1,
-       ROT_MODE_XZY,
-       ROT_MODE_YXZ,
-       ROT_MODE_YZX,
-       ROT_MODE_ZXY,
-       ROT_MODE_ZYX,
+       ROT_MODE_XZY = 2,
+       ROT_MODE_YXZ = 3,
+       ROT_MODE_YZX = 4,
+       ROT_MODE_ZXY = 5,
+       ROT_MODE_ZYX = 6,
        /* NOTE: space is reserved here for 18 other possible 
         * euler rotation orders not implemented 
         */
-               /* axis angle rotations */
+       /* axis angle rotations */
        ROT_MODE_AXISANGLE = -1,
 
-       ROT_MODE_MIN = ROT_MODE_AXISANGLE,      /* sentinel for Py API */
+       ROT_MODE_MIN = ROT_MODE_AXISANGLE,  /* sentinel for Py API */
        ROT_MODE_MAX = ROT_MODE_ZYX
 } eRotationModes;
 
@@ -326,46 +326,46 @@ typedef enum eRotationModes {
  * though there is a define for it (hack for the outliner).
  */
 typedef struct bPose {
-       ListBase chanbase;                      /* list of pose channels, PoseBones in RNA */
-       struct GHash *chanhash;         /* ghash for quicker string lookups */
+       ListBase chanbase;          /* list of pose channels, PoseBones in RNA */
+       struct GHash *chanhash;     /* ghash for quicker string lookups */
        
        short flag, pad;
-       unsigned int proxy_layer;       /* proxy layer: copy from armature, gets synced */
+       unsigned int proxy_layer;   /* proxy layer: copy from armature, gets synced */
        int pad1;
        
-       float ctime;                            /* local action time of this pose */
-       float stride_offset[3];         /* applied to object */
-       float cyclic_offset[3];         /* result of match and cycles, applied in BKE_pose_where_is() */
+       float ctime;                /* local action time of this pose */
+       float stride_offset[3];     /* applied to object */
+       float cyclic_offset[3];     /* result of match and cycles, applied in BKE_pose_where_is() */
        
        
-       ListBase agroups;                       /* list of bActionGroups */
+       ListBase agroups;           /* list of bActionGroups */
        
-       int active_group;                       /* index of active group (starts from 1) */
-       int     iksolver;                               /* ik solver to use, see ePose_IKSolverType */
-       void *ikdata;                           /* temporary IK data, depends on the IK solver. Not saved in file */
-       void *ikparam;                          /* IK solver parameters, structure depends on iksolver */ 
+       int active_group;           /* index of active group (starts from 1) */
+       int iksolver;               /* ik solver to use, see ePose_IKSolverType */
+       void *ikdata;               /* temporary IK data, depends on the IK solver. Not saved in file */
+       void *ikparam;              /* IK solver parameters, structure depends on iksolver */
        
-       bAnimVizSettings avs;           /* settings for visualization of bone animation */
+       bAnimVizSettings avs;       /* settings for visualization of bone animation */
        char proxy_act_bone[64];    /* proxy active bone name, MAXBONENAME */
 } bPose;
 
 
 /* Pose->flag */
 typedef enum ePose_Flags {
-               /* results in BKE_pose_rebuild being called */
-       POSE_RECALC = (1<<0),
-               /* prevents any channel from getting overridden by anim from IPO */
-       POSE_LOCKED     = (1<<1),
-               /* clears the POSE_LOCKED flag for the next time the pose is evaluated */
-       POSE_DO_UNLOCK  = (1<<2),
-               /* pose has constraints which depend on time (used when depsgraph updates for a new frame) */
-       POSE_CONSTRAINTS_TIMEDEPEND = (1<<3),
-               /* recalculate bone paths */
-       POSE_RECALCPATHS = (1<<4),
-               /* set by BKE_pose_rebuild to give a chance to the IK solver to rebuild IK tree */
-       POSE_WAS_REBUILT = (1<<5),
-               /* set by game_copy_pose to indicate that this pose is used in the game engine */
-       POSE_GAME_ENGINE = (1<<6)
+       /* results in BKE_pose_rebuild being called */
+       POSE_RECALC = (1 << 0),
+       /* prevents any channel from getting overridden by anim from IPO */
+       POSE_LOCKED = (1 << 1),
+       /* clears the POSE_LOCKED flag for the next time the pose is evaluated */
+       POSE_DO_UNLOCK  = (1 << 2),
+       /* pose has constraints which depend on time (used when depsgraph updates for a new frame) */
+       POSE_CONSTRAINTS_TIMEDEPEND = (1 << 3),
+       /* recalculate bone paths */
+       POSE_RECALCPATHS = (1 << 4),
+       /* set by BKE_pose_rebuild to give a chance to the IK solver to rebuild IK tree */
+       POSE_WAS_REBUILT = (1 << 5),
+       /* set by game_copy_pose to indicate that this pose is used in the game engine */
+       POSE_GAME_ENGINE = (1 << 6)
 } ePose_Flags;
 
 /* IK Solvers ------------------------------------ */
@@ -378,37 +378,37 @@ typedef enum ePose_IKSolverType {
 
 /* header for all bPose->ikparam structures */
 typedef struct bIKParam {
-       int   iksolver;
+       int iksolver;
 } bIKParam;
 
 /* bPose->ikparam when bPose->iksolver=1 */
 typedef struct bItasc {
-       int   iksolver;
+       int iksolver;
        float precision;
        short numiter;
        short numstep;
        float minstep;
        float maxstep;
-       short solver;   
+       short solver;
        short flag;
        float feedback;
-       float maxvel;   /* max velocity to SDLS solver */
-       float dampmax;  /* maximum damping for DLS solver */
-       float dampeps;  /* threshold of singular value from which the damping start progressively */
+       float maxvel;   /* max velocity to SDLS solver */
+       float dampmax;  /* maximum damping for DLS solver */
+       float dampeps;  /* threshold of singular value from which the damping start progressively */
 } bItasc;
 
 /* bItasc->flag */
 typedef enum eItasc_Flags {
-       ITASC_AUTO_STEP = (1<<0),
-       ITASC_INITIAL_REITERATION = (1<<1),
-       ITASC_REITERATION = (1<<2),
-       ITASC_SIMULATION = (1<<3)
+       ITASC_AUTO_STEP           = (1 << 0),
+       ITASC_INITIAL_REITERATION = (1 << 1),
+       ITASC_REITERATION         = (1 << 2),
+       ITASC_SIMULATION          = (1 << 3)
 } eItasc_Flags;
 
 /* bItasc->solver */
 typedef enum eItasc_Solver {
-       ITASC_SOLVER_SDLS = 0,  /* selective damped least square, suitable for CopyPose constraint */
-       ITASC_SOLVER_DLS                /* damped least square with numerical filtering of damping */
+       ITASC_SOLVER_SDLS = 0,  /* selective damped least square, suitable for CopyPose constraint */
+       ITASC_SOLVER_DLS  = 1,  /* damped least square with numerical filtering of damping */
 } eItasc_Solver;
 
 /* ************************************************ */
@@ -434,34 +434,34 @@ typedef enum eItasc_Solver {
 typedef struct bActionGroup {
        struct bActionGroup *next, *prev;
        
-       ListBase channels;                      /* Note: this must not be touched by standard listbase functions which would clear links to other channels */
+       ListBase channels;          /* Note: this must not be touched by standard listbase functions which would clear links to other channels */
        
-       int flag;                                       /* settings for this action-group */
-       int customCol;                          /* index of custom color set to use when used for bones (0=default - used for all old files, -1=custom set) */                          
-       char name[64];                          /* name of the group */
+       int flag;                   /* settings for this action-group */
+       int customCol;              /* index of custom color set to use when used for bones (0=default - used for all old files, -1=custom set) */
+       char name[64];              /* name of the group */
        
-       ThemeWireColor cs;                      /* color set to use when customCol == -1 */
+       ThemeWireColor cs;          /* color set to use when customCol == -1 */
 } bActionGroup;
 
 /* Action Group flags */
 typedef enum eActionGroup_Flag {
-               /* group is selected */
-       AGRP_SELECTED   = (1<<0),
-               /* group is 'active' / last selected one */
-       AGRP_ACTIVE     = (1<<1),
-               /* keyframes/channels belonging to it cannot be edited */
-       AGRP_PROTECTED  = (1<<2),
-               /* for UI (DopeSheet), sub-channels are shown */
-       AGRP_EXPANDED   = (1<<3),
-               /* sub-channels are not evaluated */
-       AGRP_MUTED              = (1<<4),
-               /* sub-channels are not visible in Graph Editor */
-       AGRP_NOTVISIBLE = (1<<5),
-               /* for UI (Graph Editor), sub-channels are shown */
-       AGRP_EXPANDED_G = (1<<6),
-       
-       AGRP_TEMP               = (1<<30),
-       AGRP_MOVED              = (1<<31)
+       /* group is selected */
+       AGRP_SELECTED   = (1 << 0),
+       /* group is 'active' / last selected one */
+       AGRP_ACTIVE     = (1 << 1),
+       /* keyframes/channels belonging to it cannot be edited */
+       AGRP_PROTECTED  = (1 << 2),
+       /* for UI (DopeSheet), sub-channels are shown */
+       AGRP_EXPANDED   = (1 << 3),
+       /* sub-channels are not evaluated */
+       AGRP_MUTED      = (1 << 4),
+       /* sub-channels are not visible in Graph Editor */
+       AGRP_NOTVISIBLE = (1 << 5),
+       /* for UI (Graph Editor), sub-channels are shown */
+       AGRP_EXPANDED_G = (1 << 6),
+       
+       AGRP_TEMP       = (1 << 30),
+       AGRP_MOVED      = (1 << 31)
 } eActionGroup_Flag;
 
 
@@ -478,31 +478,31 @@ typedef enum eActionGroup_Flag {
  * affects a group of related settings (as defined by the user). 
  */
 typedef struct bAction {
-       ID      id;                             /* ID-serialisation for relinking */
+       ID id;              /* ID-serialisation for relinking */
        
-       ListBase curves;        /* function-curves (FCurve) */
-       ListBase chanbase;      /* legacy data - Action Channels (bActionChannel) in pre-2.5 animation system */
-       ListBase groups;        /* groups of function-curves (bActionGroup) */
-       ListBase markers;       /* markers local to the Action (used to provide Pose-Libraries) */
+       ListBase curves;    /* function-curves (FCurve) */
+       ListBase chanbase;  /* legacy data - Action Channels (bActionChannel) in pre-2.5 animation system */
+       ListBase groups;    /* groups of function-curves (bActionGroup) */
+       ListBase markers;   /* markers local to the Action (used to provide Pose-Libraries) */
        
-       int flag;                       /* settings for this action */
-       int active_marker;      /* index of the active marker */
+       int flag;           /* settings for this action */
+       int active_marker;  /* index of the active marker */
        
-       int idroot;                     /* type of ID-blocks that action can be assigned to (if 0, will be set to whatever ID first evaluates it) */
+       int idroot;         /* type of ID-blocks that action can be assigned to (if 0, will be set to whatever ID first evaluates it) */
        int pad;
 } bAction;
 
 
 /* Flags for the action */
 typedef enum eAction_Flags {
-               /* flags for displaying in UI */
-       ACT_COLLAPSED   = (1<<0),
-       ACT_SELECTED    = (1<<1),
-       
-               /* flags for evaluation/editing */
-       ACT_MUTED               = (1<<9),
-       ACT_PROTECTED   = (1<<10),
-       ACT_DISABLED    = (1<<11)
+       /* flags for displaying in UI */
+       ACT_COLLAPSED   = (1 << 0),
+       ACT_SELECTED    = (1 << 1),
+
+       /* flags for evaluation/editing */
+       ACT_MUTED       = (1 << 9),
+       ACT_PROTECTED   = (1 << 10),
+       ACT_DISABLED    = (1 << 11)
 } eAction_Flags;
 
 
@@ -511,67 +511,67 @@ typedef enum eAction_Flags {
 
 /* Storage for Dopesheet/Grease-Pencil Editor data */
 typedef struct bDopeSheet {
-       ID              *source;                        /* currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil) */
-       ListBase chanbase;                      /* cache for channels (only initialized when pinned) */  // XXX not used!
+       ID      *source;            /* currently ID_SCE (for Dopesheet), and ID_SC (for Grease Pencil) */
+       ListBase chanbase; /* cache for channels (only initialized when pinned) */           // XXX not used!
        
-       struct Group *filter_grp;       /* object group for ADS_FILTER_ONLYOBGROUP filtering option */
-       char searchstr[64];                     /* string to search for in displayed names of F-Curves for ADS_FILTER_BY_FCU_NAME filtering option */
+       struct Group *filter_grp;   /* object group for ADS_FILTER_ONLYOBGROUP filtering option */
+       char searchstr[64];         /* string to search for in displayed names of F-Curves for ADS_FILTER_BY_FCU_NAME filtering option */
        
-       int filterflag;                         /* flags to use for filtering data */
-       int flag;                                       /* standard flags */
+       int filterflag;             /* flags to use for filtering data */
+       int flag;                   /* standard flags */
        
-       int renameIndex;                        /* index+1 of channel to rename - only gets set by renaming operator */
+       int renameIndex;            /* index+1 of channel to rename - only gets set by renaming operator */
        int pad;
 } bDopeSheet;
 
 
 /* DopeSheet filter-flag */
 typedef enum eDopeSheet_FilterFlag {
-               /* general filtering */
-       ADS_FILTER_ONLYSEL                      = (1<<0),       /* only include channels relating to selected data */
-       
-               /* temporary filters */
-       ADS_FILTER_ONLYDRIVERS          = (1<<1),       /* for 'Drivers' editor - only include Driver data from AnimData */
-       ADS_FILTER_ONLYNLA                      = (1<<2),       /* for 'NLA' editor - only include NLA data from AnimData */
-       ADS_FILTER_SELEDIT                      = (1<<3),       /* for Graph Editor - used to indicate whether to include a filtering flag or not */
-       
-               /* general filtering 2 */
-       ADS_FILTER_SUMMARY                      = (1<<4),       /* for 'DopeSheet' Editors - include 'summary' line */
-       ADS_FILTER_ONLYOBGROUP          = (1<<5),       /* only the objects in the specified object group get used */
-       
-               /* datatype-based filtering */
-       ADS_FILTER_NOSHAPEKEYS          = (1<<6),
-       ADS_FILTER_NOMESH                       = (1<<7),
-       ADS_FILTER_NOOBJ                        = (1<<8),       /* for animdata on object level, if we only want to concentrate on materials/etc. */
-       ADS_FILTER_NOLAT                        = (1<<9),
-       ADS_FILTER_NOCAM                        = (1<<10),
-       ADS_FILTER_NOMAT                        = (1<<11),
-       ADS_FILTER_NOLAM                        = (1<<12),
-       ADS_FILTER_NOCUR                        = (1<<13),
-       ADS_FILTER_NOWOR                        = (1<<14),
-       ADS_FILTER_NOSCE                        = (1<<15),
-       ADS_FILTER_NOPART                       = (1<<16),
-       ADS_FILTER_NOMBA                        = (1<<17),
-       ADS_FILTER_NOARM                        = (1<<18),
-       ADS_FILTER_NONTREE                      = (1<<19),
-       ADS_FILTER_NOTEX                        = (1<<20),
-       ADS_FILTER_NOSPK                        = (1<<21),
-       
-               /* NLA-specific filters */
-       ADS_FILTER_NLA_NOACT            = (1<<25),      /* if the AnimData block has no NLA data, don't include to just show Action-line */
-       
-               /* general filtering 3 */
-       ADS_FILTER_INCL_HIDDEN          = (1<<26),      /* include 'hidden' channels too (i.e. those from hidden Objects/Bones) */
-       ADS_FILTER_BY_FCU_NAME          = (1<<27),      /* for F-Curves, filter by the displayed name (i.e. to isolate all Location curves only) */
-       
-               /* combination filters (some only used at runtime) */
-       ADS_FILTER_NOOBDATA = (ADS_FILTER_NOCAM|ADS_FILTER_NOMAT|ADS_FILTER_NOLAM|ADS_FILTER_NOCUR|ADS_FILTER_NOPART|ADS_FILTER_NOARM|ADS_FILTER_NOSPK)
+       /* general filtering */
+       ADS_FILTER_ONLYSEL          = (1 << 0),   /* only include channels relating to selected data */
+       
+       /* temporary filters */
+       ADS_FILTER_ONLYDRIVERS      = (1 << 1),   /* for 'Drivers' editor - only include Driver data from AnimData */
+       ADS_FILTER_ONLYNLA          = (1 << 2),   /* for 'NLA' editor - only include NLA data from AnimData */
+       ADS_FILTER_SELEDIT          = (1 << 3),   /* for Graph Editor - used to indicate whether to include a filtering flag or not */
+
+       /* general filtering 2 */
+       ADS_FILTER_SUMMARY          = (1 << 4),   /* for 'DopeSheet' Editors - include 'summary' line */
+       ADS_FILTER_ONLYOBGROUP      = (1 << 5),   /* only the objects in the specified object group get used */
+
+       /* datatype-based filtering */
+       ADS_FILTER_NOSHAPEKEYS      = (1 << 6),
+       ADS_FILTER_NOMESH           = (1 << 7),
+       ADS_FILTER_NOOBJ            = (1 << 8),   /* for animdata on object level, if we only want to concentrate on materials/etc. */
+       ADS_FILTER_NOLAT            = (1 << 9),
+       ADS_FILTER_NOCAM            = (1 << 10),
+       ADS_FILTER_NOMAT            = (1 << 11),
+       ADS_FILTER_NOLAM            = (1 << 12),
+       ADS_FILTER_NOCUR            = (1 << 13),
+       ADS_FILTER_NOWOR            = (1 << 14),
+       ADS_FILTER_NOSCE            = (1 << 15),
+       ADS_FILTER_NOPART           = (1 << 16),
+       ADS_FILTER_NOMBA            = (1 << 17),
+       ADS_FILTER_NOARM            = (1 << 18),
+       ADS_FILTER_NONTREE          = (1 << 19),
+       ADS_FILTER_NOTEX            = (1 << 20),
+       ADS_FILTER_NOSPK            = (1 << 21),
+
+       /* NLA-specific filters */
+       ADS_FILTER_NLA_NOACT        = (1 << 25),  /* if the AnimData block has no NLA data, don't include to just show Action-line */
+
+       /* general filtering 3 */
+       ADS_FILTER_INCL_HIDDEN      = (1 << 26),  /* include 'hidden' channels too (i.e. those from hidden Objects/Bones) */
+       ADS_FILTER_BY_FCU_NAME      = (1 << 27),  /* for F-Curves, filter by the displayed name (i.e. to isolate all Location curves only) */
+       
+       /* combination filters (some only used at runtime) */
+       ADS_FILTER_NOOBDATA = (ADS_FILTER_NOCAM | ADS_FILTER_NOMAT | ADS_FILTER_NOLAM | ADS_FILTER_NOCUR | ADS_FILTER_NOPART | ADS_FILTER_NOARM | ADS_FILTER_NOSPK)
 } eDopeSheet_FilterFlag;       
 
 /* DopeSheet general flags */
 typedef enum eDopeSheet_Flag {
-       ADS_FLAG_SUMMARY_COLLAPSED      = (1<<0),       /* when summary is shown, it is collapsed, so all other channels get hidden */
-       ADS_FLAG_SHOW_DBFILTERS         = (1<<1)        /* show filters for datablocks */
+       ADS_FLAG_SUMMARY_COLLAPSED  = (1 << 0),   /* when summary is shown, it is collapsed, so all other channels get hidden */
+       ADS_FLAG_SHOW_DBFILTERS     = (1 << 1)    /* show filters for datablocks */
 } eDopeSheet_Flag;
 
 
@@ -579,72 +579,72 @@ typedef enum eDopeSheet_Flag {
 /* Action Editor Space. This is defined here instead of in DNA_space_types.h */
 typedef struct SpaceAction {
        struct SpaceLink *next, *prev;
-       ListBase regionbase;            /* storage of regions for inactive spaces */
+       ListBase regionbase;        /* storage of regions for inactive spaces */
        int spacetype;
        float blockscale;
 
        short blockhandler[8];
 
-       View2D v2d  DNA_DEPRECATED; /* copied to region */
+       View2D v2d DNA_DEPRECATED;  /* copied to region */
        
-       bAction         *action;                /* the currently active action */
-       bDopeSheet      ads;                    /* the currently active context (when not showing action) */
+       bAction     *action;        /* the currently active action */
+       bDopeSheet ads;             /* the currently active context (when not showing action) */
        
-       char  mode, autosnap;           /* mode: editing context; autosnap: automatic keyframe snapping mode   */
-       short flag;                             /* flag: bitmapped settings; */
-       float timeslide;                        /* for Time-Slide transform mode drawing - current frame? */
+       char mode, autosnap;        /* mode: editing context; autosnap: automatic keyframe snapping mode   */
+       short flag;                 /* flag: bitmapped settings; */
+       float timeslide;            /* for Time-Slide transform mode drawing - current frame? */
 } SpaceAction;
 
 /* SpaceAction flag */
 typedef enum eSAction_Flag {
-               /* during transform (only set for TimeSlide) */
-       SACTION_MOVING  = (1<<0),       
-               /* show sliders */
-       SACTION_SLIDERS = (1<<1),       
-               /* draw time in seconds instead of time in frames */
-       SACTION_DRAWTIME = (1<<2),
-               /* don't filter action channels according to visibility */
+       /* during transform (only set for TimeSlide) */
+       SACTION_MOVING  = (1 << 0),
+       /* show sliders */
+       SACTION_SLIDERS = (1 << 1),
+       /* draw time in seconds instead of time in frames */
+       SACTION_DRAWTIME = (1 << 2),
+       /* don't filter action channels according to visibility */
        //SACTION_NOHIDE = (1<<3), // XXX depreceated... old animation system
-               /* don't kill overlapping keyframes after transform */
-       SACTION_NOTRANSKEYCULL = (1<<4),
-               /* don't include keyframes that are out of view */
+       /* don't kill overlapping keyframes after transform */
+       SACTION_NOTRANSKEYCULL = (1 << 4),
+       /* don't include keyframes that are out of view */
        //SACTION_HORIZOPTIMISEON = (1<<5), // XXX depreceated... old irrelevant trick
-               /* show pose-markers (local to action) in Action Editor mode  */
-       SACTION_POSEMARKERS_SHOW = (1<<6),
-               /* don't draw action channels using group colors (where applicable) */
-       SACTION_NODRAWGCOLORS = (1<<7),
-               /* don't draw current frame number beside frame indicator */
-       SACTION_NODRAWCFRANUM = (1<<8),
-               /* temporary flag to force channel selections to be synced with main */
-       SACTION_TEMP_NEEDCHANSYNC = (1<<9),
-               /* don't perform realtime updates */
-       SACTION_NOREALTIMEUPDATES =     (1<<10),
-               /* move markers as well as keyframes */
-       SACTION_MARKERS_MOVE = (1<<11)
+       /* show pose-markers (local to action) in Action Editor mode  */
+       SACTION_POSEMARKERS_SHOW = (1 << 6),
+       /* don't draw action channels using group colors (where applicable) */
+       SACTION_NODRAWGCOLORS = (1 << 7),
+       /* don't draw current frame number beside frame indicator */
+       SACTION_NODRAWCFRANUM = (1 << 8),
+       /* temporary flag to force channel selections to be synced with main */
+       SACTION_TEMP_NEEDCHANSYNC = (1 << 9),
+       /* don't perform realtime updates */
+       SACTION_NOREALTIMEUPDATES = (1 << 10),
+       /* move markers as well as keyframes */
+       SACTION_MARKERS_MOVE = (1 << 11)
 } eSAction_Flag;       
 
 /* SpaceAction Mode Settings */
 typedef enum eAnimEdit_Context {
-               /* action on the active object */
-       SACTCONT_ACTION = 0,
-               /* list of all shapekeys on the active object, linked with their F-Curves */
-       SACTCONT_SHAPEKEY,
-               /* editing of gpencil data */
-       SACTCONT_GPENCIL,
-               /* dopesheet (default) */
-       SACTCONT_DOPESHEET
+       /* action on the active object */
+       SACTCONT_ACTION = 0,
+       /* list of all shapekeys on the active object, linked with their F-Curves */
+       SACTCONT_SHAPEKEY = 1,
+       /* editing of gpencil data */
+       SACTCONT_GPENCIL = 2,
+       /* dopesheet (default) */
+       SACTCONT_DOPESHEET = 3
 } eAnimEdit_Context;
 
 /* SpaceAction AutoSnap Settings (also used by other Animation Editors) */
 typedef enum eAnimEdit_AutoSnap {
-               /* no auto-snap */
-       SACTSNAP_OFF = 0,       
-               /* snap to 1.0 frame/second intervals */
-       SACTSNAP_STEP,
-               /* snap to actual frames/seconds (nla-action time) */
-       SACTSNAP_FRAME,
-               /* snap to nearest marker */
-       SACTSNAP_MARKER
+       /* no auto-snap */
+       SACTSNAP_OFF = 0,
+       /* snap to 1.0 frame/second intervals */
+       SACTSNAP_STEP = 1,
+       /* snap to actual frames/seconds (nla-action time) */
+       SACTSNAP_FRAME = 2,
+       /* snap to nearest marker */
+       SACTSNAP_MARKER = 3
 } eAnimEdit_AutoSnap;
 
 
@@ -652,7 +652,7 @@ typedef enum eAnimEdit_AutoSnap {
 /* Legacy Data */
 
 /* WARNING: Action Channels are now depreceated... they were part of the old animation system!
- *               (ONLY USED FOR DO_VERSIONS...)
+ *        (ONLY USED FOR DO_VERSIONS...)
  * 
  * Action Channels belong to Actions. They are linked with an IPO block, and can also own 
  * Constraint Channels in certain situations. 
@@ -663,27 +663,27 @@ typedef enum eAnimEdit_AutoSnap {
  * to the position of the group in the list, and their position within the group. 
  */
 typedef struct bActionChannel {
-       struct bActionChannel   *next, *prev;
-       bActionGroup                    *grp;                                   /* Action Group this Action Channel belongs to */
+       struct bActionChannel   *next, *prev;
+       bActionGroup            *grp;           /* Action Group this Action Channel belongs to */
        
-       struct Ipo                              *ipo;                                   /* IPO block this action channel references */
-       ListBase                                constraintChannels;             /* Constraint Channels (when Action Channel represents an Object or Bone) */
+       struct Ipo              *ipo;           /* IPO block this action channel references */
+       ListBase constraintChannels;            /* Constraint Channels (when Action Channel represents an Object or Bone) */
        
-       int             flag;                   /* settings accessed via bitmapping */
-       char    name[64];               /* channel name, MAX_NAME */
-       int             temp;                   /* temporary setting - may be used to indicate group that channel belongs to during syncing  */
+       int flag;               /* settings accessed via bitmapping */
+       char name[64];          /* channel name, MAX_NAME */
+       int temp;               /* temporary setting - may be used to indicate group that channel belongs to during syncing  */
 } bActionChannel;
 
 /* Action Channel flags (ONLY USED FOR DO_VERSIONS...) */
 typedef enum ACHAN_FLAG {
-       ACHAN_SELECTED  = (1<<0),
-       ACHAN_HILIGHTED = (1<<1),
-       ACHAN_HIDDEN    = (1<<2),
-       ACHAN_PROTECTED = (1<<3),
-       ACHAN_EXPANDED  = (1<<4),
-       ACHAN_SHOWIPO   = (1<<5),
-       ACHAN_SHOWCONS  = (1<<6),
-       ACHAN_MOVED     = (1<<31)
+       ACHAN_SELECTED  = (1 << 0),
+       ACHAN_HILIGHTED = (1 << 1),
+       ACHAN_HIDDEN    = (1 << 2),
+       ACHAN_PROTECTED = (1 << 3),
+       ACHAN_EXPANDED  = (1 << 4),
+       ACHAN_SHOWIPO   = (1 << 5),
+       ACHAN_SHOWCONS  = (1 << 6),
+       ACHAN_MOVED     = (1 << 31)
 } ACHAN_FLAG; 
 
 #endif