#ifndef NERV_kaldi_KALDI_MMI
#define NERV_kaldi_KALDI_MMI
#include "nerv/lib/matrix/matrix.h"
#include "nerv/lib/common.h"
#ifdef __cplusplus
extern "C" {
#endif

    typedef struct KaldiMMI KaldiMMI;

    KaldiMMI * new_KaldiMMI(const char*, const char*, const char*, const char*);
    void destroy_KaldiMMI(KaldiMMI *);
    int check_mmi(KaldiMMI *, const Matrix*, const char *);
    Matrix * calc_diff_mmi(KaldiMMI *, Matrix *, const char *);
    double get_num_frames_mmi(const KaldiMMI *);

#ifdef __cplusplus
}
#endif
#endif