Mercurial > hg > Members > kono > Cerium
diff Renderer/Engine/SgMain.cc @ 656:d0b8860c17f8
remove global variable "sgroot" , add SgChange.{cc, h} SgMain.cc SgRootChange.{cc, h}
author | hiroki@henri.cr.ie.u-ryukyu.ac.jp |
---|---|
date | Wed, 25 Nov 2009 21:56:14 +0900 |
parents | |
children | 9d1bcc07734b |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Renderer/Engine/SgMain.cc Wed Nov 25 21:56:14 2009 +0900 @@ -0,0 +1,61 @@ +#include "TaskManager.h" +#include "SgChange.h" +#include "Application.h" + +/* prototype */ +extern void task_initialize(); +extern Application *application(); +extern int sg_init(TaskManager *manager, int argc, char *argv[]); + +int +sg_init(TaskManager *manager, int argc, char *argv[]) +{ + int bpp = 32; + int width = 640; + int height = 480; + int spenum = 1; + + for(int i = 1; argv[i]; ++i) + { + if (strcmp(argv[i], "-bpp") == 0) { + bpp = atoi(argv[++i]); + } + if (strcmp(argv[i], "-width") == 0) { + width = atoi(argv[++i]); + } + if (strcmp(argv[i], "-height") == 0) { + height = atoi(argv[++i]); + } + if (strcmp(argv[i], "-cpu") == 0) { + spenum = atoi(argv[++i]); + } + } + + SgChange *screen = new SgChange(bpp, width, height, spenum); + screen->run_init(manager, application()); + + return 0; +} + +#if 0 + +// These are defined in Application + +int +TMmain(TaskManager *manager, int argc, char *argv[]) +{ + task_initialize(); + manager->set_TMend(TMend); + return init(manager, argc, argv); + +} + +void +TMend(TaskManager *manager) +{ + printf("test_nogl end\n"); +} + +#endif + +/* end */