remove time statistics from windows build
will investigate porting gettimeofday later
This commit is contained in:
parent
dabe2c131e
commit
b0a7b60502
3 changed files with 48 additions and 7 deletions
|
@ -468,6 +468,7 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
// parse main airport information
|
// parse main airport information
|
||||||
double apt_lon = 0.0, apt_lat = 0.0;
|
double apt_lon = 0.0, apt_lat = 0.0;
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
struct timeval build_start;
|
struct timeval build_start;
|
||||||
struct timeval build_end;
|
struct timeval build_end;
|
||||||
struct timeval cleanup_start;
|
struct timeval cleanup_start;
|
||||||
|
@ -475,6 +476,7 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
struct timeval triangulation_start;
|
struct timeval triangulation_start;
|
||||||
struct timeval triangulation_end;
|
struct timeval triangulation_end;
|
||||||
struct timeval log_time;
|
struct timeval log_time;
|
||||||
|
#endif
|
||||||
|
|
||||||
// Find the average of all the runway and heliport long / lats
|
// Find the average of all the runway and heliport long / lats
|
||||||
int num_samples = 0;
|
int num_samples = 0;
|
||||||
|
@ -508,8 +510,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Starting to clip the polys
|
// Starting to clip the polys (for now - only UNIX builds)
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&build_start, NULL);
|
gettimeofday(&build_start, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
// Add the linear features
|
// Add the linear features
|
||||||
if (features.size())
|
if (features.size())
|
||||||
|
@ -534,8 +538,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, "no markings");
|
SG_LOG(SG_GENERAL, SG_DEBUG, "no markings");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building Linear Features for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building Linear Features for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
// Build runways next
|
// Build runways next
|
||||||
for ( unsigned int i=0; i<runways.size(); i++ )
|
for ( unsigned int i=0; i<runways.size(); i++ )
|
||||||
|
@ -559,8 +565,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
merge_slivers( rwy_polys, slivers );
|
merge_slivers( rwy_polys, slivers );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building runways for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building runways for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
if (lightobjects.size())
|
if (lightobjects.size())
|
||||||
{
|
{
|
||||||
|
@ -628,8 +636,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, "no pavements");
|
SG_LOG(SG_GENERAL, SG_DEBUG, "no pavements");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building pavements for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished building pavements for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
// Build runway shoulders here
|
// Build runway shoulders here
|
||||||
#if 0
|
#if 0
|
||||||
|
@ -667,10 +677,15 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
TGPolygon divided_base = tgPolygonSplitLongEdges( filled_base, 200.0 );
|
TGPolygon divided_base = tgPolygonSplitLongEdges( filled_base, 200.0 );
|
||||||
TGPolygon base_poly = tgPolygonDiffClipper( divided_base, accum );
|
TGPolygon base_poly = tgPolygonDiffClipper( divided_base, accum );
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&build_end, NULL);
|
gettimeofday(&build_end, NULL);
|
||||||
timersub(&build_end, &build_start, &build_time);
|
timersub(&build_end, &build_start, &build_time);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&cleanup_start, NULL);
|
gettimeofday(&cleanup_start, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
// add segments to polygons to remove any possible "T"
|
// add segments to polygons to remove any possible "T"
|
||||||
// intersections
|
// intersections
|
||||||
|
@ -737,8 +752,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished collecting nodes for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished collecting nodes for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
// second pass : runways
|
// second pass : runways
|
||||||
for ( unsigned int k = 0; k < rwy_polys.size(); ++k )
|
for ( unsigned int k = 0; k < rwy_polys.size(); ++k )
|
||||||
|
@ -767,8 +784,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
line_polys[k].set_poly( poly );
|
line_polys[k].set_poly( poly );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished adding intermediate nodes for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished adding intermediate nodes for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
for ( unsigned int k = 0; k < line_polys.size(); ++k )
|
for ( unsigned int k = 0; k < line_polys.size(); ++k )
|
||||||
{
|
{
|
||||||
|
@ -787,8 +806,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
line_polys[k].set_poly( poly );
|
line_polys[k].set_poly( poly );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&log_time, NULL);
|
gettimeofday(&log_time, NULL);
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished cleaning polys for " << icao << " at " << ctime(&log_time.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished cleaning polys for " << icao << " at " << ctime(&log_time.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, "add nodes base ");
|
SG_LOG(SG_GENERAL, SG_DEBUG, "add nodes base ");
|
||||||
SG_LOG(SG_GENERAL, SG_DEBUG, " before: " << base_poly);
|
SG_LOG(SG_GENERAL, SG_DEBUG, " before: " << base_poly);
|
||||||
|
@ -822,10 +843,14 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
pvmt_polys[k].set_poly( poly );
|
pvmt_polys[k].set_poly( poly );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&cleanup_end, NULL);
|
gettimeofday(&cleanup_end, NULL);
|
||||||
timersub(&cleanup_end, &cleanup_start, &cleanup_time);
|
timersub(&cleanup_end, &cleanup_start, &cleanup_time);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&triangulation_start, NULL);
|
gettimeofday(&triangulation_start, NULL);
|
||||||
|
#endif
|
||||||
|
|
||||||
// tesselate the polygons and prepair them for final output
|
// tesselate the polygons and prepair them for final output
|
||||||
for ( unsigned int i = 0; i < rwy_polys.size(); ++i )
|
for ( unsigned int i = 0; i < rwy_polys.size(); ++i )
|
||||||
|
@ -929,8 +954,10 @@ void Airport::BuildBtg(const string& root, const string_list& elev_src )
|
||||||
|
|
||||||
SG_LOG(SG_GENERAL, SG_INFO, "Tesselating base poly - done : contours = " << base_tris.contours());
|
SG_LOG(SG_GENERAL, SG_INFO, "Tesselating base poly - done : contours = " << base_tris.contours());
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&triangulation_end, NULL);
|
gettimeofday(&triangulation_end, NULL);
|
||||||
timersub(&triangulation_end, &triangulation_start, &triangulation_time);
|
timersub(&triangulation_end, &triangulation_start, &triangulation_time);
|
||||||
|
#endif
|
||||||
|
|
||||||
//
|
//
|
||||||
// We should now have the runway polygons all generated with their
|
// We should now have the runway polygons all generated with their
|
||||||
|
|
|
@ -771,7 +771,7 @@ int LinearFeature::Finish( bool closed, unsigned int idx )
|
||||||
tp.set_minv(last_end_v);
|
tp.set_minv(last_end_v);
|
||||||
marking_tps.push_back(tp);
|
marking_tps.push_back(tp);
|
||||||
|
|
||||||
last_end_v = 1.0f - (fmod( (dist - last_end_v), 1.0f ));
|
last_end_v = (double)1.0f - (fmod( (double)(dist - last_end_v), (double)1.0f ));
|
||||||
}
|
}
|
||||||
|
|
||||||
prev_outer = cur_outer;
|
prev_outer = cur_outer;
|
||||||
|
|
|
@ -1,4 +1,10 @@
|
||||||
#include <sys/time.h>
|
#ifdef HAVE_CONFIG_H
|
||||||
|
# include <config.h>
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef HAVE_SYS_TIME_H
|
||||||
|
# include <sys/time.h> // for timing
|
||||||
|
#endif
|
||||||
|
|
||||||
#include <simgear/debug/logstream.hxx>
|
#include <simgear/debug/logstream.hxx>
|
||||||
#include <simgear/misc/sgstream.hxx>
|
#include <simgear/misc/sgstream.hxx>
|
||||||
|
@ -328,12 +334,15 @@ void Parser::SetDebugPolys( int rwy, int pvmt, int feat, int base )
|
||||||
void Parser::Parse( string last_apt_file )
|
void Parser::Parse( string last_apt_file )
|
||||||
{
|
{
|
||||||
char tmp[2048];
|
char tmp[2048];
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
struct timeval parse_start;
|
struct timeval parse_start;
|
||||||
struct timeval parse_end;
|
struct timeval parse_end;
|
||||||
struct timeval parse_time;
|
struct timeval parse_time;
|
||||||
struct timeval build_time;
|
struct timeval build_time;
|
||||||
struct timeval clean_time;
|
struct timeval clean_time;
|
||||||
struct timeval triangulation_time;
|
struct timeval triangulation_time;
|
||||||
|
#endif
|
||||||
|
|
||||||
ifstream in( filename.c_str() );
|
ifstream in( filename.c_str() );
|
||||||
if ( !in.is_open() )
|
if ( !in.is_open() )
|
||||||
|
@ -348,10 +357,12 @@ void Parser::Parse( string last_apt_file )
|
||||||
SetState(STATE_NONE);
|
SetState(STATE_NONE);
|
||||||
in.clear();
|
in.clear();
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&parse_start, NULL);
|
gettimeofday(&parse_start, NULL);
|
||||||
|
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "\n*******************************************************************" );
|
SG_LOG( SG_GENERAL, SG_ALERT, "\n*******************************************************************" );
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Parsing airport " << airport_icaos[i] << " at " << parse_positions[i] << " start time " << ctime(&parse_start.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Parsing airport " << airport_icaos[i] << " at " << parse_positions[i] << " start time " << ctime(&parse_start.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
in.seekg(parse_positions[i], ios::beg);
|
in.seekg(parse_positions[i], ios::beg);
|
||||||
|
|
||||||
// save the airport we are working on
|
// save the airport we are working on
|
||||||
|
@ -366,11 +377,13 @@ void Parser::Parse( string last_apt_file )
|
||||||
// Parse the line
|
// Parse the line
|
||||||
ParseLine(tmp);
|
ParseLine(tmp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
gettimeofday(&parse_end, NULL);
|
gettimeofday(&parse_end, NULL);
|
||||||
timersub(&parse_end, &parse_start, &parse_time);
|
timersub(&parse_end, &parse_start, &parse_time);
|
||||||
|
|
||||||
SG_LOG( SG_GENERAL, SG_ALERT, "Finished parsing airport " << airport_icaos[i] << " at " << ctime(&parse_end.tv_sec) );
|
SG_LOG( SG_GENERAL, SG_ALERT, "Finished parsing airport " << airport_icaos[i] << " at " << ctime(&parse_end.tv_sec) );
|
||||||
|
#endif
|
||||||
|
|
||||||
// write the airport BTG
|
// write the airport BTG
|
||||||
if (cur_airport)
|
if (cur_airport)
|
||||||
{
|
{
|
||||||
|
@ -384,11 +397,12 @@ void Parser::Parse( string last_apt_file )
|
||||||
cur_airport = NULL;
|
cur_airport = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if !defined(_MSC_VER)
|
||||||
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to parse " << parse_time.tv_sec << ":" << parse_time.tv_usec );
|
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to parse " << parse_time.tv_sec << ":" << parse_time.tv_usec );
|
||||||
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to build " << build_time.tv_sec << ":" << build_time.tv_usec );
|
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to build " << build_time.tv_sec << ":" << build_time.tv_usec );
|
||||||
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to clean up " << clean_time.tv_sec << ":" << clean_time.tv_usec );
|
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to clean up " << clean_time.tv_sec << ":" << clean_time.tv_usec );
|
||||||
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to triangulate " << triangulation_time.tv_sec << ":" << triangulation_time.tv_usec );
|
SG_LOG( SG_GENERAL, SG_DEBUG, "Time to triangulate " << triangulation_time.tv_sec << ":" << triangulation_time.tv_usec );
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue