libDXF 0.0.1
A library with DXF related functions written in C.

ltype.h

Go to the documentation of this file.
00001 
00042 #ifndef LIBDXF_SRC_LTYPE_H
00043 #define LIBDXF_SRC_LTYPE_H
00044 
00045 
00046 #include "global.h"
00047 
00048 
00049 #ifdef __cplusplus
00050 extern "C" {
00051 #endif
00052 
00053 
00057 typedef struct
00058 dxf_ltype_struct
00059 {
00060         int id_code;
00064         char *linetype_name;
00067         char *description;
00070         char *complex_text_string[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00073         double total_pattern_length;
00076         double complex_x_offset[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00080         double complex_y_offset[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00084         double complex_scale[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00088         double dash_length[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00091         double complex_rotation[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00098         int flag;
00114         int alignment;
00118         int number_of_linetype_elements;
00121         int complex_element[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00133         int complex_shape_number[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00140         char *dictionary_owner_soft;
00143         char *complex_style_pointer[DXF_MAX_NUMBER_OF_DASH_LENGTH_ITEMS];
00147         char *dictionary_owner_hard;
00150         struct DxfLType *next;
00153 } DxfLType;
00154 
00155 
00156 DxfLType *dxf_ltype_new ();
00157 DxfLType *dxf_ltype_init (DxfLType *ltype);
00158 DxfLType *dxf_ltype_read (DxfFile *fp, DxfLType *ltype);
00159 int dxf_ltype_write (DxfFile *fp, DxfLType *ltype);
00160 int dxf_ltype_free (DxfLType *ltype);
00161 void dxf_ltype_free_chain (DxfLType *ltypes);
00162 int dxf_ltype_get_id_code (DxfLType *ltype);
00163 DxfLType *dxf_ltype_set_id_code (DxfLType *ltype, int id_code);
00164 char *dxf_ltype_get_linetype_name (DxfLType *ltype);
00165 DxfLType *dxf_ltype_set_linetype_name (DxfLType *ltype, char *linetype_name);
00166 char *dxf_ltype_get_description (DxfLType *ltype);
00167 DxfLType *dxf_ltype_set_description (DxfLType *ltype, char *description);
00168 char *dxf_ltype_get_complex_text_string (DxfLType *ltype, int i);
00169 DxfLType *dxf_ltype_set_complex_text_string (DxfLType *ltype, int i, char *complex_text_string);
00170 double dxf_ltype_get_total_pattern_length (DxfLType *ltype);
00171 DxfLType *dxf_ltype_set_total_pattern_length (DxfLType *ltype, double total_pattern_length);
00172 double dxf_ltype_get_complex_x_offset (DxfLType *ltype, int i);
00173 DxfLType *dxf_ltype_set_complex_x_offset (DxfLType *ltype, int i, double complex_x_offset);
00174 double dxf_ltype_get_complex_y_offset (DxfLType *ltype, int i);
00175 DxfLType *dxf_ltype_set_complex_y_offset (DxfLType *ltype, int i, double complex_y_offset);
00176 double dxf_ltype_get_complex_scale (DxfLType *ltype, int i);
00177 DxfLType *dxf_ltype_set_complex_scale (DxfLType *ltype, int i, double complex_scale);
00178 double dxf_ltype_get_dash_length (DxfLType *ltype, int i);
00179 DxfLType *dxf_ltype_set_dash_length (DxfLType *ltype, int i, double dash_length);
00180 double dxf_ltype_get_complex_rotation (DxfLType *ltype, int i);
00181 DxfLType *dxf_ltype_set_complex_rotation (DxfLType *ltype, int i, double complex_rotation);
00182 int dxf_ltype_get_flag (DxfLType *ltype);
00183 DxfLType *dxf_ltype_set_flag (DxfLType *ltype, int flag);
00184 int dxf_ltype_is_xreferenced (DxfLType *ltype);
00185 int dxf_ltype_is_xresolved (DxfLType *ltype);
00186 int dxf_ltype_is_referenced (DxfLType *ltype);
00187 int dxf_ltype_get_alignment (DxfLType *ltype);
00188 DxfLType *dxf_ltype_set_alignment (DxfLType *ltype, int alignment);
00189 int dxf_ltype_get_number_of_linetype_elements (DxfLType *ltype);
00190 DxfLType *dxf_ltype_set_number_of_linetype_elements (DxfLType *ltype, int number_of_linetype_elements);
00191 int dxf_ltype_get_complex_element (DxfLType *ltype, int i);
00192 DxfLType *dxf_ltype_set_complex_element (DxfLType *ltype, int i, int complex_element);
00193 int dxf_ltype_get_complex_shape_number (DxfLType *ltype, int i);
00194 DxfLType *dxf_ltype_set_complex_shape_number (DxfLType *ltype, int i, int complex_shape_number);
00195 char *dxf_ltype_get_dictionary_owner_soft (DxfLType *ltype);
00196 DxfLType *dxf_ltype_set_dictionary_owner_soft (DxfLType *ltype, char *dictionary_owner_soft);
00197 char *dxf_ltype_get_complex_style_pointer (DxfLType *ltype, int i);
00198 DxfLType *dxf_ltype_set_complex_style_pointer (DxfLType *ltype, int i, char *complex_style_pointer);
00199 char *dxf_ltype_get_dictionary_owner_hard (DxfLType *ltype);
00200 DxfLType *dxf_ltype_set_dictionary_owner_hard (DxfLType *ltype, char *dictionary_owner_hard);
00201 DxfLType *dxf_ltype_get_next (DxfLType *ltype);
00202 DxfLType *dxf_ltype_set_next (DxfLType *ltype, DxfLType *next);
00203 DxfLType *dxf_ltype_get_last (DxfLType *ltype);
00204 
00205 
00206 #ifdef __cplusplus
00207 }
00208 #endif
00209 
00210 
00211 #endif /* LIBDXF_SRC_LTYPE_H */
00212 
00213 
00214 /* EOF */