Example #1
0
    public static void Modules(ModuleAction action)
    {
        //-----------------------------------|----------------------------------------
        String dummy;

        switch (action)
        {
        case ModuleAction.initModule:
            for (int i = 0; i < modCnt; i++)
            {
                if (!mil[i].init)
                {
                    mil[i].moduleMethod(ModuleAction.initModule, out dummy);
                    mil[i].init = true;
                }
                else
                {
                    FatalError(MODULENAME, "Modules",
                               "{0} reinitialized", mil[i].moduleName);
                }
            } // for
            break;

        case ModuleAction.resetModule:
        case ModuleAction.cleanupModule:
            if (!withinCleanUp)
            {
                withinCleanUp = true;
                for (int i = modCnt - 1; i >= 0; i--)
                {
                    if (mil[i].init)
                    {
                        mil[i].moduleMethod(action, out dummy);
                        mil[i].init = action != ModuleAction.cleanupModule;
                    }
                    else
                    {
                        FatalError(MODULENAME, "Modules",
                                   "{0} not initialized", mil[i].moduleName);
                    }
                }
                withinCleanUp = false;
            } // if
            break;

        default:
            FatalError(MODULENAME, "Modules",
                       "invalid ModuleAction {0}", action.ToString());
            break;
        } // switch
    }     // Modules