Beispiel #1
0
        public void LoadAtom(string bankName, bool ignoreIfAssetNotExist,
                             AudioBank_LoadAction loadAction, AudioBank_LoadMode loadMode, Action <AKRESULT> handler)
        {
            AKRESULT   result;
            AKBankAtom atom = bankAtomSet.Get(bankName);

            if (atom == null)
            {
                if (ignoreIfAssetNotExist)
                {
                    if (handler != null)
                    {
                        handler(AKRESULT.AK_BankNotLoadYet);
                    }
                    return;
                }

                atom = bankAtomSet.Register(bankName, loadAction, loadMode);
            }
            else
            {
                result = bankAtomSet.Vertify(atom);
                if (result != AKRESULT.AK_Success)
                {
                    if (handler != null)
                    {
                        handler(result);
                    }
                    return;
                }
            }

            bankAtomSet.DoLoadBank(atom, handler);
        }
Beispiel #2
0
 public BankLoadRequestStruct(string in_name, AudioBank_LoadAction action, AudioBnk_LoadModel model, bool in_ignoreIfAssetNotExist)
 {
     bnkName               = in_name;
     actionType            = action;
     modelType             = model;
     ignoreIfAssetNotExist = in_ignoreIfAssetNotExist;
 }
Beispiel #3
0
        //public BankLoadStage LoadStage { get; private set; }

        public AKBankAtom(string bnkName, AudioBank_LoadAction loadAction, AudioBnk_LoadModel loadModel)
        {
            BankName   = bnkName;
            LoadAction = loadAction;
            LoadModel  = loadModel;
            //  LoadStage = BankLoadStage.Unload;
        }
Beispiel #4
0
 public BankLoadRequestStruct(string in_name)
 {
     bnkName               = in_name;
     actionType            = AudioBank_LoadAction.Normal;
     modelType             = AudioBnk_LoadModel.Sync;
     ignoreIfAssetNotExist = false;
 }
Beispiel #5
0
        //  private readonly HashSet<string> bankOnLoadIdList = new HashSet<string>();


        public AKBankAtom Register(string bnkName,
                                   AudioBank_LoadAction actionType,
                                   AudioBank_LoadMode modeType)
        {
            AKBankAtom atom;

            if (!bankAtomContenter.TryGetValue(bnkName, out atom))
            {
                atom = new AKBankAtom(bnkName, actionType, modeType);
                bankAtomContenter.Add(bnkName, atom);
            }

            return(atom);
        }