示例#1
0
        public void DestoryResource(eResourceType eType, string name)
        {
            IResource resource = FindResource(eType, name);

            GetDicResource(eType).Remove(resource.GetHashCode());
            resource.Release();
        }
示例#2
0
        public void UnLoadResource(eResourceType eType, string name)
        {
            IResource resource = FindResource(eType, name);

            GetDicResource(eType).Remove(resource.GetHashCode());
            resource.UnLoad(true);
        }
示例#3
0
        public IEnumerator CreateResourceAsync(eResourceType resourceType, string resourceName, ePath pathType, System.Action <IResource> action)
        {
            if (string.IsNullOrEmpty(resourceName) == true)
            {
                action(null);
                yield break;
            }

            bool   isAssetBundle = false;
            string resourcePath  = StringUtil.Format("{0}/{1}", m_pathManager.GetPath(pathType), resourceName);

            UnityEngine.Object resourceData = null;

            ResourceRequest request = Resources.LoadAsync(resourcePath);

            yield return(request);

            resourceData = request.asset;

            if (resourceData == null)
            {
                LogError("resource is null: " + resourceType.ToString() + ", " + pathType.ToString() + ", " + resourceName);
                action(null);
                yield break;
            }

            action(CreateResource(resourceType, resourceName, resourcePath, resourceData, isAssetBundle));
        }
示例#4
0
 public ResourceChangedEventArgs(eResourceType type, int id, byte?panelId, Task task)
 {
     this.Handled      = false;
     this.ResourceType = type;
     this.Id           = id;
     this.PanelId      = panelId;
 }
示例#5
0
    public IResource FindResource(eResourceType eType, string name)
    {
        Dictionary <int, IResource> dicresource = GetDicResource(eType);
        int hashcode = name.GetHashCode();

        if (dicresource.ContainsKey(hashcode))
        {
            return(dicresource[hashcode]);
        }
        return(null);
    }
示例#6
0
        public SoundResource CreateSFXResource(string name, eResourceType resourceType, ePath ePath)
        {
            IResource res = null;

            res = FindResource(resourceType, name);
            if (res != null)
            {
                return((SoundResource)res);
            }

            return((SoundResource)CreateResource(resourceType, name, ePath));
        }
示例#7
0
        private IResource CreateResource(eResourceType eType, string name, string assetpath, Object objresource, bool isAssetBundle)
        {
            IResource resource = null;

            switch (eType)
            {
            //case E_ResourceType.Actor:
            case eResourceType.UI:
            case eResourceType.Prefab:
                resource = new PrefabResource(objresource, eType, isAssetBundle);
                break;

            //                 case E_ResourceType.UnitySprite:
            //                     resource = new SpriteResource(objresource);
            //                     break;
            case eResourceType.Script:
                resource = new ScriptResource(objresource, isAssetBundle);
                break;

            case eResourceType.SpriteAsset:
                SpritePackerAsset spritePackerAsset = (SpritePackerAsset)objresource;
                resource = new SpriteAssetResource(spritePackerAsset.AllSprites, isAssetBundle);
                break;

            case eResourceType.Scriptable:
                resource = new ScriptableResource(objresource, isAssetBundle);
                break;

            case eResourceType.Texture:
                resource = new TextureResouce(objresource, isAssetBundle);
                break;

            case eResourceType.Sound:
                resource = new SoundResource(objresource, isAssetBundle);
                break;
            }
            resource.InitLoad(name, assetpath);

            Dictionary <int, IResource> dicRes = GetDicResource(eType);

            if (dicRes.ContainsKey(resource.GetHashCode()))
            {
                //           LogManager.GetInstance().LogDebug("CreateResource name error" + name);
            }
            else
            {
                dicRes.Add(resource.GetHashCode(), resource);
            }

            return(resource);
        }
示例#8
0
 void INovaAlertService.Release(eResourceType resourceType, int resourceId)
 {
     try
     {
         if (CheckConnection() == false)
         {
             throw new ServiceException();
         }
         _realProxy.Release(resourceType, resourceId);
     }
     catch (Exception ex)
     {
         OnException(ex);
     }
 }
    public eResourceType m_eResourceType;          // 리소스 타입
    #endregion


    #region Interface Functions
    public void CopyTo(SHResourcesTableInfo pData)
    {
        if (null == pData)
        {
            return;
        }

        m_strName      = pData.m_strName;
        m_strFileName  = pData.m_strFileName;
        m_strExtension = pData.m_strExtension;
        m_strSize      = pData.m_strSize;
        //m_strLastWriteTime  = pData.m_strLastWriteTime;
        m_strHash       = pData.m_strHash;
        m_strPath       = pData.m_strPath;
        m_eResourceType = pData.m_eResourceType;
    }
示例#10
0
        public static Color GetActivityColour(eResourceType resourceType, int activityTypeId)
        {
            switch (resourceType)
            {
            case eResourceType.Driver:
                return(GetDriverActivityColour((eDriverActivityType)activityTypeId));

            case eResourceType.Vehicle:
                return(GetVehicleActivityColour((eVehicleActivityType)activityTypeId));

            case eResourceType.Trailer:
                return(GetTrailerActivityColour((eTrailerActivityType)activityTypeId));

            default:
                return(Color.Empty);
            }
        }
示例#11
0
    public static string GetResourceTypeToString(eResourceType eType)
    {
        switch (eType)
        {
        case eResourceType.Prefab:      return(eResourceType.Prefab.ToString());

        case eResourceType.Animation:   return(eResourceType.Animation.ToString());

        case eResourceType.Texture:     return(eResourceType.Texture.ToString());

        case eResourceType.Sound:       return(eResourceType.Sound.ToString());

        case eResourceType.Material:    return(eResourceType.Material.ToString());

        case eResourceType.Text:        return(eResourceType.Text.ToString());
        }
        return(string.Empty);
    }
示例#12
0
        public void UnLoadResource(eResourceType resourceType, bool isUnloadUnusedAssets)
        {
            for (int i = 0; i < (int)eResourceType.Max; i++)
            {
                if (resourceType == (eResourceType)i)
                {
                    foreach (IResource resource in m_dicResource[i].Values)
                    {
                        resource.Release();
                    }
                    m_dicResource[i].Clear();
                }
            }

            if (isUnloadUnusedAssets)
            {
                Resources.UnloadUnusedAssets();
            }
        }
        public string GetUrl(string relativeFilePath, eResourceType resType = eResourceType.Auto)
        {
            string resPath = BaseUrl; // HttpRuntime.AppDomainAppVirtualPath;
            
            if (resType == eResourceType.Auto) {
                // determine based on extensions
                switch (System.IO.Path.GetExtension(relativeFilePath).ToLower()) {
                    case ".js":
                        resType = eResourceType.Javascript;
                        break;
                    case ".css":
                        resType = eResourceType.CSS;
                        break;
                    case ".png":
                    case ".jpg":
                    case ".gif":
                        resType = eResourceType.Image;
                        break;

                    default:
                        resType = eResourceType.Other;
                        break;
                }
            }

            // we now should have the appropriate time, translate to folder
            switch (resType) {
                case eResourceType.Javascript:
                    resPath = resPath.TrimEnd('/') + "/js";
                    break;
                case eResourceType.CSS:
                    resPath = resPath.TrimEnd('/') + "/css";
                    break;
                case eResourceType.Image:
                    resPath = resPath.TrimEnd('/') + "/images";
                    break;
                //case eResourceType.Other: // if it's other leave it like it is
                //    break;
            }

            // finally, return full relative path
            return resPath.TrimEnd('/') + "/" + relativeFilePath.TrimStart('/');
        }
    // 인터페이스 : 타입에 해당하는 리소스 정보 리스트 얻기
    public List <SHResourcesTableInfo> GetResourceInfoByType(eResourceType eType)
    {
        if (false == IsLoadTable())
        {
            LoadJson(m_strFileName);
        }

        var pList = new List <SHResourcesTableInfo>();

        SHUtils.ForToDic(m_pData, (pKey, pValue) =>
        {
            if (eType == pValue.m_eResourceType)
            {
                pList.Add(pValue);
            }
        });

        return(pList);
    }
示例#15
0
    private IResource CreateResource(eResourceType eType, string path)
    {
        // 사운드는 넘어오는 name이 실제 파일 이름이 아니라 내부 이름이므로 변경 프로세스가 필요
        //             if (eType == E_ResourceType.Sound)
        //             {
        //                 SoundInfo si;
        //                 if (DataManager.Instance.GetScriptData<SoundData>(E_GameScriptData.Sound).GetSoundInfo(name, out si))
        //                 {
        //                     name = si.Filename;
        //                 }
        //             }

        bool   isAssetBundle = false;
        Object objresource   = Resources.Load(path);

        if (objresource == null)
        {
            return(null);
        }

        return(CreateResource(eType, path, path, objresource, isAssetBundle));
    }
示例#16
0
        protected void Page_Load(object sender, System.EventArgs e)
        {
            Orchestrator.WebUI.Security.Authorise.EnforceAuthorisation(eSystemPortion.GeneralUsage);

            m_resourceId   = Convert.ToInt32(Request.QueryString["resourceId"]);
            m_resourceType = (eResourceType)Convert.ToInt32(Request.QueryString["resourceTypeId"]);
            string date = Request.QueryString["fromDateTime"];

            m_startDate = new DateTime(Convert.ToInt32(date.Substring(4, 4)), Convert.ToInt32(date.Substring(2, 2)), Convert.ToInt32(date.Substring(0, 2)), Convert.ToInt32(date.Substring(8, 2)), Convert.ToInt32(date.Substring(10, 2)), 0);

            if (!IsPostBack)
            {
                switch (m_resourceType)
                {
                case eResourceType.Driver:
                    Facade.IDriver facDriver = new Facade.Resource();
                    lblResource.Text = facDriver.GetDriverForResourceId(m_resourceId).Individual.FullName;
                    break;

                case eResourceType.Vehicle:
                    Facade.IVehicle facVehicle = new Facade.Resource();
                    lblResource.Text = facVehicle.GetForVehicleId(m_resourceId).RegNo;
                    break;

                case eResourceType.Trailer:
                    Facade.ITrailer facTrailer = new Facade.Resource();
                    lblResource.Text = facTrailer.GetForTrailerId(m_resourceId).TrailerRef;
                    break;
                }

                Facade.IJob facJob = new Facade.Job();
                m_dsFutureJobs         = facJob.GetFutureJobs(m_resourceId, ((Entities.CustomPrincipal)Page.User).IdentityId);
                dgBasicJobs.DataSource = m_dsFutureJobs;
                dgBasicJobs.DataBind();
            }
        }
示例#17
0
        public Resource(string fName, eResourceType rType, bool embedded = false)
        {
            Fields       = new List <StructuredField>();
            ResourceName = fName.ToUpper().Trim();
            ResourceType = rType;
            IsEmbedded   = embedded;

            // If we are a code page resource, see if we also exist in .NET
            if (ResourceType == eResourceType.CodePage)
            {
                // Compare the last four digits of our code page to .NET's existing list.
                int ourCodePage = 0;
                if (ResourceName.Length >= 4)
                {
                    int.TryParse(ResourceName.Substring(ResourceName.Length - 4), out ourCodePage);
                }

                // If we have a match, we will use .NET's, since it's likely a custom file doesn't exist
                if (ourCodePage > 0)
                {
                    IsNETCodePage = true;
                }
            }
        }
示例#18
0
 private Dictionary <int, IResource> GetDicResource(eResourceType eType)
 {
     return(m_dicResource[(int)eType]);
 }
示例#19
0
        private IResource MakeSpriteResource(eResourceType eType, ePath ePath, string name)
        {
            string path = StringUtil.Format("{0}/{1}", m_pathManager.GetPath(ePath), name);

            Sprite[]          allresource       = null;
            Object            obj               = null;
            Object            autotile          = null;
            SpritePackerAsset spritePackerAsset = null;

            if (ePath == Resource.ePath.MapAutoTile)
            {
                obj = Resources.Load(path);
                string autotilepath = m_pathManager.GetPath(ePath) + "AutoTile";
                autotile = Resources.Load(autotilepath);
                if (obj is SpritePackerAsset)
                {
                    spritePackerAsset = (SpritePackerAsset)obj;
                    allresource       = spritePackerAsset.AllSprites;
                }
            }
            if (ePath == Resource.ePath.UISprite)
            {
                obj = Resources.Load(path);
            }
            else if (ePath == Resource.ePath.MapAsset || ePath == Resource.ePath.MapAutoAsset || ePath == Resource.ePath.MapActorAsset)
            {
                obj = Resources.Load(path);
                if (obj is SpritePackerAsset)
                {
                    spritePackerAsset = (SpritePackerAsset)obj;
                    allresource       = spritePackerAsset.AllSprites;
                }
            }
            else
            {
                allresource = Resources.LoadAll <Sprite>(path);
            }

            IResource resource = null;

            if (eType == eResourceType.SpriteAsset)
            {
                if (obj == null)
                {
                    Debug.LogError("TileSprite MakeSpriteResource name error" + name);
                    return(null);
                }

                resource = new SpritePackerResource(spritePackerAsset, spritePackerAsset.AllSprites, false);
            }
            else if (eType == eResourceType.Sprite)
            {
                if (obj == null)
                {
                    Debug.LogError("UISprite MakeSpriteResource name error" + name);
                    return(null);
                }

                resource = new SpriteResource(obj, false);
            }
            else
            {
                if (allresource == null)
                {
                    Debug.LogError("SpriteResource name error" + name);
                    return(null);
                }

                resource = new SpritePackerResource(spritePackerAsset, allresource, false);
            }
            string[] split        = path.Split('/');
            string   resourcename = split[split.Length - 1];

            resource.InitLoad(resourcename, path);
            Dictionary <int, IResource> dicRes = GetDicResource(eType);

            if (dicRes.ContainsKey(resource.GetHashCode()))
            {
                Debug.LogError("MakeSpriteResource name error" + name);
            }
            else
            {
                dicRes.Add(resource.GetHashCode(), resource);
            }
            return(resource);
        }
示例#20
0
 public Requirements(eResourceType resourceType, int numberOfUnits)
     : base(resourceType, numberOfUnits)
 {
 }
示例#21
0
 public GenericEntity(eResourceType type, int numberOfUnits)
 {
     this._type          = type;
     this._numberOfUnits = numberOfUnits;
 }
示例#22
0
 public PrefabResource(Object obj, eResourceType resourceType, bool isAssetBundle)
     : base(obj, isAssetBundle)
 {
     m_resourceType = resourceType;
 }
示例#23
0
 public Resource(eResourceType resourceType, int numberOfUnits)
     : base(resourceType, numberOfUnits)
 {
 }