Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Letwory <nathan@letworyinteractive.com>2009-01-04 21:16:34 +0300
committerNathan Letwory <nathan@letworyinteractive.com>2009-01-04 21:16:34 +0300
commit9e7643aa7c25ce551bfe59905fbf56156e264824 (patch)
tree7664a0ae5f539b9d9fb7ac476c78377373a80afb /source/blender/blenkernel/BKE_verse.h
parent3aeb63cad2340d92c17df375bbe55629299661c0 (diff)
2.5 / Cleanup
- remove Verse support. This will be brought back in The Future (probably jiri + me) This means 5k lines less in blenkernel. - fix two small errors for global cleanup, now compiles properly with FFMPEG enabled too.
Diffstat (limited to 'source/blender/blenkernel/BKE_verse.h')
-rw-r--r--source/blender/blenkernel/BKE_verse.h583
1 files changed, 0 insertions, 583 deletions
diff --git a/source/blender/blenkernel/BKE_verse.h b/source/blender/blenkernel/BKE_verse.h
deleted file mode 100644
index e67696dc62a..00000000000
--- a/source/blender/blenkernel/BKE_verse.h
+++ /dev/null
@@ -1,583 +0,0 @@
-/**
- * $Id$
- *
- * ***** BEGIN GPL LICENSE BLOCK *****
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * of the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software Foundation,
- * Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * Contributor(s): Jiri Hnidek.
- *
- * ***** END GPL LICENSE BLOCK *****
- */
-
-/* #define WITH_VERSE */
-
-#ifndef BKE_VERSE_H
-#define BKE_VERSE_H
-
-#include "DNA_listBase.h"
-#include "BLI_dynamiclist.h"
-
-#include "verse.h"
-#include "verse_ms.h"
-
-struct VNode;
-struct VerseEdge;
-
-/*
- * Verse Edge Hash (similar to edit edge hash)
- */
-#define VEDHASHSIZE (512*512)
-#define VEDHASH(a, b) ((a<b ? a : b) % VEDHASHSIZE)
-
-/*
- * verse data: 4 float value
- */
-typedef struct quat_real32_item {
- struct quat_real32_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- real32 value[4];
-} quat_real32_item;
-
-/*
- * verse data: 4 uint32 values
- */
-typedef struct quat_uint32_item {
- struct quat_uint32_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- uint32 value[4];
-} quat_uint32_item;
-
-/*
- * verse data: 3 float values
- */
-typedef struct vec_real32_item {
- struct vec_real32_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- real32 value[3];
-} vec_real32_item;
-
-/*
- * verse data: float value (weight)
- */
-typedef struct real32_item {
- struct real32_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- real32 value;
-} real32_item;
-
-/*
- * verse data: uint32 value
- */
-typedef struct uint32_item {
- struct uint32_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- uint32 value;
-} uint32_item;
-
-/*
- * verse data: uint8 value
- */
-typedef struct uint8_item {
- struct uint8_item *next, *prev;
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of item */
- uint8 value;
-} uint8_item;
-
-/*
- * verse data: vertex
- */
-typedef struct VerseVert {
- struct VerseVert *next, *prev;
- /* verse data */
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of vertex */
- real32 co[3]; /* x,y,z-coordinates of vertex */
- real32 no[3]; /* normal of vertex */
- /* blender internals */
- short flag; /* flags: VERT_DELETED, VERT_RECEIVED, etc. */
- void *vertex; /* pointer at EditVert or MVert */
- int counter; /* counter of VerseFaces using this VerseVert */
- union {
- unsigned int index; /* counter need during transformation to mesh */
- struct VerseVert *vvert;
- } tmp; /* pointer at new created verse vert, it is
- * used during duplicating geometry node */
- float *cos; /* modified coordinates of vertex */
- float *nos; /* modified normal vector */
-} VerseVert;
-
-/*
- * structture used for verse edge hash
- */
-typedef struct HashVerseEdge {
- struct VerseEdge *vedge;
- struct HashVerseEdge *next;
-} HashVerseEdge;
-
-/*
- * fake verse data: edge
- */
-typedef struct VerseEdge {
- struct VerseEdge *next, *prev;
- uint32 v0, v1; /* indexes of verse vertexes */
- int counter; /* counter of verse faces using this edge */
- struct HashVerseEdge hash; /* hash table */
- union {
- unsigned int index; /* temporary index of edge */
- } tmp;
-} VerseEdge;
-
-/*
- * verse data: polygon
- */
-typedef struct VerseFace {
- struct VerseFace *next, *prev;
- /* verse data */
- struct VLayer *vlayer; /* pointer at VerseLayer */
- uint32 id; /* id of face */
- struct VerseVert *vvert0; /* pointer at 1st VerseVert */
- struct VerseVert *vvert1; /* pointer at 2nd VerseVert */
- struct VerseVert *vvert2; /* pointer at 3th VerseVert */
- struct VerseVert *vvert3; /* pointer at 4th VerseVert */
- unsigned int v0, v1, v2, v3; /* indexes of VerseVerts ... needed during receiving */
- /* blender internals */
- char flag; /* flags: FACE_SEND_READY, FACE_SENT, FACE_RECEIVED, FACE_CHANGED*/
- short counter; /* counter of missed VerseVertexes */
- void *face; /* pointer at EditFace */
- float no[3]; /* normal vector */
- float *nos; /* modified normal vector */
-} VerseFace;
-
-/*
- * verse data: layer
- */
-typedef struct VLayer {
- struct VLayer *next, *prev;
- /* verse data*/
- struct VNode *vnode; /* pointer at VerseNode */
- uint16 id; /* id of layer */
- char *name; /* name of layer */
- VNGLayerType type; /* type of layer (VN_G_LAYER_VERTEX_XYZ, VN_G_LAYER_POLYGON_CORNER_UINT32) */
- uint32 def_int; /* default integer value */
- real64 def_real; /* default float value */
- /* blender internals */
- char flag; /* flags: LAYER_SENT, LAYER_RECEIVED, LAYER_DELETED, LAYER_OBSOLETE */
- short content; /* type of content (VERTEX_LAYER, POLYGON_LAYER) */
- struct DynamicList dl; /* vertexes, polygons, etc. */
- struct ListBase queue; /* queue of vertexes, polygons, etc. waiting for sending to verse server */
- struct ListBase orphans; /* list of versedata (polygons, etc.), that can be added to the DynamicList
- * due to not received VerseVerts */
- unsigned int counter; /* counter of sent items */
- /* client dependent methods */
- void (*post_layer_create)(struct VLayer *vlayer);
- void (*post_layer_destroy)(struct VLayer *vlayer);
-} VLayer;
-
-/*
- * verse data: link
- */
-typedef struct VLink{
- struct VLink *next, *prev;
- /* verse data */
- struct VerseSession *session; /* session pointer */
- struct VNode *source; /* object VerseNode "pointing" at some other VerseNode */
- struct VNode *target; /* VerseNode linked with some object node */
- unsigned int id; /* id of VerseLink */
- unsigned int target_id; /* some unknow id */
- char *label; /* name/label of VerseLink */
- /* blender internals */
- char flag; /* flags: LINK_SEND_READY */
- /* client dependent methods */
- void (*post_link_set)(struct VLink *vlink);
- void (*post_link_destroy)(struct VLink *vlink);
-} VLink;
-
-/*
- * bitmap layer
- */
-typedef struct VBitmapLayer {
- struct VBitmapLayer *next, *prev;
- /* verse data */
- struct VNode *vnode; /* pointer at Verse Node */
- VLayerID id; /* id of layer */
- char *name; /* name of layer */
- VNBLayerType type; /* type of layer (bits per channel) 1, 8, 16, 32, 64 */
- void *data; /* dynamic allocated data */
- /* blender internals */
- char flag;
-} VBitmapLayer;
-
-/*
- * data of bitmap node
- */
-typedef struct VBitmapData {
- struct DynamicList layers; /* dynamic list with access array of bitmap layers */
- struct ListBase queue; /* queue of layers waiting for receiving from verse server */
- uint16 width; /* width of all verse layers */
- uint16 height; /* height of all verse layers */
- uint16 depth; /* depth of bitmap 1 is 2D bitmap, >1 is 3D bitmap */
- /* blender internals */
- uint16 t_width; /* = (width/VN_B_TILE_SIZE + 1)*VN_B_TILE_SIZE */
- uint16 t_height; /* = (height/VN_B_TILE_SIZE + 1)*VN_B_TILE_SIZE */
- void *image; /* pointer at image */
- /* client dependent methods */
- void (*post_bitmap_dimension_set)(struct VNode *vnode);
- void (*post_bitmap_layer_create)(struct VBitmapLayer *vblayer);
- void (*post_bitmap_layer_destroy)(struct VBitmapLayer *vblayer);
- void (*post_bitmap_tile_set)(struct VBitmapLayer *vblayer, unsigned int xs, unsigned int ys);
-}VBitmapData;
-
-/*
- * data of geometry node
- */
-typedef struct VGeomData {
- struct DynamicList layers; /* dynamic list with access array of Layers */
- struct VLink *vlink; /* pointer at VerseLink connecting object node and geom node */
- struct ListBase queue; /* queue of our layers waiting for receiving from verse server */
- void *mesh; /* pointer at Mesh (object node) */
- void *editmesh; /* pointer at EditMesh (edit mode) */
- struct HashVerseEdge *hash; /* verse edge hash */
- struct ListBase edges; /* list of fake verse edges */
- /* client dependent methods */
- void (*post_vertex_create)(struct VerseVert *vvert);
- void (*post_vertex_set_xyz)(struct VerseVert *vvert);
- void (*post_vertex_delete)(struct VerseVert *vvert);
- void (*post_vertex_free_constraint)(struct VerseVert *vvert);
- void (*post_polygon_create)(struct VerseFace *vface);
- void (*post_polygon_set_corner)(struct VerseFace *vface);
- void (*post_polygon_delete)(struct VerseFace *vface);
- void (*post_polygon_free_constraint)(struct VerseFace *vface);
- void (*post_geometry_free_constraint)(struct VNode *vnode);
- void (*post_polygon_set_uint8)(struct VerseFace *vface);
-} VGeomData;
-
-/*
- * data of object node
- */
-typedef struct VObjectData {
- struct DynamicList links; /* dynamic list with access array of links between other nodes */
- struct ListBase queue; /* queue of links waiting for sending and receiving from verse server */
- float pos[3]; /* position of object VerseNode */
- float quat[4]; /* rotation of object VerseNode stored in quat */
- float scale[3]; /* scale of object VerseNode */
- void *object; /* pointer at object */
- short flag; /* flag: POS_RECEIVE_READY, ROT_RECEIVE_READY. SCALE_RECEIVE_READY */
- /* client dependent methods */
-/* void (*post_transform)(struct VNode *vnode);*/
- void (*post_transform_pos)(struct VNode *vnode);
- void (*post_transform_rot)(struct VNode *vnode);
- void (*post_transform_scale)(struct VNode *vnode);
- void (*post_object_free_constraint)(struct VNode *vnode);
-} VObjectData;
-
-/*
- * Verse Tag
- */
-typedef struct VTag {
- struct VTag *next, *prev;
- /* verse data*/
- struct VTagGroup *vtaggroup; /* pointer at Verse Tag Group */
- uint16 id; /* id of this tag */
- char *name; /* name of this tag*/
- VNTagType type; /* type: VN_TAG_BOOLEAN, VN_TAG_UINT32, VN_TAG_REAL64, VN_TAG_REAL64_VEC3,
- VN_TAG_LINK, VN_TAG_ANIMATION, VN_TAG_BLOB */
- VNTag *tag; /* pointer at value (enum: vboolean, vuint32, vreal64, vstring,
- vreal64_vec3, vlink, vanimation, vblob)*/
- /* blender internals */
- void *value; /* pointer at blender value */
-} VTag;
-
-/*
- * Verse Tag Group (verse tags are grouped in tag groups)
- */
-typedef struct VTagGroup {
- struct VTagGroup *next, *prev;
- /* verse data*/
- struct VNode *vnode; /* pointer at Verse Node */
- uint16 id; /* id of this tag group */
- char *name; /* name of this tag group */
- /* blender internals */
- struct DynamicList tags; /* dynamic list with access array containing tags */
- struct ListBase queue; /* list of tags waiting for receiving from verse server */
- /* client dependent methods */
- void (*post_tag_change)(struct VTag *vatg);
- void (*post_taggroup_create)(struct VTagGroup *vtaggroup);
-} VTagGroup;
-
- /*
- * Verse Method Group
- */
-typedef struct VMethodGroup
-{
- struct VMethodGroup *next, *prev;
- uint16 group_id;
- char name[16];
- struct ListBase methods;
-} VMethodGroup;
-
-/*
- * Verse Method
- */
-typedef struct VMethod
-{
- struct VMethod *next, *prev;
- uint16 id;
- char name[500];
- uint8 param_count;
- VNOParamType *param_type;
- char **param_name;
-} VMethod;
-
-/*
- * Verse Node
- */
-typedef struct VNode {
- struct VNode *next, *prev;
- /* verse data*/
- struct VerseSession *session; /* session pointer */
- VNodeID id; /* node id */
- VNodeID owner_id; /* owner's id of this node */
- char *name; /* name of this node */
- uint32 type; /* type of node (V_NT_OBJECT, V_NT_GEOMETRY, V_NT_BITMAP) */
- /* blender internals */
- char flag; /* flags: NODE_SENT, NODE_RECEIVED, NODE_DELTED, NODE_OBSOLETE */
- struct DynamicList taggroups; /* dynamic list with access array of taggroups */
- struct ListBase methodgroups; /* method groups */
- struct ListBase queue; /* list of taggroups waiting for receiving from verse server */
- void *data; /* generic pointer at some data (VObjectData, VGeomData, ...) */
- int counter; /* counter of verse link pointing at this vnode (vlink->target) */
- /* client dependent methods */
- void (*post_node_create)(struct VNode *vnode);
- void (*post_node_destroy)(struct VNode *vnode);
- void (*post_node_name_set)(struct VNode *vnode);
-#ifdef VERSECHAT
- /* verse chat */
- int chat_flag; /* CHAT_LOGGED, CHAT_NOTLOGGED */
-#endif
-} VNode;
-
-
-/*
- * Verse Session: verse client can be connected to several verse servers
- * it is neccessary to store some information about each session
- */
-typedef struct VerseSession {
- struct VerseSession *next, *prev;
- /* verse data */
- VSession *vsession; /* pointer at VSeesion (verse.h) */
- uint32 avatar; /* id of avatar */
- char *address; /* string containg IP/domain name of verse server and number of port */
- void *connection; /* no clue */
- uint8 *host_id; /* no clue */
- /* blender internals */
- short flag; /* flag: VERSE_CONNECTING, VERSE_CONNECTED */
- DynamicList nodes; /* list of verse nodes */
- ListBase queue; /* list of nodes waiting for sending to verse server */
- unsigned int counter; /* count of events, when connection wasn't accepted */
- /* client dependent methods */
- void (*post_connect_accept)(struct VerseSession *session);
- void (*post_connect_terminated)(struct VerseSession *session);
- void (*post_connect_update)(struct VerseSession *session);
-} VerseSession;
-
-typedef struct VerseServer {
- struct VerseServer *next, *prev;
- char *name; /* human-readable server name */
- char *ip; /* string containing IP/domain name of verse server and number of port */
- short flag; /* flag: VERSE_CONNECTING, VERSE_CONNECTED */
- struct VerseSession *session; /* pointer to related session */
-} VerseServer;
-/*
- * list of post callback functions
- */
-typedef struct PostCallbackFunction {
- void (*function)(void *arg);
- void *param;
-} PostCallbackFunction;
-
-/* VerseSession->flag */
-#define VERSE_CONNECTING 1
-#define VERSE_CONNECTED 2
-#define VERSE_AUTOSUBSCRIBE 4
-
-/* max VerseSession->counter value */
-#define MAX_UNCONNECTED_EVENTS 100
-
-/* VNode flags */
-#define NODE_SENT 1
-#define NODE_RECEIVED 2
-#define NODE_DELTED 4
-#define NODE_OBSOLETE 8
-
-#ifdef VERSECHAT
-#define CHAT_NOTLOGGED 0
-#define CHAT_LOGGED 1
-#endif
-
-/* VLayer flags */
-#define LAYER_SENT 1
-#define LAYER_RECEIVED 2
-#define LAYER_DELETED 4
-#define LAYER_OBSOLETE 8
-
-/* VLink->flag */
-#define LINK_SEND_READY 1
-
-/* VObjectData->flag */
-#define POS_RECEIVE_READY 1
-#define ROT_RECEIVE_READY 2
-#define SCALE_RECEIVE_READY 4
-#define POS_SEND_READY 8
-#define ROT_SEND_READY 16
-#define SCALE_SEND_READY 32
-
-/* VLayer->content */
-#define VERTEX_LAYER 0
-#define POLYGON_LAYER 1
-
-/* VerseVert->flag */
-#define VERT_DELETED 1 /* vertex delete command was received from verse server */
-#define VERT_RECEIVED 2 /* VerseVert was received from verse server (is not in sending queue) */
-#define VERT_LOCKED 4 /* VerseVert is ready to send local position to verse server */
-#define VERT_POS_OBSOLETE 8 /* position of vertex was changed during sending to verse server */
-#define VERT_OBSOLETE 16 /* vertex delete command was sent to verse server; it means, that
- * no information related to this vertex shoudln't be sent to verse
- * until verse vertex is completely deleted ... then this vertex id
- * can be reused again for new vertex */
-
-/* VerseFace->flag */
-#define FACE_SEND_READY 1 /* VerseFace is ready for sending to verse server */
-#define FACE_RECEIVED 2 /* VerseFace was received from verse server */
-#define FACE_SENT 4 /* VerseFace was sent to verse server and we expect receiving from verse server */
-#define FACE_DELETED 8 /* delete command was sent to verse server */
-#define FACE_CHANGED 16 /* VerseFace was only changed not created */
-#define FACE_OBSOLETE 32 /* VerseFace was changed during sending to verse server */
-
-/* Queue type */
-#define VERSE_NODE 1
-#define VERSE_LINK 2
-#define VERSE_LAYER 3
-#define VERSE_VERT 4
-#define VERSE_FACE 5
-
-#define VERSE_TAG 6
-#define VERSE_TAG_GROUP 7
-
-#define VERSE_VERT_UINT32 8
-#define VERSE_VERT_REAL32 9
-#define VERSE_VERT_VEC_REAL32 10
-
-#define VERSE_FACE_UINT8 11
-#define VERSE_FACE_UINT32 12
-#define VERSE_FACE_REAL32 13
-#define VERSE_FACE_QUAT_UINT32 14
-#define VERSE_FACE_QUAT_REAL32 15
-
-/* Verse Bitmap Layer flags */
-#define VBLAYER_SUBSCRIBED 1
-
-/* function prototypes */
-
-/* functions from verse_session.c */
-void set_verse_session_callbacks(void);
-struct VerseSession *versesession_from_vsession(VSession *vsession);
-struct VerseSession *current_verse_session(void);
-struct VerseSession *create_verse_session(const char *name, const char *pass, const char *address, uint8 *expected_key);
-void free_verse_session(struct VerseSession *session);
-void b_verse_update(void);
-void b_verse_ms_get(void);
-void b_verse_connect(char *address);
-void end_verse_session(struct VerseSession *session);
-void end_all_verse_sessions(void);
-
-/* functions from verse_node.c */
-void send_verse_tag(struct VTag *vtag);
-void send_verse_taggroup(struct VTagGroup *vtaggroup);
-void send_verse_node(struct VNode *vnode);
-void free_verse_node_data(struct VNode *vnode);
-void free_verse_node(struct VNode *vnode);
-struct VNode* lookup_vnode(VerseSession *session, VNodeID node_id);
-struct VNode* create_verse_node(VerseSession *session, VNodeID node_id, uint8 type, VNodeID owner_id);
-void set_node_callbacks(void);
-
-/* functions from verse_object_node.c */
-struct VLink *find_unsent_parent_vlink(struct VerseSession *session, struct VNode *vnode);
-struct VLink *find_unsent_child_vlink(struct VerseSession *session, struct VNode *vnode);
-struct VLink *create_verse_link(VerseSession *session, struct VNode *source, struct VNode *target, uint16 link_id, uint32 target_id, const char *label);
-void send_verse_object_position(struct VNode *vnode);
-void send_verse_object_rotation(struct VNode *vnode);
-void send_verse_object_scale(struct VNode *vnode);
-void send_verse_link(struct VLink *vlink);
-
-void free_object_data(struct VNode *vnode);
-void set_object_callbacks(void);
-struct VObjectData *create_object_data(void);
-
-
-/* functions from verse_method.c */
-void free_verse_methodgroup(VMethodGroup *vmg);
-#ifdef VERSECHAT
-void send_say(const char *chan, const char *utter);
-void send_login(struct VNode *vnode);
-void send_logout(struct VNode *vnode);
-void send_join(struct VNode *vnode, const char *chan);
-void send_leave(struct VNode *vnode, const char *chan);
-#endif
-void set_method_callbacks(void);
-
-/* functions from verse_geometry_node.c */
-struct VerseFace* create_verse_face(struct VLayer *vlayer, uint32 polygon_id, uint32 v0, uint32 v1, uint32 v2, uint32 v3);
-struct VerseVert* create_verse_vertex(struct VLayer *vlayer, uint32 vertex_id, real32 x, real32 y, real32 z);
-struct VLayer *create_verse_layer(struct VNode *vnode, VLayerID layer_id, const char *name, VNGLayerType type, uint32 def_integer, real64 def_real);
-struct VGeomData *create_geometry_data(void);
-
-void send_verse_layer(struct VLayer *vlayer);
-
-void send_verse_face_corner_quat_real32(struct quat_real32_item *item, short type);
-void send_verse_face_corner_quat_uint32(struct quat_uint32_item *item, short type);
-void send_verse_face_real32(struct real32_item *item, short type);
-void send_verse_face_uint32(struct uint32_item *item, short type);
-void send_verse_face_uint8(struct uint8_item *item, short type);
-
-void send_verse_vert_vec_real32(struct vec_real32_item *item, short type);
-void send_verse_vert_real32(struct real32_item *item, short type);
-void send_verse_vert_uint32(struct uint32_item *item, short type);
-
-void send_verse_vertex_delete(struct VerseVert *vvert);
-void send_verse_vertex(struct VerseVert *vvert);
-void send_verse_face_delete(struct VerseFace *vface);
-
-void destroy_geometry(struct VNode *vnode);
-
-struct VLayer* find_verse_layer_type(struct VGeomData *geom, short content);
-void add_item_to_send_queue(struct ListBase *lb, void *item, short type);
-void free_geom_data(struct VNode *vnode);
-void set_geometry_callbacks(void);
-
-/* functions prototypes from verse_bitmap.c */
-void set_bitmap_callbacks(void);
-void free_bitmap_layer_data(struct VBitmapLayer *vblayer);
-struct VBitmapLayer *create_bitmap_layer(struct VNode *vnode, VLayerID layer_id, const char *name, VNBLayerType type);
-void free_bitmap_node_data(struct VNode *vnode);
-struct VBitmapData *create_bitmap_data(void);
-
-#endif