Show / Hide Table of Contents

# Class GeneratedClassMetadata

##### Inheritance

object
GeneratedClassMetadata

###### Namespace: LiteEntitySystem.Internal

###### Assembly: LiteEntitySystem.dll

##### Syntax

    public class GeneratedClassMetadata

### Constructors

#### GeneratedClassMetadata()

##### Declaration

    public GeneratedClassMetadata()

#### GeneratedClassMetadata(GeneratedClassMetadata)

##### Declaration

    public GeneratedClassMetadata(GeneratedClassMetadata baseClassMetadata)

##### Parameters

Type | Name | Description
--- | --- | ---
GeneratedClassMetadata | baseClassMetadata |

### Fields

#### BaseFieldIdCounter

##### Declaration

    public readonly ushort BaseFieldIdCounter

##### Field Value

Type | Description
--- | ---
ushort |

#### BaseSyncablesCount

##### Declaration

    public readonly ushort BaseSyncablesCount

##### Field Value

Type | Description
--- | ---
ushort |

#### FieldIdCounter

##### Declaration

    public ushort FieldIdCounter

##### Field Value

Type | Description
--- | ---
ushort |

#### Fields

##### Declaration

    public EntityFieldInfo[] Fields

##### Field Value

Type | Description
--- | ---
EntityFieldInfo[] |

#### FieldsCount

##### Declaration

    public int FieldsCount

##### Field Value

Type | Description
--- | ---
int |

#### FieldsFlagsSize

##### Declaration

    public int FieldsFlagsSize

##### Field Value

Type | Description
--- | ---
int |

#### FixedFieldsSize

##### Declaration

    public int FixedFieldsSize

##### Field Value

Type | Description
--- | ---
int |

#### HasRemoteRollbackFields

##### Declaration

    public bool HasRemoteRollbackFields

##### Field Value

Type | Description
--- | ---
bool |

#### InterpolatedCount

##### Declaration

    public int InterpolatedCount

##### Field Value

Type | Description
--- | ---
int |

#### InterpolatedFieldsSize

##### Declaration

    public int InterpolatedFieldsSize

##### Field Value

Type | Description
--- | ---
int |

#### IsUpdateable

##### Declaration

    public bool IsUpdateable

##### Field Value

Type | Description
--- | ---
bool |

#### LagCompensatedCount

##### Declaration

    public int LagCompensatedCount

##### Field Value

Type | Description
--- | ---
int |

#### LagCompensatedFields

##### Declaration

    public EntityFieldInfo[] LagCompensatedFields

##### Field Value

Type | Description
--- | ---
EntityFieldInfo[] |

#### LagCompensatedSize

##### Declaration

    public int LagCompensatedSize

##### Field Value

Type | Description
--- | ---
int |

#### PredictedSize

##### Declaration

    public int PredictedSize

##### Field Value

Type | Description
--- | ---
int |

#### RpcData

##### Declaration

    public RpcData[] RpcData

##### Field Value

Type | Description
--- | ---
RpcData[] |

#### Syncables

##### Declaration

    public SyncableAdditionalData[] Syncables

##### Field Value

Type | Description
--- | ---
SyncableAdditionalData[] |

#### SyncablesCount

##### Declaration

    public int SyncablesCount

##### Field Value

Type | Description
--- | ---
int |

#### UpdateOnClient

##### Declaration

    public bool UpdateOnClient

##### Field Value

Type | Description
--- | ---
bool |

### Methods

#### AddField<T>(string, SyncFlags, bool)

##### Declaration

    public void AddField<T>(string name, SyncFlags flags, bool hasChangeNotification) where T : unmanaged

##### Parameters

Type | Name | Description
--- | --- | ---
string | name |
SyncFlags | flags |
bool | hasChangeNotification |

##### Type Parameters

Name | Description
--- | ---
T |

#### AddRpc<TEntity>(ref RemoteCall, ExecuteFlags, Action<TEntity>, MethodCallDelegate)

##### Declaration

    public void AddRpc<TEntity>(ref RemoteCall rc, ExecuteFlags flags, Action<TEntity> directMethod, MethodCallDelegate clientMethod) where TEntity : InternalEntity

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCall | rc |
ExecuteFlags | flags |
Action<TEntity> | directMethod |
MethodCallDelegate | clientMethod |

##### Type Parameters

Name | Description
--- | ---
TEntity |

#### AddRpc<TEntity, T>(ref RemoteCall<T>, ExecuteFlags, Action<TEntity, T>, MethodCallDelegate)

##### Declaration

    public void AddRpc<TEntity, T>(ref RemoteCall<T> rc, ExecuteFlags flags, Action<TEntity, T> directMethod, MethodCallDelegate clientMethod) where TEntity : InternalEntity where T : unmanaged

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCall<T> | rc |
ExecuteFlags | flags |
Action<TEntity, T> | directMethod |
MethodCallDelegate | clientMethod |

##### Type Parameters

Name | Description
--- | ---
TEntity |
T |

#### AddRpcSpan<TEntity, T>(ref RemoteCallSpan<T>, ExecuteFlags, SpanAction<TEntity, T>, MethodCallDelegate)

##### Declaration

    public void AddRpcSpan<TEntity, T>(ref RemoteCallSpan<T> rc, ExecuteFlags flags, SpanAction<TEntity, T> directMethod, MethodCallDelegate clientMethod) where TEntity : InternalEntity where T : unmanaged

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCallSpan<T> | rc |
ExecuteFlags | flags |
SpanAction<TEntity, T> | directMethod |
MethodCallDelegate | clientMethod |

##### Type Parameters

Name | Description
--- | ---
TEntity |
T |

#### AddRpcSyncable(ref RemoteCall, MethodCallDelegate)

##### Declaration

    public void AddRpcSyncable(ref RemoteCall rc, MethodCallDelegate clientMethod)

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCall | rc |
MethodCallDelegate | clientMethod |

#### AddRpcSyncable<T>(ref RemoteCall<T>, MethodCallDelegate)

##### Declaration

    public void AddRpcSyncable<T>(ref RemoteCall<T> rc, MethodCallDelegate clientMethod) where T : unmanaged

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCall<T> | rc |
MethodCallDelegate | clientMethod |

##### Type Parameters

Name | Description
--- | ---
T |

#### AddRpcSyncable<T>(ref RemoteCallSpan<T>, MethodCallDelegate)

##### Declaration

    public void AddRpcSyncable<T>(ref RemoteCallSpan<T> rc, MethodCallDelegate clientMethod) where T : unmanaged

##### Parameters

Type | Name | Description
--- | --- | ---
RemoteCallSpan<T> | rc |
MethodCallDelegate | clientMethod |

##### Type Parameters

Name | Description
--- | ---
T |

#### AddSyncableField(GeneratedClassMetadata, SyncFlags)

##### Declaration

    public void AddSyncableField(GeneratedClassMetadata syncableMetadata, SyncFlags fieldSyncFlags)

##### Parameters

Type | Name | Description
--- | --- | ---
GeneratedClassMetadata | syncableMetadata |
SyncFlags | fieldSyncFlags |

#### Init()

##### Declaration

    public void Init()