mpictor/StepClassLibrary — pull request #173 by mpictor (2012-04-07 00:04:48+00:00)
Title: Part 21 read-write progress

This branch makes it possible to check `STEPfile` read/write progress from another thread, so that a GUI can display a progress bar for the end user. This should resolve @LaurentBauer's request (issue #169).

Example:
In one thread,

```C++
STEPfile sfile;
sfile.ReadExchangeFile("somefile.stp");
```
In another thread,

```C++
float progress; // range 0-100
while( blah ) {
progress = sfile.GetReadProgress(); // or GetWriteProgress()
updateProgressBar(progress);
sleep();
}
```
----
This branch is based upon `review/aggr_runtime_bounds` because it uses `test/cpp/schema_specific/CMakeLists.txt`. Because of this, #166 must be merged before this one.

**Note** - if you look at the commits, this pull request seems to include the 8 commits in #166. That is a side effect of basing this pull request branch upon another.

[test results](http://my.cdash.org/viewTest.php?buildid=318613)

The test I added ([code](https://github.com/mpictor/StepClassLibrary/blob/review/p21-rw-progress/test/cpp/schema_specific/stepfile_rw_progress.cc), [results](http://my.cdash.org/testDetails.php?test=8992327&build=318613)) uses `std::thread`, part of C++11, which isn't yet supported by many compilers. As a result, this test is disabled unless the [HAVE_STD_THREAD](https://github.com/mpictor/StepClassLibrary/commit/2067e48bbdc34b0344bd82c0f8c204a2348838d2) config check passes.