Fix nan issue in features
[trackerpp.git] / include / PredictorWrapper.h
index ac54f73..18ea862 100644 (file)
@@ -3,6 +3,7 @@
 
 #include "SharedPtr.h"
 #include <boost/python.hpp>
+#include <vector>
 
 namespace suanzi {
 
@@ -13,18 +14,14 @@ namespace suanzi {
     class PredictorWrapper
     {
     public:
-        static PredictorWrapperPtr create(const std::string& fname);
+        PredictorWrapper(const std::string& module="predictor", const std::string& pydir = "./python");
         ~PredictorWrapper(){}
         void dump();
-        double predict();
+        double predict(int index, const std::vector<double>& f);
+        bool load(const std::string& fname); // load pkl file
 
     private:
-        PredictorWrapper(const std::string& fname);
-        static PredictorWrapperWPtr instance;
-
-        PY_FUN dump_func;
-        PY_FUN predict_func;
-
+        boost::python::object m_module;
     };
 
 }