Debugged ZigzagPersistence (having added heavier consistency checking)
* Added DEBUG_CONTAINERS option (uses std::__debug::* containers for chains
and in ZigzagPersistence)
* Added SizeStorage specialization for std::deque<T>
* ZigzagPersistence got a lot more consistency checking (in debug mode only,
which now crawls); as a result it's been debugged (running on non-trivial examples)
* examples/rips/rips-zigzag takes command-line options
* added ChainWrapper::clear()
* added Simplex::VertexDimensionComparison
* added PairwiseDistances class (for computing distances between points in a
container according to a distance functor)
#include <utilities/counter.h>
static Counter* cTestElaborate = GetCounter("test/elaborate");
static Counter* cTestBasic = GetCounter("test/basic");
static Counter* cTestBasicSub = GetCounter("test/basic/sub");
int main()
{
SetFrequency(cTestBasic, 2);
Count(cTestBasic);
Count(cTestBasicSub);
Count(cTestBasicSub);
Count(cTestBasicSub);
Count(cTestElaborate);
Count(cTestBasic);
Count(cTestElaborate);
Count(cTestBasic);
Count(cTestBasic);
CountNum(cTestBasic, 25);
CountNum(cTestBasic, 132);
CountNum(cTestBasic, 25);
CountNum(cTestBasic, 121);
CountNum(cTestBasic, 132);
CountNum(cTestBasic, 25);
SetTrigger(cTestBasic, &rootCounter);
Count(cTestBasic);
Count(cTestBasic);
SetFrequency(cTestElaborate, 3);
Count(cTestElaborate);
}