Changeset a15e59b


Ignore:
Timestamp:
03/13/12 17:07:34 (12 years ago)
Author:
Tomasz Obrebski <to@…>
Branches:
master
Children:
f4bf33e
Parents:
abd28d1
git-author:
Tomasz Obrebski <to@…> (03/13/12 17:07:34)
git-committer:
Tomasz Obrebski <to@…> (03/13/12 17:07:34)
Message:

dodana opcja --time w dgp, poprawione przesy�anie b�belk�w, obsluga &LEFT, &RIGHT

Files:
1 deleted
7 edited

Legend:

Unmodified
Added
Removed
  • share/gram.dgc

    r5f4d9c3 ra15e59b  
    1 #FLAG REL 
    2  
    3 #UP REL  
     1 
     2FLAG    RQ 
     3FLAG    init 
     4 
     5#==================================================================================================== 
     6# subj 
     7#==================================================================================================== 
     8 
     9ROLE    subj 
     10SGL     subj 
     11AGR     subj         N 
     12AGR     subj         G 
     13GOV     subj         */Cn 
     14 
     15LINK    V/VpP3Kn,BYC/VpP3               N,NUMCRD        subj 
     16LINK    V/VpP12Kn,BYC/VpP12             NPRO;RQ-        subj 
     17LINK    V/VpP3Kn,BYC/VpP3               NPRO;RQ-        subj 
     18LINK    V/VpP3Kn,BYC/VpP3               NPRO;RQ+        subj&INIT 
     19 
     20#==================================================================================================== 
     21# cmpl_g 
     22#==================================================================================================== 
     23 
     24ROLE    cmpl_g 
     25SGL     cmpl_g 
     26GOV     cmpl_g       */Cg 
     27 
     28LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO,NUMCRD                   cmpl_g 
     29 
     30#==================================================================================================== 
     31# cmpl_a 
     32#==================================================================================================== 
     33 
     34ROLE    cmpl_a 
     35SGL     cmpl_a 
     36GOV     cmpl_a       */Ca 
     37 
     38LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO,NUMCRD;RQ-               cmpl_a 
     39LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        NPRO;RQ+                cmpl_a&INIT 
     40 
     41#==================================================================================================== 
     42# cmpl_d 
     43#==================================================================================================== 
     44 
     45ROLE    cmpl_d 
     46SGL     cmpl_d 
     47GOV     cmpl_d       */Cd 
     48 
     49LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO,NUMCRD           cmpl_d 
     50 
     51#==================================================================================================== 
     52# cmpl_i 
     53#==================================================================================================== 
     54 
     55ROLE    cmpl_i 
     56SGL     cmpl_i 
     57GOV     cmpl_i       */Ci 
     58 
     59LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO,NUMCRD           cmpl_i 
     60 
     61#==================================================================================================== 
     62# cmpl_ze 
     63#==================================================================================================== 
     64 
     65ROLE    cmpl_ze 
     66SGL     cmpl_ze 
     67 
     68LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        CONJ/Si                 cmpl_ze&FIN 
     69 
     70#==================================================================================================== 
     71# cmpl_inf 
     72#==================================================================================================== 
     73 
     74ROLE    cmpl_inf 
     75SGL     cmpl_inf 
     76 
     77LINK    V,VM,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV     V/Vb                    cmpl_inf 
     78 
     79#==================================================================================================== 
     80# cmpl_s 
     81#==================================================================================================== 
     82 
     83ROLE    cmpl_s 
     84SGL     cmpl_s 
     85 
     86#==================================================================================================== 
     87# aux 
     88#==================================================================================================== 
     89 
     90ROLE    aux      
     91SGL     aux 
     92AGR     aux        N 
     93AGR     aux        G 
     94 
     95LINK    BYC/VpMdTf                              V/AiVpP3,V/AiVb         aux     #czas przyszly analityczny 
     96LINK    BYC/VpMc                                V/VpP3                  aux     #czas zaprzesz³y 
     97LINK    BYC                                     ADJPAP/Cn,ADJ/Cn,N/Ci   aux     #BYC jako lacznik w (jest bialy, jest zaszlachtowany, jest pilotem) 
     98 
     99#==================================================================================================== 
     100# mod 
     101#==================================================================================================== 
     102 
     103ROLE    mod 
     104AGR     mod     N 
     105AGR     mod     C 
     106AGR     mod     G 
     107  
     108LINK    V       ADV,ADVPRP,ADVANP               mod 
     109LINK    V       ADVPRO/Zqr                      mod&INIT 
     110LINK    N,NV    ADJ,ADJPAP,ADJPRP               mod 
     111LINK    N,NV    ADJPRO/Zqr                              mod&INIT 
     112 
     113#==================================================================================================== 
     114# prep 
     115#==================================================================================================== 
     116 
     117ROLE    prep 
     118 
     119LINK    V       P       prep 
     120LINK    N       P;RQ-   prep 
     121 
     122#==================================================================================================== 
     123# pcmpl 
     124#==================================================================================================== 
     125 
     126ROLE    pcmpl 
     127RIGHT   pcmpl 
     128SGL     pcmpl 
     129AGR     pcmpl   C 
     130 
     131LINK    P       N,NV,NPRO       pcmpl 
     132 
     133REQ     P       pcmpl 
     134 
     135#==================================================================================================== 
     136# conj 
     137#==================================================================================================== 
     138 
     139ROLE    conj 
     140RIGHT   conj 
     141 
     142LINK    N       CONJ/Sc conj 
     143LINK    V/Vp    CONJ/Sc conj&FIN         
     144 
     145#==================================================================================================== 
     146# conj1 
     147#==================================================================================================== 
     148 
     149ROLE    conj1 
     150SGL     conj1 
     151LEFT    conj1 
     152LINK    N       CONJ/S1 conj1    
     153 
     154#==================================================================================================== 
     155# conj2 
     156#==================================================================================================== 
     157 
     158ROLE    conj2 
     159SGL     conj2 
     160RIGHT   conj2 
     161LINK    N       CONJ/S2 conj2    
     162 
     163#==================================================================================================== 
     164# ccmpl 
     165#==================================================================================================== 
     166  
     167ROLE    ccmpl 
     168SGL     ccmpl 
     169RIGHT   ccmpl 
     170 
     171LINK    CONJ/JpSci2     N       ccmpl 
     172LINK    CONJ/JcpSci2    V/Vp    ccmpl 
     173 
     174REQ     CONJ/Sci2       ccmpl 
     175 
     176#==================================================================================================== 
     177# poss 
     178#==================================================================================================== 
     179 
     180ROLE    poss 
     181SGL     poss 
     182GOV     poss    */Cg 
     183 
     184LINK    N       N,NV     poss 
     185 
     186#==================================================================================================== 
     187# num 
     188#==================================================================================================== 
     189 
     190ROLE    num 
     191SGL     num 
     192 
     193LINK    NUMCRD  N,NV     num 
     194 
     195#==================================================================================================== 
     196# restr 
     197#==================================================================================================== 
     198 
     199ROLE    restr 
     200SGL     restr 
     201 
     202LINK    ADJ     ADV             restr 
     203 
     204#==================================================================================================== 
     205# quant 
     206#==================================================================================================== 
     207 
     208ROLE    quant 
     209SGL     quant 
     210AGR     quant   N 
     211AGR     quant   C 
     212AGR     quant   G 
     213LEFT    quant 
     214 
     215LINK    N       ADJPRO/Zg       quant 
     216 
     217#==================================================================================================== 
     218# part 
     219#==================================================================================================== 
     220 
     221ROLE    part 
     222 
     223LINK    V,BYC   PART    part 
     224 
     225#==================================================================================================== 
     226# subj_copred 
     227#==================================================================================================== 
     228 
     229ROLE    subj_copred 
     230SGL     subj_copred 
     231 
     232#==================================================================================================== 
     233# cmpl_g_copred 
     234#==================================================================================================== 
     235 
     236ROLE    cmpl_g_copred 
     237SGL     cmpl_g_copred 
     238 
     239#==================================================================================================== 
     240# cmpl_a_copred 
     241#==================================================================================================== 
     242 
     243ROLE    cmpl_a_copred 
     244SGL     cmpl_a_copred 
     245 
     246#==================================================================================================== 
     247# cmpl_d_copred 
     248#==================================================================================================== 
     249 
     250ROLE    cmpl_d_copred 
     251SGL     cmpl_d_copred 
     252 
     253#==================================================================================================== 
     254# cmpl_i_copred 
     255#==================================================================================================== 
     256 
     257ROLE    cmpl_i_copred 
     258SGL     cmpl_i_copred 
     259 
     260 
     261#==================================================================================================== 
     262# rel 
     263#==================================================================================================== 
     264 
     265ROLE    rel 
     266RIGHT   rel 
     267SGL     rel 
     268FIN     rel 
     269 
     270LINK    N       V/Vp;RQ+        rel&FIN 
     271 
     272#==================================================================================================== 
     273#==================================================================================================== 
     274# CONSTR 
     275#==================================================================================================== 
     276#==================================================================================================== 
     277 
     278CONSTRE cmpl_g cmpl_a 
     279CONSTRE cmpl_a cmpl_g 
     280 
     281CONSTRI conj1 conj2 
     282CONSTRI conj2 conj1 
     283 
     284#CONSTR cmpl_g  ~cmpl_a 
     285#CONSTR cmpl_a  ~cmpl_g 
     286#CONSTR cmpl_inf        ~cmpl_g ~cmpl_d ~cmpl_a ~cmpl_p ~cmpl_ez ~cmpl_s 
     287#CONSTR subj_copred     => subj 
     288#CONSTR cmpl_g_copred   => cmpl_g 
     289#CONSTR cmpl_a_copred   => cmpl_a 
     290#CONSTR cmpl_i_copred   => cmpl_i 
     291#CONSTR cmpl_d_copred   => cmpl_d 
     292 
     293 
     294 
     295#==================================================================================================== 
     296#==================================================================================================== 
     297# LONG 
     298#==================================================================================================== 
     299#==================================================================================================== 
     300 
     301#==================================================================================================== 
     302# ncoord 
     303#==================================================================================================== 
     304 
     305LONG  ncoord conj> ccmpl> 
     306LONG  ncoord conj2> ccmpl> 
     307 
     308AGR  ncoord    C 
     309AGR  ncoord    N 
     310 
     311LINK N N ncoord 
     312 
     313#==================================================================================================== 
     314# vcoord 
     315#==================================================================================================== 
     316 
     317LONG  vcoord conj> ccmpl> 
     318 
     319AGR  vcoord    P 
     320AGR  vcoord    N 
     321AGR  vcoord    A 
     322AGR  vcoord    G 
     323 
     324LINK V V vcoord 
     325 
     326#==================================================================================================== 
     327# adjcoord 
     328#==================================================================================================== 
     329 
     330LONG  adjcoord conj> ccmpl> 
     331 
     332AGR  adjcoord    C 
     333AGR  adjcoord    N 
     334AGR  adjcoord    G 
     335 
     336LINK ADJ ADJ ncoord 
     337 
     338#==================================================================================================== 
     339# advcoord 
     340#==================================================================================================== 
     341 
     342LONG  advcoord conj> ccmpl> 
     343 
     344AGR  ncoord    C 
     345AGR  ncoord    N 
     346 
     347LINK ADV ADV ncoord 
     348 
     349 
     350#==================================================================================================== 
     351# relagr 
     352#==================================================================================================== 
     353 
     354LONG  relagr <subj <rel 
     355LONG  relagr <cmpl_a <rel 
     356 
     357AGR  relagr    C 
     358AGR  relagr    N 
     359AGR  relagr    G 
     360 
     361LINK NPRO/Zqr N relagr 
     362 
     363 
     364#==================================================================================================== 
     365#==================================================================================================== 
     366# FLAG 
     367#==================================================================================================== 
     368#==================================================================================================== 
     369 
     370#==================================================================================================== 
     371# RQ 
     372#==================================================================================================== 
     373 
     374SET     NPRO/Zrq        RQ 
     375SET     ADJPRO/Zrq      RQ 
     376SET     ADVPRO/Zqr      RQ 
     377 
     378PASS    subj    RQ 
     379PASS    cmpl_g  RQ 
     380PASS    cmpl_d  RQ 
     381PASS    cmpl_a  RQ 
     382PASS    cmpl_i  RQ 
     383PASS    mod     RQ 
     384PASS    pcmpl   RQ 
     385PASS    prep    RQ 
     386 
     387#==================================================================================================== 
     388# init 
     389#==================================================================================================== 
     390 
     391#SET    NPRO/Zrq        init 
     392#SET    ADJPRO/Zrq      init 
     393 
     394#==================================================================================================== 
     395# ZE 
     396#==================================================================================================== 
     397 
     398#FLAG ZE 
     399 
     400#==================================================================================================== 
     401#==================================================================================================== 
     402 
     403#INIT RQ+ 
     404 
     405#==================================================================================================== 
     406#==================================================================================================== 
     407#==================================================================================================== 
     408#==================================================================================================== 
     409#==================================================================================================== 
     410#==================================================================================================== 
     411#==================================================================================================== 
     412#==================================================================================================== 
     413#==================================================================================================== 
     414#==================================================================================================== 
     415#==================================================================================================== 
     416 
     417 
     418#CLASS @Cn     : */Cn 
     419#CLASS @Cg     : */Cg 
     420#CLASS @Cd     : */Cd 
     421#CLASS @Ca     : */Ca 
     422#CLASS @Ci     : */Ci 
     423#CLASS @Cl     : */Cl 
     424#CLASS @Cv     : */Cv 
     425 
     426#CLASS @Ns     : */Ns 
     427#CLASS @Np     : */Np 
     428 
     429#CLASS @N      : N | NPRO | NV 
     430#CLASS @ADJ    : ADJ | ADJPRO | ADJPRP | ADJPAP | ADJPP 
    4431 
    5432#ORDER * pcmpl 
     
    9436#ORDER * refl 
    10437 
    11 #CONSTR cmpl_g   => ~cmpl_a 
    12 #CONSTR cmpl_inf => ~(cmpl_g|cmpl_d|cmpl_a|cmpl_p|cmpl_ze|cmpl_s) 
    13 #CONSTR subj_pred => subj 
    14 #constr cmpl_pred => cmpl 
    15  
    16  
    17  
    18 #subj 
    19 ROLE subj         # deklaracja roli (typ zaleznosci) podmiot 
    20 AGR subj N        # zgodnosc podrzednika z nadrzednikiem co do liczby 
    21 AGR subj G        # zgodnosc podrzednika z nadrzednikiem co do rodzaju 
    22 GOV subj */Cn     # wymaganie by podrzednik byl w mianowniku 
    23  
    24 # pary kategorii, jakie mozna polaczyc zaleznoscia typu podmiot 
    25  
    26 #       nadrzednik              podrzednik 
    27 LINK    V/VpP3,BYC/VpP3         N,NPRO          subj 
    28  
    29 # (przecinek znaczy lub) 
    30  
    31 ROLE cmpl_ga    # dopelnienie w bierniku/dopelniaczu 
    32 ROLE cmpl_d     #             w celowniku 
    33 ROLE cmpl_i     #             w narzedniku 
    34 ROLE cmpl_inf   #             w bezokoliczniku 
    35 ROLE cmpl_s     #             bedace zdaniem 
    36 ROLE cmpl_ze    #             bedace zdaniem poprzedzonym 'ze' 
    37 ROLE aux        #  
    38 ROLE mod        # modyfikator (okolicznik/przydawka) (niewymagane określenie) (biały kot) 
    39 ROLE prep       # modyfikator w postaci frazy przyimkowej 
    40 ROLE pcmpl      # dopełnienie przyimka (wymagany rzeczownik) 
    41 ROLE ccmpl      # dopełnienie spójnika (wymagany drugi człon konstrukcji spójnikowej) 
    42 ROLE poss       # np. ksiÄ 
    43 ÅŒka Marii, ojciec kolegi 
    44 ROLE restr      # (bardzo <- duÅŒy) 
    45 ROLE part       # partykuła 
    46 ROLE coord      # koordynacja (powiÄ 
    47 zanie pierwszego członu konstrukcji współrzędnej 
    48                 # ze spójnikiem współrzędnym centralnym ( Oto [pies -> i] kot. ) 
    49   
    50  
    51 AGR aux N 
    52 AGR aux G 
    53  
    54 AGR mod N 
    55 AGR mod C 
    56 AGR mod G 
    57  
    58 AGR pcmpl C 
    59  
    60 GOV     cmpl_ga */Cga 
    61 GOV     cmpl_d  */Cd 
    62 GOV     cmpl_i  */Ci 
    63 GOV     poss    */Cg 
    64  
    65 SGL subj 
    66 SGL cmpl_ga 
    67 SGL cmpl_d 
    68 SGL cmpl_i 
    69 SGL cmpl_inf 
    70 SGL aux 
    71 SGL pcmpl 
    72 SGL ccmpl 
    73 SGL poss 
    74 SGL restr 
    75  
    76 REQ     P       pcmpl 
    77 REQ     CONJ    ccmpl 
    78  
    79 RIGHT pcmpl 
    80 RIGHT ccmpl 
    81 RIGHT cmpl_ze 
    82 RIGHT poss 
    83  
    84  
    85 #cmpl_* 
    86 LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO                  cmpl_ga 
    87 LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO                  cmpl_d 
    88 LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        N,NPRO                  cmpl_i 
    89 LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        V/Vb                    cmpl_inf 
    90 LINK    V,ADVPRP,ADVANP,ADJPRP,ADJPAP,NV        CONJ                    cmpl_ze 
    91  
    92 #aux 
    93 #czas przyszly analityczny 
    94 LINK    BYC/VpMdTf                              V/AiVpP3,V/AiVb         aux 
    95 #czas zaprzeszly(?) 
    96 LINK    BYC/VpMc                                V/VpP3                  aux 
    97 #BYC jako lacznik w (jest bialy, jest zaszlachtowany, jest pilotem) 
    98 LINK    BYC                                     ADJPAP/Cn,ADJ/Cn,N/Ci   aux 
    99  
    100 #mod 
    101  
    102 LINK    V       ADV,ADVPRP,ADVANP,ADVPRO        mod 
    103 LINK    N,NV    ADJ,ADJPAP,ADJPRP,ADJPRO        mod 
    104  
    105  
    106 #prep 
    107 LINK    N,V     P       prep 
    108  
    109 #pcmpl 
    110 LINK    P       N,NV    pcmpl 
    111  
    112  
    113 #poss 
    114 LINK    N       N,NV,NPRO       poss 
    115  
    116  
    117 #ccmpl 
    118 LINK    CONJ    V/Vp    ccmpl 
    119  
    120  
    121 #restr 
    122 LINK    ADJ     ADV     restr 
    123  
    124  
    125 #part 
    126 LINK    V       PART    part 
  • src/dgp/cmdline_dgp.ggo

    r5f4d9c3 ra15e59b  
    1111                                flag off 
    1212 
     13option  "time"          -       "Print parse time." 
     14                                flag off 
     15 
    1316option  "info"          -       "Print info.  
    14 h - heads         d - dependents 
    15 s - sets 
    16 c - constraints   n - node/arc counts   t - parse time 
    17 " 
     17                                       h - heads         d - dependents 
     18                                       s - sets 
     19                                       c - constraints    n - node/arc counts" 
    1820string no default="h" 
  • src/dgp/dgp1.cc

    re7de6cc ra15e59b  
    303303//==================================================================================================== 
    304304 
    305 bool check_boubbles_at_target(list<Boubble*> boubbles, int node) 
    306 { 
    307   for(list<Boubble*>::iterator b = boubbles.begin(); b != boubbles.end(); b++) 
    308     if( (*b)->is_at_target() && !grammar.check_longrel(sgraph.cat((*b)->src()), sgraph.cat(node), (*b)->rel())) 
    309       return false; 
     305// sprawdza czy te, spo¶ród b±bli, które dotar³y do celu node 
     306// daj± wynik prawdziwy, dodatkowo - usuwa je z listy boubbles 
     307 
     308bool check_boubbles_at_target(list<Boubble*>& boubbles, int node) 
     309{ 
     310  list<Boubble*>::iterator last; // ostatnio sprawdzany b±bel 
     311  bool remove=false;             // czy usun±æ ostatnio sprawdzany b±bel 
     312 
     313  for(list<Boubble*>::iterator b = boubbles.begin(); b != boubbles.end(); b = remove ? boubbles.erase(b) : ++b ) 
     314    if( (*b)->is_at_target() ) 
     315      if( grammar.check_longrel(sgraph.cat((*b)->src()), sgraph.cat(node), (*b)->rel()) ) 
     316        remove=true; 
     317      else 
     318        return false; 
     319    else 
     320      remove=false; 
     321       
    310322  return true; 
    311323} 
     324 
     325// bool check_boubbles_at_target(list<Boubble*> boubbles, int node) 
     326// { 
     327//   for(list<Boubble*>::iterator b = boubbles.begin(); b != boubbles.end(); ++b ) 
     328//     if( (*b)->is_at_target() && !grammar.check_longrel(sgraph.cat((*b)->src()), sgraph.cat(node), (*b)->rel()) ) 
     329//       return false; 
     330//   return true; 
     331// } 
    312332 
    313333//==================================================================================================== 
  • src/dgp/grammar.cc

    re7de6cc ra15e59b  
    187187  Prop::add("INIT"); 
    188188  Prop::add("FIN"); 
     189  Prop::add("LEFT"); 
     190  Prop::add("RIGHT"); 
    189191 
    190192  //<<< TU? 
  • src/dgp/grammar.hh

    re7de6cc ra15e59b  
    192192//---------------------------------------------------------------------------------------------------- 
    193193 
    194 inline 
    195 bool Grammar::check_constr(NodeProp& hprop, NodeProp& dprop, int dir, Role role)    // dir: 0-left 1-right 
    196 { 
    197   return  
    198     !hprop.forbidden[role] && 
    199     ( dir==1 || !right[role] ) && 
    200     ( dir==0 || !left[role]  ) && 
    201     ( dir==1 || (hprop.attached&init).none() ) && 
    202     ( dir==0 || (hprop.attached&fin).none() ) 
    203     ; 
    204 } 
     194// inline 
     195// bool Grammar::check_constr(NodeProp& hprop, NodeProp& dprop, int dir, Role role)    // dir: 0-left 1-right 
     196// { 
     197//   return  
     198//     !hprop.forbidden[role] && 
     199//     ( dir==1 || !right[role] ) && 
     200//     ( dir==0 || !left[role]  ) && 
     201//     ( dir==1 || (hprop.attached&init).none() ) && 
     202//     ( dir==0 || (hprop.attached&fin).none() ) 
     203//     ; 
     204// } 
    205205 
    206206//---------------------------------------------------------------------------------------------------- 
     
    211211  return  
    212212    !hprop.forbidden[link.role] && 
    213     ( dir==1 || !right[link.role] ) && 
    214     ( dir==0 || !left[link.role] ) && 
     213    ( dir==1 || (!right[link.role] && !link.props[Prop("RIGHT")]) ) &&  // ZREZYGNOWAÆ Z TABLICY right[<role>] 
     214    ( dir==0 || (!left[link.role] && !link.props[Prop("LEFT")]) ) && 
    215215    ( dir!=0 || !hprop.init_attached ) && 
    216216    ( dir!=1 || !hprop.fin_attached ) 
  • src/dgp/main.cc

    re7de6cc ra15e59b  
    66 * Author:      Tomasz Obrebski 
    77 */ 
     8 
     9#include <ctime> 
     10#include <sys/time.h> 
    811 
    912#include "global.hh" 
     
    1619 
    1720#define MAXSEGMENTS 500 
     21 
     22#define MICROSECONDSELAPSED(A,B) ((B.tv_sec - A.tv_sec)*1000000 + (B.tv_usec - A.tv_usec)) 
    1823 
    1924char segment[MAXSEGMENTS][MAXLINE]; 
     
    3035FILE* debugf=stdout; 
    3136unsigned int info=0U; 
     37 
     38bool printtimeinfo=false; 
    3239 
    3340void output(); 
     
    5360  if(args.debug_given) debug=true; 
    5461 
     62  if(args.time_given) printtimeinfo=true; 
     63 
    5564  for(char* c=args.info_arg; *c!='\0' ; ++c) 
    5665    switch(*c) 
     
    7079  // exit(0); 
    7180 
    72  
     81  struct timeval starttime,afterinput,afterparse,endtime; 
    7382 
    7483  mgraph.clear(); 
     
    7887  while (fgets(line, MAXLINE+1, inputf)) 
    7988  { 
     89    gettimeofday(&starttime,NULL); 
    8090    line[strlen(line)-1] = '\0'; 
    8191    strcpy(segment[segcount],line); 
     
    90100    if(strcmp(segtype,"EOS")==0) 
    91101    { 
     102      gettimeofday(&afterinput,NULL); 
    92103      dgp1(); // parametry!!! MGraph, SGraph, Grammar 
     104      gettimeofday(&afterparse,NULL); 
    93105      output(); 
     106      gettimeofday(&endtime,NULL); 
     107 
     108      if(printtimeinfo) 
     109        { 
     110          fprintf(stderr,"### INPUT  TIME: %10.2fms\n", (float)MICROSECONDSELAPSED(starttime,afterinput)/1000 ); 
     111          fprintf(stderr,"### PARSE  TIME: %10.2fms\n", (float)MICROSECONDSELAPSED(afterinput,afterparse)/1000 ); 
     112          fprintf(stderr,"### OUTPUT TIME: %10.2fms\n", (float)MICROSECONDSELAPSED(afterparse,endtime)/1000 ); 
     113          fprintf(stderr,"### TOTAL  TIME: %10.2fms\n", (float)MICROSECONDSELAPSED(starttime,endtime)/1000 ); 
     114        } 
    94115       
    95116      mgraph.clear(); 
  • src/dgp/sgraph.cc

    re7de6cc ra15e59b  
    148148      if(node.prop.forbidden[i]) buf+=sprintf(buf,"%s!%s",(cont++)?",":"",i.str()); 
    149149    for(Role i=1; i<=Role::count(); ++i) 
    150       if(node.prop.required[i]) buf+=sprintf(buf,"%s&%s",(cont++)?",":"",i.str()); 
     150      if(node.prop.required[i]) buf+=sprintf(buf,"%s-%s",(cont++)?",":"",i.str()); 
    151151    for(Role i=1; i<=Role::count(); ++i) 
    152152      if(node.prop.attached[i]) buf+=sprintf(buf,"%s+%s",(cont++)?",":"",i.str()); 
Note: See TracChangeset for help on using the changeset viewer.