goat3d

diff src/goat3d.h @ 26:1c601bf07b86

added the node API glue
author John Tsiombikas <nuclear@member.fsf.org>
date Sat, 28 Sep 2013 20:36:55 +0300
parents d0260d80ae09
children 4deb0b12fe14
line diff
     1.1 --- a/src/goat3d.h	Sat Sep 28 19:12:50 2013 +0300
     1.2 +++ b/src/goat3d.h	Sat Sep 28 20:36:55 2013 +0300
     1.3 @@ -26,6 +26,7 @@
     1.4  };
     1.5  
     1.6  enum goat3d_node_type {
     1.7 +	GOAT3D_NODE_NULL,
     1.8  	GOAT3D_NODE_MESH,
     1.9  	GOAT3D_NODE_LIGHT,
    1.10  	GOAT3D_NODE_CAMERA
    1.11 @@ -168,27 +169,27 @@
    1.12  struct goat3d_node *goat3d_create_node(void);
    1.13  
    1.14  void goat3d_set_node_name(struct goat3d_node *node, const char *name);
    1.15 -const char *goat3d_get_node_name(struct goat3d_node *node);
    1.16 +const char *goat3d_get_node_name(const struct goat3d_node *node);
    1.17  
    1.18  void goat3d_set_node_object(struct goat3d_node *node, enum goat3d_node_type type, void *obj);
    1.19 -void *goat3d_get_node_object(struct goat3d_node *node);
    1.20 -enum goat3d_node_type goat3d_get_node_type(struct goat3d_node *node);
    1.21 +void *goat3d_get_node_object(const struct goat3d_node *node);
    1.22 +enum goat3d_node_type goat3d_get_node_type(const struct goat3d_node *node);
    1.23  
    1.24  void goat3d_add_node_child(struct goat3d_node *node, struct goat3d_node *child);
    1.25 -int goat3d_get_node_child_count(struct goat3d_node *node);
    1.26 -struct goat3d_node *goat3d_get_node_child(struct goat3d_node *node, int idx);
    1.27 +int goat3d_get_node_child_count(const struct goat3d_node *node);
    1.28 +struct goat3d_node *goat3d_get_node_child(const struct goat3d_node *node, int idx);
    1.29  
    1.30  void goat3d_set_node_position(struct goat3d_node *node, float x, float y, float z, long tmsec);
    1.31  void goat3d_set_node_rotation(struct goat3d_node *node, float qx, float qy, float qz, float qw, long tmsec);
    1.32  void goat3d_set_node_scaling(struct goat3d_node *node, float sx, float sy, float sz, long tmsec);
    1.33  void goat3d_set_node_pivot(struct goat3d_node *node, float px, float py, float pz);
    1.34  
    1.35 -void goat3d_get_node_position(struct goat3d_node *node, float *xptr, float *yptr, float *zptr, long tmsec);
    1.36 -void goat3d_get_node_rotation(struct goat3d_node *node, float *xptr, float *yptr, float *zptr, float *wptr, long tmsec);
    1.37 -void goat3d_get_node_scaling(struct goat3d_node *node, float *xptr, float *yptr, float *zptr, long tmsec);
    1.38 -void goat3d_get_node_pivot(struct goat3d_node *node, float *xptr, float *yptr, float *zptr);
    1.39 +void goat3d_get_node_position(const struct goat3d_node *node, float *xptr, float *yptr, float *zptr, long tmsec);
    1.40 +void goat3d_get_node_rotation(const struct goat3d_node *node, float *xptr, float *yptr, float *zptr, float *wptr, long tmsec);
    1.41 +void goat3d_get_node_scaling(const struct goat3d_node *node, float *xptr, float *yptr, float *zptr, long tmsec);
    1.42 +void goat3d_get_node_pivot(const struct goat3d_node *node, float *xptr, float *yptr, float *zptr);
    1.43  
    1.44 -void goat3d_get_node_matrix(struct goat3d_node *node, float *matrix, long tmsec);
    1.45 +void goat3d_get_node_matrix(const struct goat3d_node *node, float *matrix, long tmsec);
    1.46  
    1.47  #ifdef __cplusplus
    1.48  }