    

 ## On this page

  

 

 # OpenTD.LogicObject Class Reference

 Last update: 16.07.2025 

Base class for TD logic objects. [More...](#details)

Inheritance diagram for OpenTD.LogicObject:

 ![](/sites/default/files/migrate-content/opentd_net4_reference_2025_r2_1/class_open_t_d_1_1_logic_object.png)



## <a id="pub-types" name="pub-types"></a>Public Types

enum [LogicType](#a284f97e5fd43816d9037affd5bb18c9e) {   
 [TRANSLATECODE](#a284f97e5fd43816d9037affd5bb18c9ea44fb3536c8145c2b6cd0001effefb867) = -1 , [ARRAY\_INTERP](#a284f97e5fd43816d9037affd5bb18c9eaa79d4f6b7a9a8e30ee94303d727ccd96), [BIVAR\_INTERP](#a284f97e5fd43816d9037affd5bb18c9ea7b2584706a394a5d853e535bb370c79b), [PID](#a284f97e5fd43816d9037affd5bb18c9ea2d73559f294204a42bda2e926d094612),   
 [USERCODE](#a284f97e5fd43816d9037affd5bb18c9ead113e5820e33ff51f925a3f5dbf7aca1), [DIFFEQ](#a284f97e5fd43816d9037affd5bb18c9ea709ba73fdddc2857de411f6eae348d7b), [DIFFEQANGULAR](#a284f97e5fd43816d9037affd5bb18c9eadfc7f799d8d832c23b93b5f934e68d94), [DIFFEQRPM](#a284f97e5fd43816d9037affd5bb18c9ea1a5e9bbaf44f203db4f4b64a7dd259fa),   
 [COMPAREDL](#a284f97e5fd43816d9037affd5bb18c9eacb0bcdd6dce9496cabe901f8fb45dc34), [USER\_ARRAY](#a284f97e5fd43816d9037affd5bb18c9ea719921666c82ae312d9082594eebe4ae), [SUBCOMPLQ](#a284f97e5fd43816d9037affd5bb18c9eaa25de14206e2b8316327da0f22c13f01), [FORTRANARRAY](#a284f97e5fd43816d9037affd5bb18c9ea7d33999b8d21874b0ab1f73ff9f58f49),   
 [MAXLOGICTYPE](#a284f97e5fd43816d9037affd5bb18c9ea83f272b71616c425115ee76a4775b04e)  
 } TD Logic Object types. [More...](#a284f97e5fd43816d9037affd5bb18c9e)  
 ## <a id="pub-methods" name="pub-methods"></a>Public Member Functions

 [LogicObject](#ae55e238ed77d918d20fb2886bb7999b3) () override void [Update](#a1f424c1741c072e95b6846c018a1fb4b) () Updates the TD entity with the latest client data.   
 override void [UpdateFromTD](#ac93d4821f111c73c7eaf95fc7c27d73b) () Updates the client-side instance with the latest data from the TD entity.   
 override void [CreateIn](#ad3c6f84b8d14bb15435e1cba84af8e88) ([ThermalDesktop](class_open_t_d_1_1_thermal_desktop.xhtml) td) Creates the TD entity in the specified TD instance.   
 override string [ToString](#a5c340328029b903ad8480a6a7dda1f85) () void [SetFrom](class_open_t_d_1_1_open_t_d_object.xhtml#aa2e0aa2793e95a56891ef59fb4843ca2) ([OpenTDObject](class_open_t_d_1_1_open_t_d_object.xhtml) x) void [UpdateIn](class_open_t_d_1_1_open_t_d_object.xhtml#a1e5228ce309c9a85ec09e8119318024d) ([ThermalDesktop](class_open_t_d_1_1_thermal_desktop.xhtml) td) Updates the TD entity corresponding to this object in the specified TD instance, if possible.   
 ## <a id="pro-attribs" name="pro-attribs"></a>Protected Attributes

[ITdCommander](interface_open_t_d_1_1_internal_1_1_communication_1_1_i_td_commander.xhtml) [TdProxy](class_open_t_d_1_1_open_t_d_object.xhtml#a0da16592e6b635ca0def27b355d669b3) ## <a id="properties" name="properties"></a>Properties

string [Handle](#ae9743ddd8cf8500cb8c1edefd96f0ab8)` [get, set]` string [Comment](#a5be337c63042b60e8fa1e9467d028dda)` [get, set]` [SubmodelNameData](class_open_t_d_1_1_submodel_name_data.xhtml) [Submodel](#aea12dd68d8f3537ab7c59aa30fe4933a)` [get, set]` [ExpressionData](class_open_t_d_1_1_expression_data.xhtml) [EnabledExp](#a892165742428b0fb10d53b52df1c40e6)` [get, set]` string [GroupName](#a6de31d1fc41caa3729fcebc660268283)` [get, set]` [LogicType](#a284f97e5fd43816d9037affd5bb18c9e) [Type](#a44e8f37e9600deec3f61e570c591fc7d)` [get]` <a id="details" name="details"></a>## Detailed Description

Base class for TD logic objects.



## Member Enumeration Documentation

<a id="a284f97e5fd43816d9037affd5bb18c9e" name="a284f97e5fd43816d9037affd5bb18c9e"></a>## [◆ ](#a284f97e5fd43816d9037affd5bb18c9e)LogicType

 enum [OpenTD.LogicObject.LogicType](#a284f97e5fd43816d9037affd5bb18c9e)

TD Logic Object types.

Enumerator<a id="a284f97e5fd43816d9037affd5bb18c9ea44fb3536c8145c2b6cd0001effefb867" name="a284f97e5fd43816d9037affd5bb18c9ea44fb3536c8145c2b6cd0001effefb867"></a>TRANSLATECODE <a id="a284f97e5fd43816d9037affd5bb18c9eaa79d4f6b7a9a8e30ee94303d727ccd96" name="a284f97e5fd43816d9037affd5bb18c9eaa79d4f6b7a9a8e30ee94303d727ccd96"></a>ARRAY\_INTERP <a id="a284f97e5fd43816d9037affd5bb18c9ea7b2584706a394a5d853e535bb370c79b" name="a284f97e5fd43816d9037affd5bb18c9ea7b2584706a394a5d853e535bb370c79b"></a>BIVAR\_INTERP <a id="a284f97e5fd43816d9037affd5bb18c9ea2d73559f294204a42bda2e926d094612" name="a284f97e5fd43816d9037affd5bb18c9ea2d73559f294204a42bda2e926d094612"></a>PID <a id="a284f97e5fd43816d9037affd5bb18c9ead113e5820e33ff51f925a3f5dbf7aca1" name="a284f97e5fd43816d9037affd5bb18c9ead113e5820e33ff51f925a3f5dbf7aca1"></a>USERCODE <a id="a284f97e5fd43816d9037affd5bb18c9ea709ba73fdddc2857de411f6eae348d7b" name="a284f97e5fd43816d9037affd5bb18c9ea709ba73fdddc2857de411f6eae348d7b"></a>DIFFEQ <a id="a284f97e5fd43816d9037affd5bb18c9eadfc7f799d8d832c23b93b5f934e68d94" name="a284f97e5fd43816d9037affd5bb18c9eadfc7f799d8d832c23b93b5f934e68d94"></a>DIFFEQANGULAR <a id="a284f97e5fd43816d9037affd5bb18c9ea1a5e9bbaf44f203db4f4b64a7dd259fa" name="a284f97e5fd43816d9037affd5bb18c9ea1a5e9bbaf44f203db4f4b64a7dd259fa"></a>DIFFEQRPM <a id="a284f97e5fd43816d9037affd5bb18c9eacb0bcdd6dce9496cabe901f8fb45dc34" name="a284f97e5fd43816d9037affd5bb18c9eacb0bcdd6dce9496cabe901f8fb45dc34"></a>COMPAREDL <a id="a284f97e5fd43816d9037affd5bb18c9ea719921666c82ae312d9082594eebe4ae" name="a284f97e5fd43816d9037affd5bb18c9ea719921666c82ae312d9082594eebe4ae"></a>USER\_ARRAY <a id="a284f97e5fd43816d9037affd5bb18c9eaa25de14206e2b8316327da0f22c13f01" name="a284f97e5fd43816d9037affd5bb18c9eaa25de14206e2b8316327da0f22c13f01"></a>SUBCOMPLQ <a id="a284f97e5fd43816d9037affd5bb18c9ea7d33999b8d21874b0ab1f73ff9f58f49" name="a284f97e5fd43816d9037affd5bb18c9ea7d33999b8d21874b0ab1f73ff9f58f49"></a>FORTRANARRAY <a id="a284f97e5fd43816d9037affd5bb18c9ea83f272b71616c425115ee76a4775b04e" name="a284f97e5fd43816d9037affd5bb18c9ea83f272b71616c425115ee76a4775b04e"></a>MAXLOGICTYPE 



## Constructor &amp; Destructor Documentation

<a id="ae55e238ed77d918d20fb2886bb7999b3" name="ae55e238ed77d918d20fb2886bb7999b3"></a>## [◆ ](#ae55e238ed77d918d20fb2886bb7999b3)LogicObject()

 OpenTD.LogicObject.LogicObject  ( )   inline 





## Member Function Documentation

<a id="ad3c6f84b8d14bb15435e1cba84af8e88" name="ad3c6f84b8d14bb15435e1cba84af8e88"></a>## [◆ ](#ad3c6f84b8d14bb15435e1cba84af8e88)CreateIn()

 override void OpenTD.LogicObject.CreateIn  ( [ThermalDesktop](class_open_t_d_1_1_thermal_desktop.xhtml) *td*)   inline 

Creates the TD entity in the specified TD instance.

Implements [OpenTD.IReassignable](interface_open_t_d_1_1_i_reassignable.xhtml#a94cbc52d002a10e44f5dc2daaf9c87db).





<a id="aa2e0aa2793e95a56891ef59fb4843ca2" name="aa2e0aa2793e95a56891ef59fb4843ca2"></a>## [◆ ](#aa2e0aa2793e95a56891ef59fb4843ca2)SetFrom()

 void OpenTD.OpenTDObject.SetFrom  ( [OpenTDObject](class_open_t_d_1_1_open_t_d_object.xhtml) *x*)   inlineinherited 





<a id="a5c340328029b903ad8480a6a7dda1f85" name="a5c340328029b903ad8480a6a7dda1f85"></a>## [◆ ](#a5c340328029b903ad8480a6a7dda1f85)ToString()

 override string OpenTD.LogicObject.ToString  ( )   inline 





<a id="a1f424c1741c072e95b6846c018a1fb4b" name="a1f424c1741c072e95b6846c018a1fb4b"></a>## [◆ ](#a1f424c1741c072e95b6846c018a1fb4b)Update()

 override void OpenTD.LogicObject.Update  ( )   inline 

Updates the TD entity with the latest client data.

Implements [OpenTD.IUpdatable](interface_open_t_d_1_1_i_updatable.xhtml#a162ef7c717f51047a1d45c7df4282470).





<a id="ac93d4821f111c73c7eaf95fc7c27d73b" name="ac93d4821f111c73c7eaf95fc7c27d73b"></a>## [◆ ](#ac93d4821f111c73c7eaf95fc7c27d73b)UpdateFromTD()

 override void OpenTD.LogicObject.UpdateFromTD  ( )   inline 

Updates the client-side instance with the latest data from the TD entity.

Implements [OpenTD.IUpdatable](interface_open_t_d_1_1_i_updatable.xhtml#a47f3096415cfb5694fd822df8a1eceb0).





<a id="a1e5228ce309c9a85ec09e8119318024d" name="a1e5228ce309c9a85ec09e8119318024d"></a>## [◆ ](#a1e5228ce309c9a85ec09e8119318024d)UpdateIn()

 void OpenTD.OpenTDObject.UpdateIn  ( [ThermalDesktop](class_open_t_d_1_1_thermal_desktop.xhtml) *td*)   inlineinherited 

Updates the TD entity corresponding to this object in the specified TD instance, if possible.

Implements [OpenTD.IReassignable](interface_open_t_d_1_1_i_reassignable.xhtml#a90dffde7dd442e9d940f9e5c5fabde14).





## Member Data Documentation

<a id="a0da16592e6b635ca0def27b355d669b3" name="a0da16592e6b635ca0def27b355d669b3"></a>## [◆ ](#a0da16592e6b635ca0def27b355d669b3)TdProxy

 [ITdCommander](interface_open_t_d_1_1_internal_1_1_communication_1_1_i_td_commander.xhtml) OpenTD.OpenTDObject.TdProxy  protectedinherited 





## Property Documentation

<a id="a5be337c63042b60e8fa1e9467d028dda" name="a5be337c63042b60e8fa1e9467d028dda"></a>## [◆ ](#a5be337c63042b60e8fa1e9467d028dda)Comment

 string OpenTD.LogicObject.Comment  getset 





<a id="a892165742428b0fb10d53b52df1c40e6" name="a892165742428b0fb10d53b52df1c40e6"></a>## [◆ ](#a892165742428b0fb10d53b52df1c40e6)EnabledExp

 [ExpressionData](class_open_t_d_1_1_expression_data.xhtml) OpenTD.LogicObject.EnabledExp  getset 





<a id="a6de31d1fc41caa3729fcebc660268283" name="a6de31d1fc41caa3729fcebc660268283"></a>## [◆ ](#a6de31d1fc41caa3729fcebc660268283)GroupName

 string OpenTD.LogicObject.GroupName  getset 





<a id="ae9743ddd8cf8500cb8c1edefd96f0ab8" name="ae9743ddd8cf8500cb8c1edefd96f0ab8"></a>## [◆ ](#ae9743ddd8cf8500cb8c1edefd96f0ab8)Handle

 string OpenTD.LogicObject.Handle  getset 





<a id="aea12dd68d8f3537ab7c59aa30fe4933a" name="aea12dd68d8f3537ab7c59aa30fe4933a"></a>## [◆ ](#aea12dd68d8f3537ab7c59aa30fe4933a)Submodel

 [SubmodelNameData](class_open_t_d_1_1_submodel_name_data.xhtml) OpenTD.LogicObject.Submodel  getset 





<a id="a44e8f37e9600deec3f61e570c591fc7d" name="a44e8f37e9600deec3f61e570c591fc7d"></a>## [◆ ](#a44e8f37e9600deec3f61e570c591fc7d)Type

 [LogicType](#a284f97e5fd43816d9037affd5bb18c9e) OpenTD.LogicObject.Type  get 





---

The documentation for this class was generated from the following file:- C:/Users/mgarrett/source/repos/BuildsTdSuite/builds/TDDEV\_ALPHA/buildXX/OpenTD/**LogicObject.cs**