作者boomba47 (boomba)
看板NTUEE_VAL
標題Re: [討論] 老師的pathg
時間Tue May 11 10:25:56 2010
這是燕青提供的的方法,可以抓取每個mode的資訊
for( int ms = red_first_mode(); ms == RED_FLAG_SUCCESS; ms = red_next_mode())
{
//以下的回傳都是char *
red_query_current_mode_name();
red_query_string_current_mode_invariance();
red_query_string_current_xtion_syncs();
red_query_string_current_xtion_trigger();
red_query_string_current_xtion_statement();
}
走完一次pathg後可以從下面的方法取得每一步走過的mode
//red_print是直接print在螢幕上,再用grep抓
red_print_xtion(LOG[i].entering_xtion[j], j);
//red_query是回傳char *
red_query_string_xtion(LOG[i].entering_xtion[j], j);
傳入的值就是ochou說的step和xtion的index
這兩的function的功能一模一樣,
只是red_query_string好像還不支援新的function call的語法?
也有可能是我不會用="=
以上不負責任分享...
※ 引述《ochou (哈哈哈哈哈handsomeGUY哈)》之銘言:
: 最近我們碩二的好像都要開始改老師的pathg
: 我把自己有用到的一些變數跟大家分享一下
: 這樣就不用每個人都要重新試試看
: 第一個就是 LOG這個變數 它的宣告在pathgame.h
: 這個變數用來記錄每一步的資訊 所以還滿有用的
: 每一步的資訊很多 撇開時間 其中主要的兩個部分是
: (1)tansition index
: LOG[step_index].entering_xtion[process_index]
: step_index就是進入這一步是哪一個transition
: 如果用過pathg就知道 每次都要挑process index和transition index
: 後面填的process_index如果填入沒挑到的 就會回傳-1
: 舉例來說
: 跑了一個model 第一步選(1,1) 第二步選(4,2)
: LOG[1].entering_xtion[1] = 1
: LOG[2].entering_xtion[4] = 2
: 而
: LOG[1].entering_xtion[3] = -1
: 這樣
: (2)狀態邏輯式的樣子
: LOG[steo_index].post
: 轉成string
: red_diagram_string(LOG[step_index].post)
: 就會出現那堆可怕的邏輯式。
: ------------------------------------------
: 其它有好多function 都在 redlib.e
: 如果大家有用到一定要分享一下 畢業大作戰XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.42.123
1F:推 ochou:謝謝子翔和燕青~~ 05/12 11:06