bindings/python/distances.cpp
author Dmitriy Morozov <dmitriy@mrzv.org>
Wed, 16 Dec 2009 15:39:06 -0800
branchdev
changeset 179 d15c6d144645
parent 147 d39a20acb253
permissions -rw-r--r--
Resurrected vineyard code: * Switched StaticPersistence + (serializable) Filtration to Boost.MultiIndex * Updated DynamicPersistenceTrails to work with the new MultiIndex way * Created LSVineyard class, and fixed the grid examples

#include <boost/python.hpp>
namespace bp = boost::python;

#include "distances.h"
namespace dp = dionysus::python;

boost::shared_ptr<dp::ListPointPairwiseDistances>       init_from_list(bp::list lst)
{
    boost::shared_ptr<dp::ListPointPairwiseDistances>   p(new dp::ListPointPairwiseDistances(lst));
    return p;
}

void export_pairwise_distances()
{
    bp::class_<dp::ListPointPairwiseDistances>("PairwiseDistances", bp::no_init)
        .def("__init__",        bp::make_constructor(&init_from_list))
        .def("__len__",         &dp::ListPointPairwiseDistances::size)
        .def("__call__",        &dp::ListPointPairwiseDistances::operator())
    ;
}