libDXF 0.0.1
A library with DXF related functions written in C.
|
00001 00043 #ifndef LIBDXF_SRC_IDBUFFER_H 00044 #define LIBDXF_SRC_IDBUFFER_H 00045 00046 00047 #include "global.h" 00048 00049 00050 #ifdef __cplusplus 00051 extern "C" { 00052 #endif 00053 00054 00058 typedef struct 00059 dxf_idbuffer_entity_pointer_struct 00060 { 00061 char *soft_pointer; 00065 struct DxfIdbufferEntityPointer *next; 00068 } DxfIdbufferEntityPointer; 00069 00070 00074 typedef struct 00075 dxf_idbuffer 00076 { 00077 /* Members common for all DXF objects. */ 00078 int id_code; 00083 char *dictionary_owner_soft; 00086 char *dictionary_owner_hard; 00089 /* Specific members for a DXF idbuffer. */ 00090 DxfIdbufferEntityPointer *entity_pointer; 00095 struct DxfIdbuffer *next; 00098 } DxfIdbuffer; 00099 00100 00101 DxfIdbuffer *dxf_idbuffer_new (); 00102 DxfIdbuffer *dxf_idbuffer_init (DxfIdbuffer *idbuffer); 00103 DxfIdbuffer *dxf_idbuffer_read (DxfFile *fp, DxfIdbuffer *idbuffer); 00104 int dxf_idbuffer_write (DxfFile *fp, DxfIdbuffer *idbuffer); 00105 int dxf_idbuffer_free (DxfIdbuffer *idbuffer); 00106 void dxf_idbuffer_free_chain (DxfIdbuffer *id_buffers); 00107 int dxf_idbuffer_get_id_code (DxfIdbuffer *idbuffer); 00108 DxfIdbuffer *dxf_idbuffer_set_id_code (DxfIdbuffer *idbuffer, int id_code); 00109 char *dxf_idbuffer_get_dictionary_owner_soft (DxfIdbuffer *idbuffer); 00110 DxfIdbuffer *dxf_idbuffer_set_dictionary_owner_soft (DxfIdbuffer *idbuffer, char *dictionary_owner_soft); 00111 char *dxf_idbuffer_get_dictionary_owner_hard (DxfIdbuffer *idbuffer); 00112 DxfIdbuffer *dxf_idbuffer_set_dictionary_owner_hard (DxfIdbuffer *idbuffer, char *dictionary_owner_hard); 00113 DxfIdbufferEntityPointer *dxf_idbuffer_get_entity_pointer (DxfIdbuffer *idbuffer); 00114 DxfIdbuffer *dxf_idbuffer_set_entity_pointer (DxfIdbuffer *idbuffer, DxfIdbufferEntityPointer *entity_pointer); 00115 DxfIdbuffer *dxf_idbuffer_get_next (DxfIdbuffer *idbuffer); 00116 DxfIdbuffer *dxf_idbuffer_set_next (DxfIdbuffer *idbuffer, DxfIdbuffer *next); 00117 DxfIdbuffer *dxf_idbuffer_get_last (DxfIdbuffer *idbuffer); 00118 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_new (); 00119 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_init (DxfIdbufferEntityPointer *entity_pointer); 00120 int dxf_idbuffer_entity_pointer_free (DxfIdbufferEntityPointer *entity_pointer); 00121 void dxf_idbuffer_entity_pointer_free_chain (DxfIdbufferEntityPointer *entity_pointers); 00122 char *dxf_idbuffer_entity_pointer_get_soft_pointer (DxfIdbufferEntityPointer *entity_pointer); 00123 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_set_soft_pointer (DxfIdbufferEntityPointer *entity_pointer, char *soft_pointer); 00124 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_get_next (DxfIdbufferEntityPointer *entity_pointer); 00125 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_set_next (DxfIdbufferEntityPointer *entity_pointer, DxfIdbufferEntityPointer *next); 00126 DxfIdbufferEntityPointer *dxf_idbuffer_entity_pointer_get_last (DxfIdbufferEntityPointer *entity_pointer); 00127 00128 00129 #ifdef __cplusplus 00130 } 00131 #endif 00132 00133 00134 #endif /* LIBDXF_SRC_IDBUFFER_H */ 00135 00136 00137 /* EOF */