HOOPS/3dGS I.M. Interface

     << Back      Full Index      Forward >>


filedata.h

00001 /*
00002  * Copyright (c) 1998 by Tech Soft 3D, LLC.
00003  * The information contained herein is confidential and proprietary to
00004  * Tech Soft 3D, LLC., and considered a trade secret as defined under
00005  * civil and criminal statutes.  Tech Soft 3D shall pursue its civil
00006  * and criminal remedies in the event of unauthorized use or misappropriation
00007  * of its trade secrets.  Use of this information by anyone other than
00008  * authorized employees of Tech Soft 3D, LLC. is granted only under a
00009  * written non-disclosure agreement, expressly prescribing the scope and
00010  * manner of such use.
00011  *
00012  * $Id: filedata_8h-source.html,v 1.29 2008-03-10 07:09:28 stage Exp $
00013  */
00014 
00015 #ifndef FILEDATA_DEFINED
00016 #define FILEDATA_DEFINED
00017 
00018 #define         FILE_BLOCK_SIZE         1024
00019 
00020 #define         FILE_For_Reading        (int)0
00021 #define         FILE_For_Writing        (int)1
00022 
00023 #define         DIR_Select_Readable     (int)0x01
00024 #define         DIR_Select_Writeable    (int)0x02
00025 #define         DIR_Select_Executable   (int)0x04
00026 #define         DIR_Select_File         (int)0x08
00027 #define         DIR_Select_Directory    (int)0x10
00028 
00029 #define         FILE_Warn_Once_FLOAT_ERROR 0x1
00030 
00031 struct HT_File_Data {
00032     void                *fhandle;
00033     char                buffer[2][FILE_BLOCK_SIZE + 2];
00034                                            /* Waste one byte so that
00035                                             &buffer[0][FILE_BLOCK_SIZE] is
00036                                             legal. One more to make even. */
00037     int                 current_buffer;
00038     char                *bp,
00039                         *bpe;
00040     char                *back_bp,
00041                         *back_bpe;
00042     bool                eof,
00043                         back_eof;
00044     char const          *message,
00045                         *message2;
00046     int                 message_count;
00047     int                 user_data;
00048     int                 indent,
00049                         line_size,
00050                         line_position,
00051                         line_number;
00052     HT_Name             filename;
00053     bool                for_writing,
00054                         fatal_error,
00055                         recovering,
00056                         first_operation,
00057                         forced_comment;
00058     float               version;
00059     int                 warnings_given;
00060 };
00061 
00062 #define END_OF_FILE(fdata) ((fdata)->bpe == (fdata)->bp && (fdata)->eof)
00063 
00064 #endif
Main Index
HOOPS/3dGS I.M. Interface

     << Back      Full Index      Forward >>