![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: c7bHeader.h,v $ $Revision: 1.8 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00009 // 00010 // File c7bHeader 00011 // 00012 // Class: DtC7bHeader 00013 // 00014 // The class is public because should not be used but anyone else than 00015 // DtC7b. 00016 // 00017 00018 #ifndef __DtC7bHeader 00019 #define __DtC7bHeader 00020 00021 #include "ctdb/ctdbDefines.h" 00022 #include <stdio.h> 00023 #include "ctdb/c7NetTypes.h" 00024 00025 class DtString; 00026 00027 static const int CTDB_HEADER_RESERVED = 16; 00028 static const int CTDB_NAME_LENGTH = 14; 00029 static const int CTDB_FNAME_LENGTH = 256; 00030 static const int CTDB_DATE_LENGTH = 28; 00031 static const int CTDB_PATCH_CACHES = 16; 00032 00033 class DT_DLL_ctdb DtC7bHeader 00034 { 00035 public: 00036 00037 DtC7bHeader(); 00038 ~DtC7bHeader(); 00039 00040 bool isCurved(); 00041 bool isSwNe(); 00042 bool isGridded(); 00043 bool isTinned(); 00044 bool isShort(); 00045 00046 bool read(FILE *f); 00047 00048 // Puts the header into a string in a printable format 00049 void printDataToString(DtString& str); 00050 00051 public: 00052 00053 DtC7NetInt32 format; 00054 DtC7NetU32 dbFormat; 00055 DtC7NetFloat64 fixed_point_basis; 00056 DtC7NetInt32 reserved1[CTDB_HEADER_RESERVED]; 00057 DtC7NetInt32 post_increment; 00058 DtC7NetInt32 posts_per_patch_side; 00059 DtC7NetInt32 pages_wide; 00060 DtC7NetInt32 pages_high; 00061 DtC7NetInt32 min_x; 00062 DtC7NetInt32 max_x; 00063 DtC7NetInt32 min_y; 00064 DtC7NetInt32 max_y; 00065 DtC7NetInt32 num_features; 00066 DtC7NetInt32 patch_cache_size_map[CTDB_PATCH_CACHES]; 00067 DtC7NetInt32 sub_format; 00068 DtC7NetFloat64 origin_northing; 00069 DtC7NetFloat64 origin_easting; 00070 DtC7NetInt32 origin_zone_number; 00071 DtC7NetInt32 origin_zone_letter; 00072 DtC7NetInt32 datum; 00073 DtNetU8 name[CTDB_NAME_LENGTH]; 00074 DtC7NetInt16 version; 00075 DtNetU8 date[CTDB_DATE_LENGTH]; 00076 DtC7NetInt32 num_nodes; 00077 DtC7NetInt32 node_size; 00078 DtC7NetInt32 num_edges; 00079 DtC7NetInt32 edge_size; 00080 DtC7NetInt32 num_quad_data; 00081 DtC7NetInt32 n_patch_bytes; 00082 DtC7NetInt32 num_linear_models; 00083 DtC7NetInt32 num_volume_models; 00084 DtC7NetInt32 aux_hdr_bytes; /* Size of auxiliary header */ 00085 DtC7NetInt32 num_soil_tables; 00086 DtC7NetInt32 soil_table_size; 00087 DtC7NetInt32 num_water_chars; 00088 DtC7NetInt32 num_tidal_zones; 00089 DtC7NetInt32 num_aggregate_models; 00090 DtC7NetInt32 num_mes_volumes; 00091 DtC7NetInt32 num_mes_templates; 00092 00093 }; 00094 00095 #endif