이번 시간에는 main.c에서 실제 app을 어떻게 사용하는지 알아보도록 하겠습니다.
main.c에서 app을 만들어 사용하기 전에 전에 만들었던 message process [Message 기반]와 key process [Builder pattern]를 사용해 setup 해줍니다. 메시지가 발생했을 때와 key가 클릭 되었을 때 message에 queue 형태로 쌓일 것입니다. message process에서는 쌓인 메시지를 무한루프를 돌면서 current app에 전달해주게 됩니다.
25번 줄에 app manager 를 setup하여 app_manager를 생성합니다. 그리고 26번줄에 create_app에 대망의 첫번째 app을 setup_app_scene_1()을 해서 넣어줍니다.
26번줄에 생뚱맞게 setup_app_scene_1이 나와 당황하셨을 수도 있습니다. 아직 만들지 않았으니까요. 다음장에서 만들 예정입니다.
이렇게 만든 app scene 1의 id 가 바로 이전 글에서 app_id_t 의 APP_SCENE_1 입니다. 27번 줄에 app_manager->start_app 에 id를 넘겨주면서 APP_SCENE_1이 실행되게 됩니다.
35번줄의 message_process에서 message를 처리하는데, app manager에 전달하면 결국 현재 실행중인 app에 메시지가 전달 되면서 여러가지 process를 진행하게 됩니다.
다음 시간에는 실제 app scene 1이 어떻게 구성되었는지 살펴 보도록 하겠습니다.
'▶ 이전글 > C Pattern' 카테고리의 다른 글
C의 app 만들기 - 3 : app (0) | 2018.01.31 |
---|---|
C 언어에서 this 구현2 (0) | 2018.01.27 |
C의 app 만들기 - 1 : app manager (0) | 2018.01.24 |
Builder 패턴 (0) | 2018.01.17 |
facade 패턴 (0) | 2018.01.11 |