diff --git a/maca_common/src/fplm.c b/maca_common/src/fplm.c index b9b68e3d104fd386a8294019e16a4646c664a1af..22f6f276b2e2cd3455ebd41b970478da1fad442e 100644 --- a/maca_common/src/fplm.c +++ b/maca_common/src/fplm.c @@ -9,6 +9,16 @@ #include"fplm.h" #include"hash.h" +fplm_struct *fplm_new(void){ + fplm_struct *fplm = (fplm_struct *)memalloc(sizeof(fplm_struct)); + fplm->form_pos_ht = hash_new(1000000); + fplm->lemma_array = NULL; + fplm->lemma_array_size = 0; + fplm->nbelem = 0; + return fplm; +} + + fplm_struct *fplm_load_file(char *fplm_filename, int debug_mode) { char form[1000]; @@ -76,8 +86,8 @@ void fplm_free(fplm_struct *fplm) if (fplm->lemma_array[i]) free(fplm->lemma_array[i]); } free(fplm->lemma_array); - if(fplm->filename) - free(fplm->filename); + // if(fplm->filename) + // free(fplm->filename); free(fplm); } diff --git a/maca_tools/src/mcf2json.c b/maca_tools/src/mcf2json.c index 4381177cfd388d8012380286f515dc1ae5fd19a8..a755e535637e6d2a5d3b519c137188dca4318fc6 100644 --- a/maca_tools/src/mcf2json.c +++ b/maca_tools/src/mcf2json.c @@ -331,7 +331,7 @@ int main(int argc, char *argv[]) mcd_extract_dico_from_corpus(ctx->mcd_struct, ctx->mcf_filename); - output_file = (ctx->conll_filename)? myfopen_no_exit(ctx->conll_filename, "w"): stdout; + output_file = (ctx->conll_filename)? myfopen_no_exit(ctx->conll_filename, "w", 0): stdout; wb = word_buffer_load_mcf(ctx->mcf_filename, ctx->mcd_struct); print_header(output_file, ctx->mcd_struct); diff --git a/maca_tools/src/mcf2orfeo.c b/maca_tools/src/mcf2orfeo.c index e0b2ed0f8fb3b7bf213de4d1dbbfa2b180ed5ae6..d61b5cff45dd356b8d8cfb719deb6c038e59339b 100644 --- a/maca_tools/src/mcf2orfeo.c +++ b/maca_tools/src/mcf2orfeo.c @@ -146,7 +146,7 @@ int main(int argc, char *argv[]) int index = 1; - output_file = (ctx->conll_filename)? myfopen_no_exit(ctx->conll_filename, "w"): stdout; + output_file = (ctx->conll_filename)? myfopen_no_exit(ctx->conll_filename, "w", 1): stdout; do{ diff --git a/maca_trans_parser/CMakeLists.txt b/maca_trans_parser/CMakeLists.txt index a002b726467fd44bd8af63c2e99c377eda4d010c..8369fde340c07167f8f616c76d6780c8f2acfcbb 100644 --- a/maca_trans_parser/CMakeLists.txt +++ b/maca_trans_parser/CMakeLists.txt @@ -10,12 +10,12 @@ set(SOURCES src/context.c src/oracle_tagparser_arc_eager.c src/oracle_tagger.c src/simple_decoder_parser_arc_eager.c - src/oracle_chunker.c +# src/oracle_chunker.c src/simple_decoder_tagparser_arc_eager.c - src/simple_decoder_parser_arc_eager_error_predictor.c +# src/simple_decoder_parser_arc_eager_error_predictor.c src/simple_decoder_tagger.c - src/simple_decoder_chunker.c - src/simple_decoder_tagger_error_predictor.c +# src/simple_decoder_chunker.c +# src/simple_decoder_tagger_error_predictor.c # src/simple_decoder_tagger_bt.c src/stack.c src/config2feat_vec.c @@ -161,11 +161,11 @@ target_link_libraries(maca_trans_parser transparse) target_link_libraries(maca_trans_parser maca_common) install (TARGETS maca_trans_parser DESTINATION bin) -add_executable(maca_error_predictor_parser ./src/maca_error_predictor_parser.c) -target_link_libraries(maca_error_predictor_parser perceptron) -target_link_libraries(maca_error_predictor_parser transparse) -target_link_libraries(maca_error_predictor_parser maca_common) -install (TARGETS maca_error_predictor_parser DESTINATION bin) +#add_executable(maca_error_predictor_parser ./src/maca_error_predictor_parser.c) +#target_link_libraries(maca_error_predictor_parser perceptron) +#target_link_libraries(maca_error_predictor_parser transparse) +#target_link_libraries(maca_error_predictor_parser maca_common) +#install (TARGETS maca_error_predictor_parser DESTINATION bin) add_executable(maca_trans_tagparser ./src/maca_trans_tagparser.c) target_link_libraries(maca_trans_tagparser perceptron) @@ -185,11 +185,11 @@ target_link_libraries(maca_trans_tagger transparse) target_link_libraries(maca_trans_tagger maca_common) install (TARGETS maca_trans_tagger DESTINATION bin) -add_executable(maca_trans_chunker ./src/maca_trans_chunker.c) -target_link_libraries(maca_trans_chunker perceptron) -target_link_libraries(maca_trans_chunker transparse) -target_link_libraries(maca_trans_chunker maca_common) -install (TARGETS maca_trans_chunker DESTINATION bin) +#add_executable(maca_trans_chunker ./src/maca_trans_chunker.c) +#target_link_libraries(maca_trans_chunker perceptron) +#target_link_libraries(maca_trans_chunker transparse) +#target_link_libraries(maca_trans_chunker maca_common) +#install (TARGETS maca_trans_chunker DESTINATION bin) add_executable(maca_trans_morpho ./src/maca_trans_morpho.c) target_link_libraries(maca_trans_morpho perceptron) @@ -197,11 +197,11 @@ target_link_libraries(maca_trans_morpho transparse) target_link_libraries(maca_trans_morpho maca_common) install (TARGETS maca_trans_morpho DESTINATION bin) -add_executable(maca_error_predictor_tagger ./src/maca_error_predictor_tagger.c) -target_link_libraries(maca_error_predictor_tagger perceptron) -target_link_libraries(maca_error_predictor_tagger transparse) -target_link_libraries(maca_error_predictor_tagger maca_common) -install (TARGETS maca_error_predictor_tagger DESTINATION bin) +#add_executable(maca_error_predictor_tagger ./src/maca_error_predictor_tagger.c) +#target_link_libraries(maca_error_predictor_tagger perceptron) +#target_link_libraries(maca_error_predictor_tagger transparse) +#target_link_libraries(maca_error_predictor_tagger maca_common) +#install (TARGETS maca_error_predictor_tagger DESTINATION bin) #add_executable(maca_trans_tagger_bt ./src/maca_trans_tagger_bt.c) #target_link_libraries(maca_trans_tagger_bt perceptron) diff --git a/maca_trans_parser/src/classifier.c b/maca_trans_parser/src/classifier.c index 058018a98e340791c40ccbc9577f2efb95b9e020..42321ef080b0b738798caf2215d7d6e3c17b0c3c 100644 --- a/maca_trans_parser/src/classifier.c +++ b/maca_trans_parser/src/classifier.c @@ -4,7 +4,7 @@ classifier *classifier_new(char *name) { - classifier *classif = memalloc(sizeof(classifier)); + classifier *classif = (classifier *)memalloc(sizeof(classifier)); char string[1000]; classif->name = strdup(name); @@ -253,7 +253,7 @@ classifier *classifier_read_full(char *filename, char *absolute_path, dico_vec * fprintf(stderr, "cannot build output tagset, tape alphabets must be specified in file %s\n", filename); exit(1); } - d_labels = dico_vec_get_dico(classif->d_tapes, "LABEL"); + d_labels = dico_vec_get_dico(classif->d_tapes, (char *) "LABEL"); if(d_labels == NULL){ fprintf(stderr, "cannot find syntactic labels in file %s\n", classif->d_tapes_filename); exit(1); @@ -266,7 +266,7 @@ classifier *classifier_read_full(char *filename, char *absolute_path, dico_vec * fprintf(stderr, "cannot build output tagset, tape alphabets must be specified in file %s\n", filename); exit(1); } - d_labels = dico_vec_get_dico(classif->d_tapes, "POS"); + d_labels = dico_vec_get_dico(classif->d_tapes, (char *) "POS"); if(d_labels == NULL){ fprintf(stderr, "cannot find pos tags in file %s\n", classif->d_tapes_filename); exit(1); @@ -279,7 +279,7 @@ classifier *classifier_read_full(char *filename, char *absolute_path, dico_vec * fprintf(stderr, "cannot build output tagset, tape alphabets must be specified in file %s\n", filename); exit(1); } - d_labels = dico_vec_get_dico(classif->d_tapes, "FEATS"); + d_labels = dico_vec_get_dico(classif->d_tapes, (char *) "FEATS"); if(d_labels == NULL){ fprintf(stderr, "cannot feats pos tags in file %s\n", classif->d_tapes_filename); exit(1); diff --git a/maca_trans_parser/src/classifier_vec.c b/maca_trans_parser/src/classifier_vec.c index 3b6a7c9374205dcab59133cb59edff18d9a6fce0..5ac3190fd5f576f7ef6eccbc1b6bdc4bf481a9c0 100644 --- a/maca_trans_parser/src/classifier_vec.c +++ b/maca_trans_parser/src/classifier_vec.c @@ -7,7 +7,7 @@ classifier_vec *classifier_vec_new(void) { - classifier_vec *classif_vec = memalloc(sizeof(classifier_vec)); + classifier_vec *classif_vec = (classifier_vec *)memalloc(sizeof(classifier_vec)); classif_vec->nb = 0; classif_vec->array = NULL; classif_vec->ht = hash_new(10); diff --git a/maca_trans_parser/src/context.c b/maca_trans_parser/src/context.c index 7a60a4dbada924d76b8b32a743244e1e940a41bf..b23522f8cfef117cf3820097d741d5adfc2627a6 100644 --- a/maca_trans_parser/src/context.c +++ b/maca_trans_parser/src/context.c @@ -235,7 +235,7 @@ context *context_read_options(int argc, char *argv[]) {"f2p", required_argument, 0, 'P'}, {"cla", required_argument, 0, 'y'}, {"traces", required_argument, 0, 'T'}, - {"tm", required_argument, 0, 'X'} + {"tm", required_argument, 0, 'X'}, {"traces", required_argument, 0, 'T'}, {"json", required_argument, 0, 'J'}, {"dnn_model", required_argument, 0, 'N'}, diff --git a/maca_trans_parser/src/maca_tm_decoder.c b/maca_trans_parser/src/maca_tm_decoder.c index f532ea1fc3a0279f9fc41cde9f88159762ab6af1..4ed0c12e79a75d8636df0bc95249436da8a70adf 100644 --- a/maca_trans_parser/src/maca_tm_decoder.c +++ b/maca_trans_parser/src/maca_tm_decoder.c @@ -226,7 +226,7 @@ void maca_tm_decoder(context *ctx) dico *dico_labels = dico_vec_get_dico(tm_get_d_tapes(ctx->machine), (char *)"LABEL"); dico *dico_morpho = dico_vec_get_dico(tm_get_d_tapes(ctx->machine), (char *)"FEATS"); int result; - fplm_struct *fplm = fplm_load(ctx->fplm_filename, ctx->debug_mode); + fplm_struct *fplm = fplm_load_file(ctx->fplm_filename, ctx->debug_mode); char form_str[200]; char *pos_str; char *lemma_str; diff --git a/maca_trans_parser/src/maca_trans_lemmatizer.c b/maca_trans_parser/src/maca_trans_lemmatizer.c index 1240fb093489579911358fd75dac6cee226aa830..92e2e8637d9be8c6b606f42d03af1d4b2edc74c9 100644 --- a/maca_trans_parser/src/maca_trans_lemmatizer.c +++ b/maca_trans_parser/src/maca_trans_lemmatizer.c @@ -111,6 +111,7 @@ void print_word(word *w, mcd *mcd_struct, char *lemma) int main(int argc, char *argv[]) { context *ctx = context_read_options(argc, argv); + feat_vec *fv = feat_vec_new(10); word *b0; char lemma[200]; char form[200]; diff --git a/maca_trans_parser/src/mvt_tagset.c b/maca_trans_parser/src/mvt_tagset.c index 850ff73f4eec6600b4ec3f8ec136af97acbcc8c0..9bf8d500e0a0a6d47e8e6b8ce2650758e750254e 100644 --- a/maca_trans_parser/src/mvt_tagset.c +++ b/maca_trans_parser/src/mvt_tagset.c @@ -6,7 +6,7 @@ mvt_tagset *mvt_tagset_new(char *name, dico *d_labels) { - mvt_tagset *t = memalloc(sizeof(mvt_tagset)); + mvt_tagset *t = (mvt_tagset *)memalloc(sizeof(mvt_tagset)); int i; t->nbelem = 0; for(i=0; i < MVT_TYPES_NB; i++){ @@ -118,7 +118,7 @@ void mvt_tagset_print(mvt_tagset *t) mvt_tagset *mvt_tagset_parser(dico *d_labels) { - mvt_tagset *t = mvt_tagset_new("parser", d_labels); + mvt_tagset *t = mvt_tagset_new((char *)"parser", d_labels); t->start[MVT_SHIFT] = t->end[MVT_SHIFT] = t->nbelem++; t->start[MVT_REDUCE] = t->end[MVT_REDUCE] = t->nbelem++; @@ -137,7 +137,7 @@ mvt_tagset *mvt_tagset_parser(dico *d_labels) mvt_tagset *mvt_tagset_tagger(dico *d_labels) { - mvt_tagset *t = mvt_tagset_new("tagger", d_labels); + mvt_tagset *t = mvt_tagset_new((char *)"tagger", d_labels); t->start[MVT_FWD] = t->end[MVT_FWD] = t->nbelem++; t->start[MVT_POS] = t->nbelem; t->nbelem += d_labels->nbelem; @@ -149,7 +149,7 @@ mvt_tagset *mvt_tagset_tagger(dico *d_labels) mvt_tagset *mvt_tagset_morpho(dico *d_labels) { - mvt_tagset *t = mvt_tagset_new("morpho", d_labels); + mvt_tagset *t = mvt_tagset_new((char *)"morpho", d_labels); t->start[MVT_FWD] = t->end[MVT_FWD] = t->nbelem++; t->start[MVT_MORPHO] = t->nbelem; t->nbelem += d_labels->nbelem; @@ -161,7 +161,7 @@ mvt_tagset *mvt_tagset_morpho(dico *d_labels) mvt_tagset *mvt_tagset_std(void) { - mvt_tagset *t = mvt_tagset_new("std", NULL); + mvt_tagset *t = mvt_tagset_new((char *)"std", NULL); t->start[MVT_FWD] = t->end[MVT_FWD] = t->nbelem++; /* mvt_tagset_print(t); */ diff --git a/maca_trans_parser/src/simple_decoder_tagger.c b/maca_trans_parser/src/simple_decoder_tagger.c index eb6830d6f826daa9dd957a995160d55b135888eb..5a0072743fc7af3908c7fa7875af1af525c6f100 100644 --- a/maca_trans_parser/src/simple_decoder_tagger.c +++ b/maca_trans_parser/src/simple_decoder_tagger.c @@ -100,7 +100,7 @@ void simple_decoder_tagger(context *ctx) word *b0; classifier *classif; dico *dico_pos = dico_vec_get_dico(classifier_get_d_tapes(ctx->machine->start->classif), (char *)"POS"); - fplm_struct *fplm = fplm_load(ctx->fplm_filename, ctx->debug_mode); + fplm_struct *fplm = fplm_load_file(ctx->fplm_filename, ctx->debug_mode); while(!config_is_terminal(c)){ if(ctx->f2p) diff --git a/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c b/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c index d757681291f785425b4e5caf9719235fb520d569..611173c8e5dda1c5764e9a7cb431ccf826ca6998 100644 --- a/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c +++ b/maca_trans_parser/src/simple_decoder_tagparser_arc_eager.c @@ -106,7 +106,7 @@ void simple_decoder_tagparser_arc_eager(context *ctx) dico *dico_forms = dico_vec_get_dico(classifier_get_d_tapes(ctx->machine->start->classif), (char *)"FORM"); dico *dico_labels = dico_vec_get_dico(classifier_get_d_tapes(ctx->machine->start->classif), (char *)"LABEL"); int result; - fplm_struct *fplm = fplm_load(ctx->fplm_filename, ctx->debug_mode); + fplm_struct *fplm = fplm_load_file(ctx->fplm_filename, ctx->debug_mode); char form_str[200]; char *pos_str; char *lemma_str; diff --git a/maca_trans_parser/src/tm.c b/maca_trans_parser/src/tm.c index 1da0b0af974941680162eae34ad054a6dda686cc..f226a5f261ed96af9dd9652f5e8500a27aea0cf3 100644 --- a/maca_trans_parser/src/tm.c +++ b/maca_trans_parser/src/tm.c @@ -26,7 +26,7 @@ int tm_get_morpho_state(tm *machine) tm_transition *tm_transition_new(int label, int destination, tm_transition *next) { - tm_transition *transition = memalloc(sizeof(tm_transition)); + tm_transition *transition = (tm_transition *)memalloc(sizeof(tm_transition)); transition->label = label; transition->destination = destination; transition->next = next; @@ -35,7 +35,7 @@ tm_transition *tm_transition_new(int label, int destination, tm_transition *next tm_state *tm_state_new(char *name, classifier *classif, int classifier_nb, int is_accept) { - tm_state *state = memalloc(sizeof(tm_state)); + tm_state *state = (tm_state *) memalloc(sizeof(tm_state)); state->num = -1; state->name = strdup(name); state->trans_list = NULL; @@ -51,9 +51,9 @@ tm_state *tm_state_new(char *name, classifier *classif, int classifier_nb, int i tm *tm_new(void) { - tm *machine = memalloc(sizeof(tm)); + tm *machine = (tm *)memalloc(sizeof(tm)); machine->classif_vec = classifier_vec_new(); - machine->d_states = dico_new("d_states", 10); + machine->d_states = dico_new((char *)"d_states", 10); machine->num_states = 0; machine->state_array = NULL; machine->start = NULL; @@ -65,7 +65,7 @@ int tm_add_state(tm *machine, tm_state *state) state->num = dico_add(machine->d_states, state->name); if(state->num >= machine->state_array_size){ machine->state_array_size = 2 * (machine->state_array_size + 1); - machine->state_array = realloc(machine->state_array, (machine->state_array_size * sizeof(tm_state *))); + machine->state_array = (tm_state **)realloc(machine->state_array, (machine->state_array_size * sizeof(tm_state *))); } machine->state_array[state->num] = state; machine->num_states++;