summaryrefslogblamecommitdiff
path: root/tnet_io/cwrapper.h
blob: 54fb69bc2891c270e6554ed8c0ae34ec02f433e1 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12


                                        
                         







                                                                             
                                                                                  


                                                                       
                                                        










                                                                             

                                                            





                                                      
#ifndef NERV_TNET_IO_CWRAPPER
#define NERV_TNET_IO_CWRAPPER
#include "../../matrix/generic/matrix.h"
#include "../../common.h"
#ifdef __cplusplus
extern "C" {
#endif

    typedef struct TNetFeatureRepo TNetFeatureRepo;

    TNetFeatureRepo *tnet_feature_repo_new(const char *scp,
                                            const char *config, int context);
    Matrix *tnet_feature_repo_read_utterance(TNetFeatureRepo *repo, lua_State *L);
    size_t tnet_feature_repo_current_samplerate(TNetFeatureRepo *repo);
    const char *tnet_feature_repo_current_tag(TNetFeatureRepo *repo);
    void tnet_feature_repo_next(TNetFeatureRepo *repo);
    int tnet_feature_repo_is_end(TNetFeatureRepo *repo);
    void tnet_feature_repo_destroy(TNetFeatureRepo *repo);

    typedef struct TNetLabelRepo TNetLabelRepo;

    TNetLabelRepo *tnet_label_repo_new(const char *mlf, const char *fmt,
                                        const char *fmt_arg, const char *dir,
                                        const char *ext);

    Matrix *tnet_label_repo_read_utterance(TNetLabelRepo *repo,
                                            size_t frames,
                                            size_t sample_rate,
                                            const char *tag,
                                            lua_State *L);

    void tnet_label_repo_destroy(TNetLabelRepo *repo);
#ifdef __cplusplus
}
#endif
#endif