Skip to content
This repository was archived by the owner on Jul 12, 2022. It is now read-only.

StaticDataManager

syadeu edited this page Apr 15, 2021 · 6 revisions

Namespace: Syadeu

public abstract class StaticDataManager<T> : IStaticDataManager where T : class, IStaticDataManager

MonoBehaviour 를 참조하지 않은 데이터 객체 싱글톤 abstract 입니다.

Inheritance: System.Object -> StaticDataManager<T>
Implements: IStaticDataManager

Overview

Remarks

Description

Examples

아래는 간단한 데이터 매니저 객체를 생성하는 방법에 대해 설명합니다.

using Syadeu;

public sealed class TestDataManager : StaticDataManager<TestDataManager>
{
    // 이 데이터 매니저는 싱글톤 객체가 될 것이므로, 생성자를 통한 초기화 방식이 아닌,
    // OnInitialize() 메소드에서 초기화가 이루어져야됩니다.
    public override void OnInitialize()
    {
        // 이 객체는 MonoBehaviour 를 참조하지 않으므로, Coroutine을 사용 할 수 없습니다.
        // 그래서 CoreSystem 에서 관리하는 유니티 루틴에 iterator를 등록합니다.
        StartUnityUpdate(Update());
        
        // 비동기 루틴도 지원합니다.
        StartBackgroundUpdate(Update());
    }
    
    // 인스턴스가 생성되고, Instance에 인스턴스가 배정된 직후 실행하는 메소드입니다.
    public override void OnStart()
    {
        UnityEngine.Debug.Log("I\'m Started!'");
    }
    
    public IEnumerator Update()
    {
        /*
        	... Some Codes ...
        */
    }
}

Public Static Properties

Name Description
Initialized 이 매니저가 생성되고, 초기화되었는지 반환합니다.
Instance 싱글톤입니다.
MainThread 유니티 메인 스레드를 반환합니다.
BackgroundThread 백그라운드 스레드를 반환합니다.

Properties

Name Description
Flag 현재 시스템의 종류입니다.
Disposed

Protected Static Methods

Name Description
IsMainthread 이 메소드가 실행된 스레드가 유니티 메인스레드인지 반환합니다.
ThreadAwaiter 해당 시간만큼 스레드를 sleep 합니다.

Public Methods

Name Description
OnInitialize 초기화 될 때 실행될 함수입니다.
OnStart 초기화가 다 끝나고 실행될 함수입니다.
Initialize 더미 초기화 함수입니다.
StartUnityUpdate 새로운 유니티 업데이트 루틴을 등록합니다.
StartBackgroundUpdate 새로운 백그라운드 업데이트 루틴을 등록합니다.
StopUnityUpdate 커스텀 관리되던 해당 유니티 업데이트 루틴을 제거합니다.
StopBackgroundUpdate 커스텀 관리되던 해당 백그라운드 업데이트 루틴을 제거합니다.
Dispose
- Interfaces
- Enums
- Attributes
- Abstract Classes
- Classes
- Structs
- Exceptions

- Syadeu.Presentation
- Syadeu.Collections
- Syadeu.Collections.Converters
- Syadeu.Collections.Proxy
- Syadeu.Presentation.Proxy
- Syadeu.Presentation.Internal
- Syadeu.Presentation.Entities
- Syadeu.Presentation.Attributes
- Syadeu.Presentation.Components
- Syadeu.Presentation.Actions
- Syadeu.Presentation.Render
  • CameraData
  • CameraFrustum
  • IntersectionType
  • RenderSystem
  • WorldCanvasSystem
- Syadeu.Presentation.Data
  • DataContainerSystem
  • DataObjectBase
  • EntityAnimationClipEventData
- Syadeu.Presentation.Events

Clone this wiki locally