Added extra functionality to Point class( an iterator ) and PersistenceDiagram( dimension property and __len__ func ).
persistence-diagram.h:
Added a new read-only dimension member and member function to access it.
With a new constructor that that takes in an int type to initialize dimension.
persistence-diagram.cpp:
Added new bp::init constructor. Takes in an integer type to initialize the dimension. Exposed the dimension property. Exposed the size property via a __len__ method.
__init__.py:
Added an iterator for Point objects. This iterates over the coords and then the data( if present ).
#include <utilities/eventqueue.h>
#include <functional>
#include <iostream>
int main()
{
typedef EventQueue<int, std::less<int> > EQ;
typedef EQ::iterator iterator;
EQ queue;
std::cout << "Queue initialized" << std::endl;
iterator i1 = queue.push(4);
iterator i2 = queue.push(2);
iterator i3 = queue.push(9);
iterator i4 = queue.push(6);
iterator i5 = queue.push(5);
std::cout << "Values inserted" << std::endl;
queue.print(std::cout, " ");
queue.replace(i1,1);
queue.remove(i4);
queue.replace(i5,10);
*i3 = 14;
queue.demoted(i3);
std::cout << "Replaced and removed" << std::endl;
while (!queue.empty())
{
std::cout << *queue.top() << std::endl;
queue.pop();
}
}