diff --git a/doc/mini_review_topics.html b/doc/mini_review_topics.html new file mode 100644 index 0000000..9d5e6bd --- /dev/null +++ b/doc/mini_review_topics.html @@ -0,0 +1,107 @@ + + + + + + +Here is what needs to be done to get the library ready for a mini + + + + + +

Here is what needs to be done to get the library ready for a mini-review: + + + +

+ +

Common use case scenarios should be developed.

+
+ +

 

+
+

Example programs should be developed for the common use case scenarios.

+
+

 

+
+

Documentation should illuminate the differences between endian +integer/float type and endian conversion approaches to the common use +case scenarios, and provide guidelines for choosing the most appropriate +approach in user's applications.

+
+

 

+
+

Conversion functions supplying results via return should be provided.

+
+

Done. See conversion docs.

+
+

Platform specific performance enhancements such as use of compiler intrinsics or relaxed alignment requirements should be supported.

+
+

Done. Compiler (Clang, GCC, VisualC++, etc.) intrinsics and built-in + functions are used in the implementation where appropriate, as requested. See + Built-in support for Intrinsics. See + Timings for Example 2 to gauge the impact of + intrinsics.

+
+

Endian integer (and floating) types should be implemented via the +conversion functions. If that can't be done efficiently, consideration +should be given to expanding the conversion function signatures to +resolve the inefficiencies.

+
+

Done. For the endian types, the implementation uses the endian conversion + functions, and thus the intrinsics, as requested.

+
+

Benchmarks that measure performance should be provided. It should be +possible to compare platform specific performance enhancements against +portable base implementations, and to compare endian integer approaches +against endian conversion approaches for the common use case scenarios.

+
+

Done. See Timings for Example 2. Also note + that the endian/test directory contains a number of additional + benchmark and speed test programs.

+
+

Float (32-bits) and double (64-bits) should be supported. IEEE 754 is +the primary use case.

+
+

Done. The endian types and + endian conversion functions now support 32-bit (float) + and 64-bit (double) floating point, as requested.

+
+

Support for user defined types (UDTs) is desirable, and should be +provided where there would be no conflict with the other concerns.

+
+

 

+
+

There is some concern that endian integer/float arithmetic operations +might used inadvertently or inappropriately. The impact of adding an endian_buffer + class without arithmetic operations should be investigated.

+
+

 

+
+

Stream insertion and extraction of the endian integer/float types should + be documented and included in the test coverage.

+

 

+

Binary I/O support that was investigated during development of the Endian + library should be put up for mini-review for inclusion in the Boost I/O + library.

+ +
+

 

+ +
+
+

Last revised: +11 November, 2014

+

© Copyright Beman Dawes, 2014

+

Distributed under the Boost Software License, Version 1.0. See +www.boost.org/ LICENSE_1_0.txt

+ + + + \ No newline at end of file