49 lines
685 B
Go
49 lines
685 B
Go
package global
|
|
|
|
import (
|
|
"fmt"
|
|
"main/common"
|
|
"main/constant"
|
|
"q5"
|
|
)
|
|
|
|
var modules [constant.MAX_MODULE_IDX]q5.Module
|
|
var initOrders = []int32{
|
|
}
|
|
|
|
var app common.App
|
|
|
|
func GetApp() common.App {
|
|
return app
|
|
}
|
|
|
|
|
|
func RegModule(idx int32, m q5.Module) {
|
|
fmt.Printf("RegModule module %d\n", idx)
|
|
modules[idx] = m
|
|
switch idx {
|
|
case constant.APP_MODULE_IDX:
|
|
{
|
|
app = m.(common.App)
|
|
}
|
|
default:
|
|
{
|
|
panic("unknow module")
|
|
}
|
|
}
|
|
}
|
|
|
|
func InitModules() {
|
|
for _, val := range initOrders {
|
|
fmt.Printf("init module %d\n", val)
|
|
modules[val].Init()
|
|
}
|
|
}
|
|
|
|
func UnInitModules() {
|
|
for _, val := range initOrders {
|
|
fmt.Printf("unInit module %d", val)
|
|
modules[val].UnInit()
|
|
}
|
|
}
|