Merging r42896 through r42944 from trunk into soc-2911-tomato
[blender.git] / source / blender / makesdna / DNA_constraint_types.h
index 87c680a6ee2636b7208cdc91748cce5797d70b2b..f5abf00bd44d0e9a44b041e44e2745e97202ebde 100644 (file)
@@ -412,6 +412,8 @@ typedef struct bFollowTrackConstraint {
        struct MovieClip        *clip;
        char    track[24];
        int             flag, pad;
+       char            object[24];
+       struct Object *camera;
 } bFollowTrackConstraint;
 
 /* Camera Solver constraints */
@@ -420,6 +422,15 @@ typedef struct bCameraSolverConstraint {
        int             flag, pad;
 } bCameraSolverConstraint;
 
+/* Camera Solver constraints */
+typedef struct bObjectSolverConstraint {
+       struct MovieClip        *clip;
+       int             flag, pad;
+       char            object[24];
+       float           invmat[4][4];   /* parent-inverse matrix to use */
+       struct Object *camera;
+} bObjectSolverConstraint;
+
 /* ------------------------------------------ */
 
 /* bConstraint->type 
@@ -455,6 +466,7 @@ typedef enum eBConstraint_Types {
        CONSTRAINT_TYPE_PIVOT,                          /* Pivot Constraint */
        CONSTRAINT_TYPE_FOLLOWTRACK,            /* Follow Track Constraint */
        CONSTRAINT_TYPE_CAMERASOLVER,           /* Camera Solver Constraint */
+       CONSTRAINT_TYPE_OBJECTSOLVER,           /* Object Solver Constraint */
        
        /* NOTE: no constraints are allowed to be added after this */
        NUM_CONSTRAINT_TYPES
@@ -762,6 +774,11 @@ typedef enum eCameraSolver_Flags {
        CAMERASOLVER_ACTIVECLIP = (1<<0)
 } eCameraSolver_Flags;
 
+/* ObjectSolver Constraint -> flag */
+typedef enum eObjectSolver_Flags {
+       OBJECTSOLVER_ACTIVECLIP = (1<<0)
+} eObjectSolver_Flags;
+
 /* Rigid-Body Constraint */
 #define CONSTRAINT_DRAW_PIVOT 0x40
 #define        CONSTRAINT_DISABLE_LINKED_COLLISION 0x80