| Important note: When you edit this page, you agree to release your contribution into the public domain. If you don't want this or can't do this because of license restrictions, please don't edit. |
Quicksilver is a C++ library for defining and operating on fixed-point [1] values.
The primary goal of Quicksilver is to provide a general framework in which to describe fixed-point arithmetic.
Equally important is for fixed-point numbers to have a very low overhead, both in terms of space requirement and processing speed. The guiding principle is that users should only pay for features they use.
This document collects requirements for a general fixed-point library and will morph over time into the reference manual for the library. Similarly, the intended audience is initially composed of people interested in the implementation of the library itself or willing to provide initial feedback on features and other requirements.
The main page of interest (at the beginning) is the requirement page.
A glossary will grow to define all important terms and provide a common language.
We then have a toplevel page defining the arithmetic model, with subpages for:
One of the operations, namely coercing a fixed-point type into another is so central to the library discussion and its implementation that will have a page for itself. Here:
Exceptional cases are described in:
Later we'll have pages for the implementation. More specifically: