Tinyfsm: ๋™์ผํ•œ Fsm์˜ ๋‹ค์ค‘ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

์— ๋งŒ๋“  2017๋…„ 10์›” 25์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: digint/tinyfsm

ํด๋ž˜์Šค Fsm์—์„œ typedef F const * state_ptr_const_t; ๋ฅผ ์„ ์–ธํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ํŠน์ • Fsm์— ๋Œ€ํ•ด ๋‘˜ ์ด์ƒ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ํ”ผํ•  ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๊นŒ?

question

๋ชจ๋“  5 ๋Œ“๊ธ€

์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๊ธฐ์ˆ ํ•˜๋ฉด Fsm ๋ฐ ์ƒํƒœ๋Š” ๋ชจ๋‘ ํ…œํ”Œ๋ฆฟ ์œ ํ˜•์˜ ์ •์  ์ธ์Šคํ„ด์Šค์ž…๋‹ˆ๋‹ค. ์ด๋Š” ํŠน์ • Fsm์— ๋Œ€ํ•ด ๋‘˜ ์ด์ƒ์˜ ์ธ์Šคํ„ด์Šค๋ฅผ ๊ฐ€์งˆ ์ˆ˜ ์—†์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์ผ๋ถ€ ํ…œํ”Œ๋ฆฟ ๋ฉ”ํƒ€ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋งˆ๋ฒ•์œผ๋กœ ๊ฐ€๋Šฅํ•  ์ˆ˜๋„ ์žˆ๊ณ  ์ด๊ฒƒ์œผ๋กœ ๋ช‡ ๊ฐ€์ง€ ์‹คํ—˜์„ ํ–ˆ๋˜ ๊ฒƒ์„ ๊ธฐ์–ตํ•˜์ง€๋งŒ ๊ฝค ๋ณต์žกํ•ด์ ธ์„œ ์‚ญ์ œํ–ˆ์Šต๋‹ˆ๋‹ค(tinyfsm์˜ ์ฃผ์š” ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ๋‹จ์ˆœํ•˜๊ฒŒ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ).

๋‹ค์Œ์€ ํ…œํ”Œ๋ฆฟ ์ƒํƒœ ๋จธ์‹ ์„ ์„ ์–ธํ•˜๋Š” ๋™์ผํ•œ ์œ ํ˜•์˜ ์—ฌ๋Ÿฌ ์ƒํƒœ ๋จธ์‹ ์„ ๊ฐ–๋Š” ๋ฐฉ๋ฒ• examples/api/multiple_switch.cpp .

์ˆ˜์ฒœ ๊ฐœ์˜ AI ๋ด‡์— ๋Œ€ํ•ด fsm์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ์Šต๋‹ˆ๋‹ค... ๊ฐ ๋ด‡์— ๋Œ€ํ•ด Fsm ๊ฐœ์ฒด๋ฅผ ์ธ์Šคํ„ด์Šคํ™”ํ•  ๋ฐฉ๋ฒ•์ด ์—†์œผ๋ฉด ๋” ์ด์ƒ ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. (์ดˆ๋ณด์ž C++ ํ•™์Šต์ž์ด๋ฏ€๋กœ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์ด ์žˆ์œผ๋ฉด ๊ธ์ •์ ์ด์ง€ ์•Š์Œ).

ํ  nvermind ๊ธฐ๋Šฅ ์ธก๋ฉด์—์„œ ๋‚ด๊ฐ€ ํ•„์š”๋กœ ํ–ˆ๋˜ ๊ฒƒ๊ณผ ๋” ๋ฐ€์ ‘ํ•˜๊ฒŒ ์ผ์น˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— https://www.boost.org/doc/libs/1_64_0/libs/msm ์„ ์‚ฌ์šฉํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค. ์›น ์†Œ์ผ“ ์„œ๋ฒ„์— ์ด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์—ˆ์Šต๋‹ˆ๋‹ค. ์›น ์†Œ์ผ“์€ ์ƒํƒœ ๋จธ์‹ ์œผ๋กœ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.
_Boost.SML์„ ๋งŒ๋‚ฌ์Šต๋‹ˆ๋‹ค ._

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰