Class ViewManager
Manages Views on client. Read more details about View System in ViewSystem.md.
Inheritance
System.Object
ViewManager
Assembly: Eco.Shared.dll
Syntax
public static class ViewManager : Object
Fields
DataBlobs
Declaration
public static Dictionary<int, byte[]> DataBlobs
Field Value
Type |
Description |
System.Collections.Generic.Dictionary<System.Int32, System.Byte[]> |
|
DataCache
Declaration
public static ViewManager.IDataCache DataCache
Field Value
IdToViewClassInfo
Declaration
public static Dictionary<int, ViewClassInfo> IdToViewClassInfo
Field Value
Type |
Description |
System.Collections.Generic.Dictionary<System.Int32, ViewClassInfo> |
|
NameToViewClassInfo
Declaration
public static Dictionary<string, ViewClassInfo> NameToViewClassInfo
Field Value
Type |
Description |
System.Collections.Generic.Dictionary<System.String, ViewClassInfo> |
|
Properties
Client
Declaration
public static INetObject Client { get; }
Property Value
Methods
AddError(String)
Declaration
public static void AddError(string error)
Parameters
Type |
Name |
Description |
System.String |
error |
|
BindController(INetObject)
Declaration
public static void BindController(INetObject controller)
Parameters
Clear()
Declaration
public static void Clear()
CollectInvalidSubscriptions()
Collects all invalid subscriptions. Invalid subscription is a IPropertySubscription which has null
or destroyed target for an instance method (it is always null
for static methods).
Declaration
public static IEnumerable<IPropertySubscription> CollectInvalidSubscriptions()
Returns
CollectViewStats()
Collect stats about existing views in ViewManager. May be used for statistic and leaks detection.
Declaration
public static IEnumerable<IGrouping<string, View.ViewData>> CollectViewStats()
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<System.Linq.IGrouping<System.String, View.ViewData>> |
|
DerivedTypes(Int32)
Declaration
public static IEnumerable<ViewClassInfo> DerivedTypes(int typeID)
Parameters
Type |
Name |
Description |
System.Int32 |
typeID |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<ViewClassInfo> |
|
DerivedTypesRecursive(Int32, Boolean)
Returns all the derived types for the given type id.
Declaration
public static IEnumerable<ViewClassInfo> DerivedTypesRecursive(int typeID, bool includeObject)
Parameters
Type |
Name |
Description |
System.Int32 |
typeID |
|
System.Boolean |
includeObject |
|
Returns
Type |
Description |
System.Collections.Generic.IEnumerable<ViewClassInfo> |
|
GetAndClearErrors()
Declaration
public static string GetAndClearErrors()
Returns
Type |
Description |
System.String |
|
GetProperties(Int32)
Declaration
public static Dictionary<int, PropertyInfo> GetProperties(int typeID)
Parameters
Type |
Name |
Description |
System.Int32 |
typeID |
|
Returns
Type |
Description |
System.Collections.Generic.Dictionary<System.Int32, System.Reflection.PropertyInfo> |
|
GetTypeFromID(Int32)
Declaration
public static Type GetTypeFromID(int id)
Parameters
Type |
Name |
Description |
System.Int32 |
id |
|
Returns
Type |
Description |
System.Type |
|
GetView(Int32)
Returns the view with the given ID if we have it, otherwise null.
Declaration
public static View GetView(int viewID)
Parameters
Type |
Name |
Description |
System.Int32 |
viewID |
|
Returns
GetView<T>(Int32)
Declaration
public static T GetView<T>(int viewID)
where T : View
Parameters
Type |
Name |
Description |
System.Int32 |
viewID |
|
Returns
Type Parameters
GetViewClassInfo(Int32)
Declaration
public static ViewClassInfo GetViewClassInfo(int id)
Parameters
Type |
Name |
Description |
System.Int32 |
id |
|
Returns
GetViewClassInfo(String)
Declaration
public static ViewClassInfo GetViewClassInfo(string name)
Parameters
Type |
Name |
Description |
System.String |
name |
|
Returns
Initialize(IEnumerable<Assembly>, ViewManager.IDataCache)
Declaration
public static void Initialize(IEnumerable<Assembly> assemblies, ViewManager.IDataCache cache = null)
Parameters
Type |
Name |
Description |
System.Collections.Generic.IEnumerable<System.Reflection.Assembly> |
assemblies |
|
ViewManager.IDataCache |
cache |
|
LogError(String)
Declaration
public static void LogError(string s)
Parameters
Type |
Name |
Description |
System.String |
s |
|
NotifyAllViews()
Notifies all views about all subscribed properties changes. NOT INTENDED FOR PRODUCTION USAGE. ONLY FOR DEBUGGING!
Declaration
public static void NotifyAllViews()
PackageView(Object, in BsonSerializationContext)
Declaration
public static BSONObject PackageView(object view, in BsonSerializationContext context)
Parameters
Returns
ReceiveViewData(BSONObject)
Declaration
public static void ReceiveViewData(BSONObject data)
Parameters
ReceiveViewUpdate(BSONArray)
Declaration
public static void ReceiveViewUpdate(BSONArray updates)
Parameters
ReleaseUnusedViews(TimeLimit)
Declaration
public static void ReleaseUnusedViews(TimeLimit timeLimit)
Parameters
SampleViewTraces(String, Int32, Int32)
Declaration
public static InfoBuilder SampleViewTraces(string viewType, int n, int skipN = 0)
Parameters
Type |
Name |
Description |
System.String |
viewType |
|
System.Int32 |
n |
|
System.Int32 |
skipN |
|
Returns
TraceViewRefs(Int32)
Traces existing views for references to view with specified viewId
. It helps to debug why some view was added to the client and why it wasn't GC.
Declaration
public static string TraceViewRefs(int viewId)
Parameters
Type |
Name |
Description |
System.Int32 |
viewId |
|
Returns
Type |
Description |
System.String |
|
TryGetTypeFromID(Int32, out Type)
Declaration
public static bool TryGetTypeFromID(int id, out Type type)
Parameters
Type |
Name |
Description |
System.Int32 |
id |
|
System.Type |
type |
|
Returns
Type |
Description |
System.Boolean |
|
TryGetView(Int32, out View)
Try get View by id. It may not return view if it wasn't received or already released (has no active ref).
Declaration
public static bool TryGetView(int viewId, out View view)
Parameters
Type |
Name |
Description |
System.Int32 |
viewId |
|
View |
view |
|
Returns
Type |
Description |
System.Boolean |
|
UnpackageBlobs(BSONArray)
Declaration
[ClientAPI]
public static void UnpackageBlobs(BSONArray data)
Parameters
UnpackageView(BSONValue)
Declaration
[ClientAPI]
public static View UnpackageView(this BSONValue bson)
Parameters
Returns
UnpackageView<T>(BSONValue)
Declaration
[ClientAPI]
public static T UnpackageView<T>(this BSONValue bson)
where T : View
Parameters
Returns
Type Parameters
UnpackageViews(BSONArray)
Declaration
[ClientAPI]
public static void UnpackageViews(BSONArray data)
Parameters
Events
ViewDataReceivedEvent
Declaration
public static event Action ViewDataReceivedEvent
Event Type
Type |
Description |
System.Action |
|