summaryrefslogtreecommitdiff
path: root/python/cdec/utils.pxd
diff options
context:
space:
mode:
Diffstat (limited to 'python/cdec/utils.pxd')
-rw-r--r--python/cdec/utils.pxd97
1 files changed, 97 insertions, 0 deletions
diff --git a/python/cdec/utils.pxd b/python/cdec/utils.pxd
new file mode 100644
index 00000000..687d3ac0
--- /dev/null
+++ b/python/cdec/utils.pxd
@@ -0,0 +1,97 @@
+from libcpp.string cimport string
+from libcpp.vector cimport vector
+from libcpp.pair cimport pair
+
+cdef extern from "<iostream>" namespace "std":
+ cdef cppclass istream:
+ pass
+ cdef cppclass ostream:
+ pass
+ cdef cppclass istringstream(istream):
+ istringstream(char*)
+
+cdef extern from "utils/weights.h":
+ ctypedef double weight_t
+
+cdef extern from "utils/logval.h":
+ cdef cppclass LogVal[T]:
+ double as_float()
+
+ ctypedef LogVal[double] prob_t
+
+ double log(prob_t&)
+
+cdef extern from "utils/wordid.h":
+ ctypedef int WordID
+
+cdef extern from "utils/small_vector.h":
+ cdef cppclass SmallVector[T]:
+ T& operator[](unsigned)
+ unsigned size()
+
+cdef extern from "utils/sparse_vector.h":
+ cdef cppclass FastSparseVector[T]:
+ cppclass const_iterator:
+ const_iterator(FastSparseVector[T]&, bint is_end)
+ pair[unsigned, T]* ptr "operator->" ()
+ const_iterator& operator++()
+ bint operator!=(const_iterator&)
+ FastSparseVector()
+ FastSparseVector(FastSparseVector[T]&)
+ const_iterator begin()
+ const_iterator end()
+ void init_vector(vector[T]* vp)
+ T value(unsigned k)
+ void set_value(unsigned k, T& v)
+ size_t size()
+ bint nonzero(unsigned k)
+ bint operator==(FastSparseVector[T]&)
+ T dot(vector[weight_t]&) # cython bug when [T]
+ T dot(FastSparseVector[T]&)
+ void clear()
+
+ FastSparseVector[weight_t] operator+(FastSparseVector[weight_t]&, FastSparseVector[weight_t]&)
+ FastSparseVector[weight_t] operator-(FastSparseVector[weight_t]&, FastSparseVector[weight_t]&)
+ FastSparseVector[weight_t] operator*(FastSparseVector[weight_t]&, double&)
+ FastSparseVector[weight_t] operator/(FastSparseVector[weight_t]&, double&)
+ ostream operator<<(ostream& out, FastSparseVector[weight_t]& v)
+
+cdef extern from "utils/weights.h" namespace "Weights":
+ void InitSparseVector(vector[weight_t]& dv, FastSparseVector[weight_t]* sv)
+
+cdef extern from "utils/tdict.h" namespace "TD":
+ string GetString(vector[WordID]& st)
+ unsigned NumWords()
+ WordID TDConvert "TD::Convert" (char*)
+ string& TDConvert "TD::Convert" (WordID)
+ void ConvertSentence(string& sent, vector[WordID]* ids)
+
+cdef extern from "utils/verbose.h":
+ void SetSilent(bint)
+
+cdef extern from "utils/fdict.h" namespace "FD":
+ WordID FDConvert "FD::Convert" (char*)
+ string& FDConvert "FD::Convert" (WordID)
+
+cdef extern from "utils/filelib.h":
+ cdef cppclass ReadFile:
+ ReadFile(string&)
+ istream* stream()
+
+cdef extern from "utils/sampler.h":
+ cdef cppclass MT19937:
+ pass
+
+cdef extern from "<boost/shared_ptr.hpp>" namespace "boost":
+ cdef cppclass shared_ptr[T]:
+ shared_ptr(T* ptr)
+ shared_ptr(shared_ptr& r)
+ T* get()
+
+cdef extern from "<boost/program_options.hpp>":
+ cdef cppclass variable_value "const boost::program_options::variable_value":
+ string as_str "as<std::string>" ()
+
+ cdef cppclass variables_map "const boost::program_options::variables_map":
+ unsigned count(char* name)
+ variable_value& operator[](char* name)