An overview of the project structure.
The include folder contains the header files.
They are completely independent and can be used by simply downloading and including them.
namespace Farray1Direct- 1bit implementation of fill, read, write, writtenSize, begin/end,
and an interior
namespace definesfor the interior functions.
class Farray1- The wrapper for the 1bit functions (proxy operator, operator=, iterator, no need for A,n,flag each call).
class Farray- The implementation of the log(n) bits (b and def outside), with the Farray1 features (, =, iterator, …).
class NFarray : public Farray- extends
Farraywith numerical features:
++,–,+=,-=,*=,/=, (for proxy, and for the whole Array), and maintaining the sum of all vars. All of the operations are still O(1).
The tests folder contains random-tests for the different header files.
The timings folder contains c++ programs for measuring times and time-improvements of the header-files over an original array.