MCPcopy Create free account
hub / github.com/LAStools/LAStools / check_header

Function check_header

src/lasdiff.cpp:92–442  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

90static bool scaled_offset_difference;
91
92static int check_header(LASreader* lasreader1, LASreader* lasreader2)
93{
94 int i,j;
95 int different_header = 0;
96
97 scaled_offset_difference = false;
98
99 int memcmp_until = (int)(((const char*)&(lasreader1->header.user_data_in_header_size))-((const char*)&(lasreader1->header)));
100
101 if (memcmp((const void*)&(lasreader1->header), (const void*)&(lasreader2->header), memcmp_until))
102 {
103 char printstring[128];
104
105 LASheader* lasheader1 = &(lasreader1->header);
106 LASheader* lasheader2 = &(lasreader2->header);
107
108 bool fatal_difference = false;
109
110 if (strncmp(lasheader1->file_signature, lasheader2->file_signature, 4))
111 {
112 fprintf(stderr, " different file_signature: '%4s' '%4s'\n", lasheader1->file_signature, lasheader2->file_signature);
113 different_header++;
114 }
115 if (lasheader1->file_source_ID != lasheader2->file_source_ID)
116 {
117 fprintf(stderr, " different file_source_ID: %d %d\n", lasheader1->file_source_ID, lasheader2->file_source_ID);
118 different_header++;
119 }
120 if (lasheader1->global_encoding != lasheader2->global_encoding)
121 {
122 fprintf(stderr, " different reserved (global_encoding): %d %d\n", lasheader1->global_encoding, lasheader2->global_encoding);
123 different_header++;
124 }
125 if (lasheader1->get_GUID() != lasheader2->get_GUID())
126 {
127 fprintf(stderr, " different project_ID_GUID: %s %s\n", lasheader1->get_GUID().c_str(), lasheader2->get_GUID().c_str());
128 different_header++;
129 }
130 if (lasheader1->version_major != lasheader2->version_major || lasheader1->version_minor != lasheader2->version_minor)
131 {
132 fprintf(stderr, " different version: %d.%d %d.%d\n", lasheader1->version_major, lasheader1->version_minor, lasheader2->version_major, lasheader2->version_minor);
133 different_header++;
134 }
135 if (strncmp(lasheader1->system_identifier, lasheader2->system_identifier, 32))
136 {
137 fprintf(stderr, " different system_identifier: '%.32s' '%.32s'\n", lasheader1->system_identifier, lasheader2->system_identifier);
138 different_header++;
139 }
140 if (strncmp(lasheader1->generating_software, lasheader2->generating_software, 32))
141 {
142 fprintf(stderr, " different generating_software: '%.32s' '%.32s'\n", lasheader1->generating_software, lasheader2->generating_software);
143 different_header++;
144 }
145 if (lasheader1->file_creation_day != lasheader2->file_creation_day || lasheader1->file_creation_year != lasheader2->file_creation_year)
146 {
147 fprintf(stderr, " different file_creation day.year: %d.%d %d.%d\n", lasheader1->file_creation_day, lasheader1->file_creation_year, lasheader2->file_creation_day, lasheader2->file_creation_year);
148 different_header++;
149 }

Callers 1

mainFunction · 0.85

Calls 2

lidardouble2stringFunction · 0.70
byebyeFunction · 0.50

Tested by

no test coverage detected