--- psiconv/trunk/lib/psiconv/parse_routines.h 2000/12/22 22:31:50 71 +++ psiconv/trunk/lib/psiconv/parse_routines.h 2003/11/23 21:47:24 167 @@ -21,8 +21,9 @@ #define PSICONV_PARSE_ROUTINES_H #include -#include #include +#include +#include #ifdef __cplusplus extern "C" { @@ -39,6 +40,8 @@ psiconv_u32 off, int *status); extern psiconv_u32 psiconv_read_u32(const psiconv_buffer buf,int lev, psiconv_u32 off, int *status); +extern psiconv_s32 psiconv_read_sint(const psiconv_buffer buf,int lev, + psiconv_u32 off, int *length, int *status); extern psiconv_S_t psiconv_read_S(const psiconv_buffer buf, int lev, psiconv_u32 off, int *length, int *status); @@ -53,11 +56,18 @@ extern psiconv_string_t psiconv_read_string(const psiconv_buffer buf,int lev, psiconv_u32 off,int *length, int *status); +extern psiconv_string_t psiconv_read_short_string(const psiconv_buffer buf, + int lev,psiconv_u32 off, + int *length,int *status); extern int psiconv_parse_bool(const psiconv_buffer buf, int lev, psiconv_u32 off, int *length, psiconv_bool_t *result); +extern psiconv_float_t psiconv_read_float(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, int *status); + + /* ****************** * parse_layout.c * @@ -132,16 +142,30 @@ psiconv_text_and_layout *result); extern int psiconv_parse_styled_layout_section(const psiconv_buffer buf, - int lev,psiconv_u32 off, - int *length, - psiconv_text_and_layout result, - psiconv_word_styles_section styles); + int lev,psiconv_u32 off, + int *length, + psiconv_text_and_layout result, + const psiconv_word_styles_section styles); extern int psiconv_parse_styleless_layout_section(const psiconv_buffer buf, - int lev,psiconv_u32 off, - int *length, - psiconv_text_and_layout result, - psiconv_character_layout base_char, - psiconv_paragraph_layout base_para); + int lev,psiconv_u32 off, + int *length, + psiconv_text_and_layout result, + const psiconv_character_layout base_char, + const psiconv_paragraph_layout base_para); +extern int psiconv_parse_embedded_object_section + (const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_embedded_object_section *result); +extern int psiconv_parse_object_display_section(const psiconv_buffer buf, + int lev, + psiconv_u32 off, int *length, + psiconv_object_display_section *result); +extern int psiconv_parse_object_icon_section(const psiconv_buffer buf,int lev, + psiconv_u32 off, int *length, + psiconv_object_icon_section *result); + + + /* ****************** @@ -169,6 +193,88 @@ /* ***************** + * parse_sheet.c * + ***************** */ + +extern int psiconv_parse_sheet_status_section(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_status_section *result); + +extern int psiconv_parse_sheet_formula_list(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_formula_list *result); + +extern int psiconv_parse_formula(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_formula *result); + +extern int psiconv_parse_sheet_workbook_section(const psiconv_buffer buf, + int lev, + psiconv_u32 off, int *length, + psiconv_sheet_workbook_section *result); +extern int psiconv_parse_sheet_cell(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_cell *result, + const psiconv_sheet_cell_layout default_layout, + const psiconv_sheet_line_list row_default_layouts, + const psiconv_sheet_line_list col_default_layouts); + +extern int psiconv_parse_sheet_cell_list(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_cell_list *result, + const psiconv_sheet_cell_layout default_layout, + const psiconv_sheet_line_list row_default_layouts, + const psiconv_sheet_line_list col_default_layouts); +extern int psiconv_parse_sheet_worksheet_list( const psiconv_buffer buf, + int lev, + psiconv_u32 off, int *length, + psiconv_sheet_worksheet_list *result); +extern int psiconv_parse_sheet_worksheet(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_worksheet *result); +extern int psiconv_parse_sheet_numberformat(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_numberformat result); +extern int psiconv_parse_sheet_cell_layout(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_cell_layout result); +extern int psiconv_parse_sheet_line(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_line *result, + const psiconv_sheet_cell_layout default_layout); +extern int psiconv_parse_sheet_line_list(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_line_list *result, + const psiconv_sheet_cell_layout default_layout); +extern int psiconv_parse_sheet_name_section(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_name_section *result); +extern int psiconv_parse_sheet_info_section(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_info_section *result); +extern int psiconv_parse_sheet_variable(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_variable *result); +extern int psiconv_parse_sheet_variable_list(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_variable_list *result); +extern int psiconv_parse_sheet_grid_section(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_grid_section *result); +extern int psiconv_parse_sheet_grid_size_list(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_grid_size_list *result); +extern int psiconv_parse_sheet_grid_size(const psiconv_buffer buf, int lev, + psiconv_u32 off, int *length, + psiconv_sheet_grid_size *result); +extern int psiconv_parse_sheet_grid_break_list(const psiconv_buffer buf, + int lev, psiconv_u32 off, int *length, + psiconv_sheet_grid_break_list *result); + + + + +/* ***************** * parse_image.c * ***************** */ @@ -181,7 +287,7 @@ psiconv_u32 off, int *length, psiconv_jumptable_section *result); extern int psiconv_parse_sketch_section(const psiconv_buffer buf, int lev, - psiconv_u32 off, int *length, int is_object, + psiconv_u32 off, int *length, psiconv_sketch_section *result); extern int psiconv_parse_clipart_section(const psiconv_buffer buf, int lev, psiconv_u32 off, int *length, @@ -209,6 +315,9 @@ extern int psiconv_parse_clipart_file(const psiconv_buffer buf,int lev, psiconv_u32 off, psiconv_clipart_f *result); +extern int psiconv_parse_sheet_file(const psiconv_buffer buf,int lev, + psiconv_u32 off, psiconv_sheet_f *result); + #ifdef __cplusplus } #endif /* __cplusplus */