| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <meta name="generator" content="Doxygen 1.8.3.1"/>
- <title>TorqueScript Reference: SimObject Class Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="dynsections.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- <link href="t2d-stylesheet-extra.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td style="padding-left: 0.5em;">
- <div id="projectname">TorqueScript Reference
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.3.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="pages.html"><span>Related Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Class List</span></a></li>
- <li><a href="classes.html"><span>Class Index</span></a></li>
- <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
- <li><a href="functions.html"><span>Class Members</span></a></li>
- </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="classSimObject-members.html">List of all members</a> </div>
- <div class="headertitle">
- <div class="title">SimObject Class Reference</div> </div>
- </div><!--header-->
- <div class="contents">
- <p>Inherited by <a class="el" href="classActionMap.html">ActionMap</a>, <a class="el" href="classAssetBase.html">AssetBase</a>, <a class="el" href="classAssetManager.html">AssetManager</a>, <a class="el" href="classAssetQuery.html">AssetQuery</a>, <a class="el" href="classAssetTagsManifest.html">AssetTagsManifest</a>, <a class="el" href="classBehaviorInstance.html">BehaviorInstance</a>, <a class="el" href="classBehaviorTemplate.html">BehaviorTemplate</a>, <a class="el" href="classConsoleLogger.html">ConsoleLogger</a>, <a class="el" href="classEventManager.html">EventManager</a>, <a class="el" href="classFileDialog.html">FileDialog</a>, <a class="el" href="classFileObject.html">FileObject</a>, <a class="el" href="classMessage.html">Message</a>, <a class="el" href="classModuleManager.html">ModuleManager</a>, <a class="el" href="classNetObject.html">NetObject</a>, <a class="el" href="classParticleAssetEmitter.html">ParticleAssetEmitter</a>, <a class="el" href="classPickingSceneController.html">PickingSceneController</a>, <a class="el" href="classPNGImage.html">PNGImage</a>, <a class="el" href="classPopupMenu.html">PopupMenu</a>, <a class="el" href="classRemoteDebuggerBase.html">RemoteDebuggerBase</a>, <a class="el" href="classRenderProxy.html">RenderProxy</a>, <a class="el" href="classSceneObjectSet.html">SceneObjectSet</a>, <a class="el" href="classSimComponent.html">SimComponent</a>, <a class="el" href="classSimSet.html">SimSet</a>, <a class="el" href="classSimXMLDocument.html">SimXMLDocument</a>, <a class="el" href="classStreamObject.html">StreamObject</a>, <a class="el" href="classTaml.html">Taml</a>, <a class="el" href="classTCPObject.html">TCPObject</a>, <a class="el" href="classUndoManager.html">UndoManager</a>, and <a class="el" href="classZipObject.html">ZipObject</a>.</p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:a22437f451ceb1429fa2a3be23d523954"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a22437f451ceb1429fa2a3be23d523954">clone</a> ([copyDynamicFields=false]?)</td></tr>
- <tr class="separator:a22437f451ceb1429fa2a3be23d523954"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7a4721d0a51e952c211e9b0fea4d8090"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a7a4721d0a51e952c211e9b0fea4d8090">delete</a> ()</td></tr>
- <tr class="separator:a7a4721d0a51e952c211e9b0fea4d8090"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Identity</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Reference an object </p>
- </div></td></tr>
- <tr class="memitem:a929e1325a515b279faca90a65028782e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a929e1325a515b279faca90a65028782e">getId</a> ()</td></tr>
- <tr class="separator:a929e1325a515b279faca90a65028782e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a4f673cd959711ae09927e7c44dae5fdb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName</a> (newName)</td></tr>
- <tr class="separator:a4f673cd959711ae09927e7c44dae5fdb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a78ee178b6a73658d65ca60da4d1e6683"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a78ee178b6a73658d65ca60da4d1e6683">getName</a> ()</td></tr>
- <tr class="separator:a78ee178b6a73658d65ca60da4d1e6683"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Scoping</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Manipulate the object's script-defined <code>Namespace</code> </p>
- </div></td></tr>
- <tr class="memitem:ab8b0f8b874af628d7204d9cc2630ced7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace</a> ()</td></tr>
- <tr class="separator:ab8b0f8b874af628d7204d9cc2630ced7"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a6e266d4432d70cad58461d96e1d2cbdf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a6e266d4432d70cad58461d96e1d2cbdf">getSuperClassNamespace</a> ()</td></tr>
- <tr class="separator:a6e266d4432d70cad58461d96e1d2cbdf"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a847e859bcc5b58df83fa7f331c167c32"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace</a> (nameSpace)</td></tr>
- <tr class="separator:a847e859bcc5b58df83fa7f331c167c32"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a9cbf471b97387d5bdefb88f92094ad54"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a9cbf471b97387d5bdefb88f92094ad54">setSuperClassNamespace</a> ()</td></tr>
- <tr class="separator:a9cbf471b97387d5bdefb88f92094ad54"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Reflection</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Methods to query and manipulate the object's class, methods, and fields. </p>
- </div></td></tr>
- <tr class="memitem:a8f4e85d0903526235ed2ca86df69cdef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a8f4e85d0903526235ed2ca86df69cdef">isMethod</a> (string methodName)</td></tr>
- <tr class="separator:a8f4e85d0903526235ed2ca86df69cdef"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa9873d392a76100738de2337c882f477"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#aa9873d392a76100738de2337c882f477">call</a> (methodName,[args]*)</td></tr>
- <tr class="separator:aa9873d392a76100738de2337c882f477"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1810f5aba25efd242c24232c2c2bbd1a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a1810f5aba25efd242c24232c2c2bbd1a">dumpClassHierarchy</a> ()</td></tr>
- <tr class="separator:a1810f5aba25efd242c24232c2c2bbd1a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:accd2600060dbaee3a3b41aed4034c63c"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#accd2600060dbaee3a3b41aed4034c63c">dump</a> ()</td></tr>
- <tr class="separator:accd2600060dbaee3a3b41aed4034c63c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a66ac731a8dc088fe8c8ab17bf7c9eecd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a66ac731a8dc088fe8c8ab17bf7c9eecd">isMemberOfClass</a> (string classname)</td></tr>
- <tr class="separator:a66ac731a8dc088fe8c8ab17bf7c9eecd"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a3e97a324df2af082cdb089491757ce11"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName</a> ()</td></tr>
- <tr class="separator:a3e97a324df2af082cdb089491757ce11"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:abc2222a9649b5c033810e753b07f26a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#abc2222a9649b5c033810e753b07f26a3">getFieldValue</a> (fieldName)</td></tr>
- <tr class="separator:abc2222a9649b5c033810e753b07f26a3"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a1084f1964e446b3d279943cf6e575069"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a1084f1964e446b3d279943cf6e575069">setFieldValue</a> (fieldName, value)</td></tr>
- <tr class="separator:a1084f1964e446b3d279943cf6e575069"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7543b8dc494ec0d9034cb73ae504f3ca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount</a> ()</td></tr>
- <tr class="separator:a7543b8dc494ec0d9034cb73ae504f3ca"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0e143217119b68d557d17ac2f13b173e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField</a> (index)</td></tr>
- <tr class="separator:a0e143217119b68d557d17ac2f13b173e"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af2e74f6b683da8d2085f0991dab7948b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount</a> ()</td></tr>
- <tr class="separator:af2e74f6b683da8d2085f0991dab7948b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac636f89189406eef1b401292459b1a3b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField</a> (int index)</td></tr>
- <tr class="separator:ac636f89189406eef1b401292459b1a3b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa8f68d1e6d8c6601c39b3f676f0e9c70"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#aa8f68d1e6d8c6601c39b3f676f0e9c70">setProgenitorFile</a> (file)</td></tr>
- <tr class="separator:aa8f68d1e6d8c6601c39b3f676f0e9c70"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a88c8d99755a07ac4648360dd40ff67a5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a88c8d99755a07ac4648360dd40ff67a5">getProgenitorFile</a> ()</td></tr>
- <tr class="separator:a88c8d99755a07ac4648360dd40ff67a5"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a367706e675179342e6153c45f1ba06ae"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a367706e675179342e6153c45f1ba06ae">getType</a> ()</td></tr>
- <tr class="separator:a367706e675179342e6153c45f1ba06ae"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0570b7f6eb94a0ed941fd75f6f01555b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a0570b7f6eb94a0ed941fd75f6f01555b">getFieldType</a> (fieldName)</td></tr>
- <tr class="separator:a0570b7f6eb94a0ed941fd75f6f01555b"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Grouping</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Manipulate the (singular) group for this object. </p>
- </div></td></tr>
- <tr class="memitem:a5aaca360a719feabae0e4e57b921deae"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a5aaca360a719feabae0e4e57b921deae">setInternalName</a> (string InternalName)</td></tr>
- <tr class="separator:a5aaca360a719feabae0e4e57b921deae"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:af9f341b474a28f4bcf79bc02439b7c18"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#af9f341b474a28f4bcf79bc02439b7c18">getInternalName</a> ()</td></tr>
- <tr class="separator:af9f341b474a28f4bcf79bc02439b7c18"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a986f1b4a76969bac5dfd50b22af8dec6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a986f1b4a76969bac5dfd50b22af8dec6">isChildOfGroup</a> (groupID)</td></tr>
- <tr class="separator:a986f1b4a76969bac5dfd50b22af8dec6"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae329d6593bb3f9b8046e7cae693ccc09"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#ae329d6593bb3f9b8046e7cae693ccc09">getGroup</a> ()</td></tr>
- <tr class="separator:ae329d6593bb3f9b8046e7cae693ccc09"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Timer/Scheduled Events</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Perform timed callbacks on the object. </p>
- </div></td></tr>
- <tr class="memitem:a2dd2c7a365c19267d7a26923c7616afd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a2dd2c7a365c19267d7a26923c7616afd">startTimer</a> (callbackFunction, float timePeriod,[repeat]?)</td></tr>
- <tr class="separator:a2dd2c7a365c19267d7a26923c7616afd"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa6f6bfef028c7b053444cbd48567d286"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#aa6f6bfef028c7b053444cbd48567d286">stopTimer</a> ()</td></tr>
- <tr class="separator:aa6f6bfef028c7b053444cbd48567d286"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5807c03d2b725a54732d09b53d5da631"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a5807c03d2b725a54732d09b53d5da631">isTimerActive</a> ()</td></tr>
- <tr class="separator:a5807c03d2b725a54732d09b53d5da631"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a6b70a037ad6cea86b10fd5188f42bf52"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a6b70a037ad6cea86b10fd5188f42bf52">schedule</a> (time, command,[arg]*)</td></tr>
- <tr class="separator:a6b70a037ad6cea86b10fd5188f42bf52"><td class="memSeparator" colspan="2"> </td></tr>
- <tr><td colspan="2"><div class="groupHeader">Serialization</div></td></tr>
- <tr><td colspan="2"><div class="groupText"><p>Write an object. (Read in with <a class="el" href="group__MetaScriptingFunctions.html#gae399ebb0a495af05635418679e8de22d">exec()</a>). </p>
- </div></td></tr>
- <tr class="memitem:ad4944a7132f9ee90f801f4cd57014836"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#ad4944a7132f9ee90f801f4cd57014836">save</a> (<a class="el" href="group__FileSystemFunctions.html#ga4ea5109dc203259fb3c01292345bc0ee">fileName</a>,[selectedOnly]?)</td></tr>
- <tr class="separator:ad4944a7132f9ee90f801f4cd57014836"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a216228c27df224ac5e8d3590494bfb3f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#a216228c27df224ac5e8d3590494bfb3f">addFieldFilter</a> (fieldName)</td></tr>
- <tr class="separator:a216228c27df224ac5e8d3590494bfb3f"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ad517bd83c1c853985ab07cd22775c43d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classSimObject.html#ad517bd83c1c853985ab07cd22775c43d">removeFieldFilter</a> (fieldName)</td></tr>
- <tr class="separator:ad517bd83c1c853985ab07cd22775c43d"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p><a class="el" href="classSimObject.html">SimObject</a> is the base class for all other scripted classes. This means that all other "simulation" classes – be they SceneObjects, Scenes, or plain-old SimObjects – can use the methods and fields of <a class="el" href="classSimObject.html">SimObject</a>.</p>
- <dl class="section user"><dt>Identity</dt><dd></dd></dl>
- <p>When we create a <a class="el" href="classSimObject.html">SimObject</a> with <code><a class="el" href="group__constructionOperators.html#ga70a14b869c34d264188d162a1ffda28e">new</a></code>, it is given a unique id which is returned by <code><a class="el" href="group__constructionOperators.html#ga70a14b869c34d264188d162a1ffda28e">new</a></code>. We usually save the id in our own variables. Alternatively, we can give the <a class="el" href="classSimObject.html">SimObject</a> a name which we can use to directly manipulate it. This name can be set with the <code><a class="el" href="group__constructionOperators.html#ga70a14b869c34d264188d162a1ffda28e">new</a></code> operator or it can be added later.</p>
- <p>If we give an object a name, then we can write script methods that are "scoped" to run on this object only. For instance, if we have a <a class="el" href="classSimObject.html">SimObject</a> named <code>MyObject</code>, and if we call <code>MyObject.myMethod()</code>, then this call will be handled by a method we named <code>MyObject::myMethod</code> if one exists.</p>
- <p>See <a class="el" href="classSimObject.html#a929e1325a515b279faca90a65028782e">getId()</a>, <a class="el" href="classSimObject.html#a78ee178b6a73658d65ca60da4d1e6683">getName()</a>, <a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName()</a></p>
- <dl class="section user"><dt>Static and Dynamic Fields</dt><dd></dd></dl>
- <p>Each subclass of <a class="el" href="classSimObject.html">SimObject</a> will provide important fields. For instance, a <a class="el" href="classSceneObject.html">SceneObject</a> will have a position, scale, etc. These are known as "static" or "built-in" fields. Additionally, you can add any number of your own fields, for example <code>myField</code> or <code>hitPoints</code>. These are known as "dynamic" or "add-on" fields. To do so only requires you to set the field directly with <code>%myObject.myField = myValue;</code>. Attempting to retrieve a field that does not exist (yet) returns nothing. There is no error or warning.</p>
- <p>Note that static fields exist for every object of a class, while dynamic fields are unique to any one instance. Adding <code>myField</code> to one <a class="el" href="classSceneObject.html">SceneObject</a> does not add it to all SceneObjects.</p>
- <p>For working with fields more programmatically, see <em>Reflection</em> below.</p>
- <dl class="section user"><dt>Script Namespace</dt><dd></dd></dl>
- <p>We can attach a <code>Namespace</code> to an object. Then calls to this object will be handled by the script functions in that Namespace. For instance, if we set <code>%myObject.class = MyScope</code> then the call <code>%myObject.myMethod</code> will be handled with a method named <code>MyScope::myMethod()</code>. (If we also named the object <code>MyObject</code>, then if there is a <code>MyObject::myMethod()</code> it will run. Otherwise, Torque2D will look for <code>MyScope::myMethod()</code> and run that if found.)</p>
- <p>Finally there is also a <em>secondary</em> <code>Namespace</code> that will receive the call if neither the <code>Name</code> nor the <em>primary</em> <code>Namespace</code> had a method to handle the call.</p>
- <p>Unfortunately, these <code>Namespaces</code> are called <code>Classes</code> in this context. You set the <code>class</code> or <code>superclass</code>. But this should not be confused with the <a class="el" href="classSimObject.html">SimObject</a>'s "real" class which is <a class="el" href="classSimObject.html">SimObject</a> or <a class="el" href="classScene.html">Scene</a> as examples.</p>
- <p>See <a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace()</a>, <a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace()</a>, <a class="el" href="classSimObject.html#a6e266d4432d70cad58461d96e1d2cbdf">getSuperClassNamespace()</a>, <a class="el" href="classSimObject.html#a9cbf471b97387d5bdefb88f92094ad54">setSuperClassNamespace()</a></p>
- <dl class="section user"><dt>Reflection</dt><dd></dd></dl>
- <p><a class="el" href="classSimObject.html">SimObject</a> supports "reflection" – the run-time inspection of an object's methods, fields, etc. For instance, we can ask an object what class it instantiates, what dynamic fields it has, etc. We can also use this feature to call a method on an object even if we only know the string name of the method.</p>
- <p>See <a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName()</a>, <a class="el" href="classSimObject.html#a66ac731a8dc088fe8c8ab17bf7c9eecd">isMemberOfClass()</a>, <a class="el" href="classSimObject.html#a8f4e85d0903526235ed2ca86df69cdef">isMethod()</a>, <a class="el" href="classSimObject.html#accd2600060dbaee3a3b41aed4034c63c">dump()</a>, <a class="el" href="classSimObject.html#a1810f5aba25efd242c24232c2c2bbd1a">dumpClassHierarchy()</a>, <a class="el" href="classSimObject.html#aa9873d392a76100738de2337c882f477">call()</a></p>
- <p>See <a class="el" href="classSimObject.html#abc2222a9649b5c033810e753b07f26a3">getFieldValue()</a>, <a class="el" href="classSimObject.html#a1084f1964e446b3d279943cf6e575069">setFieldValue()</a>, <a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount()</a>, <a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField()</a>, <a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount()</a>, <a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField()</a></p>
- <dl class="section user"><dt>Scheduling Callbacks</dt><dd></dd></dl>
- <p>We can set a <a class="el" href="classSimObject.html">SimObject</a> to regularly call its own onTimer() callback. Additionally, we can schedule a single call to any method at any time in the future.</p>
- <p>See <a class="el" href="classSimObject.html#a2dd2c7a365c19267d7a26923c7616afd">startTimer()</a>, <a class="el" href="classSimObject.html#aa6f6bfef028c7b053444cbd48567d286">stopTimer()</a>, <a class="el" href="classSimObject.html#a5807c03d2b725a54732d09b53d5da631">isTimerActive()</a>, <a class="el" href="classSimObject.html#a6b70a037ad6cea86b10fd5188f42bf52">schedule()</a></p>
- <dl class="section user"><dt>Groups</dt><dd>TBD</dd></dl>
- <dl class="section user"><dt>Persistence</dt><dd>canSaveDynamicFields bool = "1" - Whether a <a class="el" href="classSimObject.html#ad4944a7132f9ee90f801f4cd57014836">save()</a> shall save the object's Dynamic Fields (member fields created by TorqueScript) </dd></dl>
- </div><h2 class="groupheader">Member Function Documentation</h2>
- <a class="anchor" id="a216228c27df224ac5e8d3590494bfb3f"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void addFieldFilter </td>
- <td>(</td>
- <td class="paramtype">fieldName </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Add the field to the list of fields to exclude during write. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fieldName</td><td>The name of the field to filter out. </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>No return value</dd></dl>
- <p>The field can be static or dynamic.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classFileObject.html#a2b2d3fbeea8517d038208d362cb6b378">FileObject::writeObject</a>, <a class="el" href="classSimObject.html#ad4944a7132f9ee90f801f4cd57014836">save</a>, <a class="el" href="classSimObject.html#ad517bd83c1c853985ab07cd22775c43d">removeFieldFilter</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="aa9873d392a76100738de2337c882f477"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> call </td>
- <td>(</td>
- <td class="paramtype">methodName </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">[args] * </td>
- <td class="paramname"> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Dynamically call a method by a string name</p>
- <p>Normally you would call a method in the form <code>object.myMethod(param1, param2)</code>. Alternatively, you can use <code>object.call(myMethod, param1, param2)</code>. This can be useful if, for instance, you don't know which method to call in advance.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%method = <span class="stringliteral">"setClassNamespace"</span>;</div>
- <div class="line">%newNamespace = <span class="stringliteral">"myNamespace"</span>;</div>
- <div class="line"></div>
- <div class="line">%<span class="keywordtype">object</span>.call(%method, %newNamespace);</div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a22437f451ceb1429fa2a3be23d523954"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> clone </td>
- <td>(</td>
- <td class="paramtype">[copyDynamicFields = false] ? </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Clones the object. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">copyDynamicFields</td><td>Whether the dynamic fields should be copied to the cloned object or not. Optional: Defaults to false. </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>(newObjectID) The newly cloned object's id if successful, otherwise a 0. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a7a4721d0a51e952c211e9b0fea4d8090"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void delete </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Use the delete method to delete this object. When an object is deleted, it automatically</p>
- <ul>
- <li>Unregisters its ID and name (if it has one) with the engine.</li>
- <li>Removes itself from any <a class="el" href="classSimGroup.html">SimGroup</a> or <a class="el" href="classSimSet.html">SimSet</a> it may be a member of.</li>
- <li>(eventually) returns the memory associated with itself and its non-dynamic members.</li>
- <li>Cancels all pending obj.schedule() events.</li>
- </ul>
- <p>For objects in the GameBase, ScriptObject, or GUIControl hierarchies, an object will first: Call the onRemove() method for the object's namespace </p>
- <dl class="section return"><dt>Returns</dt><dd>No return value. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="accd2600060dbaee3a3b41aed4034c63c"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void dump </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>dump the object to the console.</p>
- <p>Use the dump method to display the following information about this object:</p>
- <ul>
- <li>All static and dynamic fields that are non-null</li>
- <li>All engine and script-registered console methods (including superclass methods) for this object <dl class="section return"><dt>Returns</dt><dd>No return value </dd></dl>
- </li>
- </ul>
- </div>
- </div>
- <a class="anchor" id="a1810f5aba25efd242c24232c2c2bbd1a"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void dumpClassHierarchy </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Write the class hierarchy of an object to the console.</p>
- <dl class="section return"><dt>Returns</dt><dd>no return value</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keyword">new</span> <a class="code" href="classSimGroup.html">SimGroup</a>(sg);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(sg.dumpClassHierarchy());</div>
- <div class="line">> <a class="code" href="classSimGroup.html">SimGroup</a> -></div>
- <div class="line">> <a class="code" href="classSimSet.html">SimSet</a> -></div>
- <div class="line">> <a class="code" href="classSimObject.html">SimObject</a></div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a3e97a324df2af082cdb089491757ce11"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getClassName </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns the engine class of this object such as <code><a class="el" href="classSimObject.html">SimObject</a></code> or <code><a class="el" href="classSceneObject.html">SceneObject</a></code> </p>
- <dl class="section return"><dt>Returns</dt><dd>class name</dd></dl>
- <p>Note that this method is defined in <a class="el" href="classSimObject.html">SimObject</a> but is inherited by subclasses of <a class="el" href="classSimObject.html">SimObject</a>. Subclasses will return the correct subclass name.</p>
- <p>Note also, <a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName()</a> is not related to an object's <code>class</code> field! The <code>class</code> field is a scripting concept that provides a "namespace" to look for user-defined functions (see <a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace()</a>).</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>()</div>
- <div class="line">{</div>
- <div class="line"> <span class="keyword">class </span>= MyScope;</div>
- <div class="line">};</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getClassName());</div>
- <div class="line">> <a class="code" href="classSimObject.html">SimObject</a></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> MyScope</div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ab8b0f8b874af628d7204d9cc2630ced7"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getClassNamespace </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns the <code>Namespace</code> of this object as set by the user. </p>
- <dl class="section return"><dt>Returns</dt><dd>The Namespace as set in the object's <code>class</code> field.</dd></dl>
- <p>The class namespace is a a scripting concept that provides a "namespace" in which the engine looks to find user-defined scripting functions. It can be set, and reset, by the user by using <a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace()</a>. Alternatively, it can be set directly using the <code>class</code> field of the object.</p>
- <p>Note that this can easily be confused with <a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName()</a>, which is unrelated, and returns the "true" engine class name of an object, such as <code><a class="el" href="classSimObject.html">SimObject</a></code>.</p>
- <p>See <a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace()</a> for examples.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a0e143217119b68d557d17ac2f13b173e"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getDynamicField </td>
- <td>(</td>
- <td class="paramtype">index </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the field name of a specific dynamic ("add-on") field by index. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">index</td><td>the dynamic field for which to retrieve the name </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>the name of the field</dd></dl>
- <p>You would normally access dynamic fields directly <code>%object.field</code> or indirectly <code>%object.getFieldValue(%field)</code>. However, you may not know the field's names or otherwise need to iterate over the fields. Use <a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount()</a> to get the number of dynamic fields, and then iterate over them with this function.</p>
- <p>Note that only dynamic ("add-on") fields will be surfaced. Static ("built-in") fields like <code>SimSet.class</code> will not be counted or listed.</p>
- <p>While static and dynamic fields have separate functions to get their counts and names, they share <a class="el" href="classSimObject.html#abc2222a9649b5c033810e753b07f26a3">getFieldValue()</a> and <a class="el" href="classSimObject.html#a1084f1964e446b3d279943cf6e575069">setFieldValue()</a> to read and set any field by name.</p>
- <p>Also note that the order of the fields by an index has no meaning. It is not alphabetical, the order created, or otherwise.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%count = %example.getDynamicFieldCount();</div>
- <div class="line"><span class="keywordflow">for</span> (%i = 0; %i < %count; %i++)</div>
- <div class="line">{</div>
- <div class="line"> %fieldName = %example.getDynamicField(%i);</div>
- <div class="line"> %fieldValue = %example.getFieldValue(%fieldName);</div>
- <div class="line"> <a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%fieldName @ <span class="stringliteral">" = "</span> @ %fieldValue);</div>
- <div class="line">}</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount</a>, <a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField</a>, <a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a7543b8dc494ec0d9034cb73ae504f3ca"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> getDynamicFieldCount </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>return the number of dynamic ("add-on") fields. </p>
- <dl class="section return"><dt>Returns</dt><dd>the number of dynamic fields</dd></dl>
- <p>Note that static (or "built-in") fields are not counted. For instance, <code>SimObject.class</code> will not count.</p>
- <p>See <a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField()</a> for an explanation and examples.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField</a>, <a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField</a>, <a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ac636f89189406eef1b401292459b1a3b"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getField </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>index</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the field name of a specific static ("built-in") field by index. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">index</td><td>the static field for which to retrieve the name </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>the name of the field</dd></dl>
- <p>You would normally access static fields directly <code>%object.class</code> or indirectly <code>%object.getFieldValue(%field)</code>. However, you may not know the field's names or otherwise need to iterate over the fields. Use <a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount()</a> to get the number of static fields, and then iterate over them with this function.</p>
- <p>Note that only static ("built-in") fields will be surfaced. Dynamic ("add-on") fields like <code>%SimSet.myField</code> will not be counted or listed.</p>
- <p>While static and dynamic fields have separate functions to get their counts and names, they share <a class="el" href="classSimObject.html#abc2222a9649b5c033810e753b07f26a3">getFieldValue()</a> and <a class="el" href="classSimObject.html#a1084f1964e446b3d279943cf6e575069">setFieldValue()</a> to read and set any field by name.</p>
- <p>Also note that the order of the fields by an index has no meaning. It is not alphabetical, the order created, or otherwise.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%count = %example.getFieldCount();</div>
- <div class="line"><span class="keywordflow">for</span> (%i = 0; %i < %count; %i++)</div>
- <div class="line">{</div>
- <div class="line"> %fieldName = %example.getField(%i);</div>
- <div class="line"> %fieldValue = %example.getFieldValue(%fieldName);</div>
- <div class="line"> <a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%fieldName @ <span class="stringliteral">" = "</span> @ %fieldValue);</div>
- <div class="line">}</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField</a>, <a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount</a>, <a class="el" href="classSimObject.html#af2e74f6b683da8d2085f0991dab7948b">getFieldCount</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="af2e74f6b683da8d2085f0991dab7948b"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> getFieldCount </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>return the number of static ("built-in") fields. </p>
- <dl class="section return"><dt>Returns</dt><dd>the number of dynamic fields</dd></dl>
- <p>Note that dynamic (or "add-on") fields are not counted. For instance, <code>%object.class</code> will count, but <code>%object.myField</code> will not.</p>
- <p>See <a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField()</a> for an explanation and examples.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a0e143217119b68d557d17ac2f13b173e">getDynamicField</a>, <a class="el" href="classSimObject.html#a7543b8dc494ec0d9034cb73ae504f3ca">getDynamicFieldCount</a>, <a class="el" href="classSimObject.html#ac636f89189406eef1b401292459b1a3b">getField</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a0570b7f6eb94a0ed941fd75f6f01555b"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getFieldType </td>
- <td>(</td>
- <td class="paramtype">fieldName </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>return the type of a field, such as "int" for an Integer </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fieldName</td><td>field of the object to get the type of </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>string name of the type; or nothing if the field isn't found</dd></dl>
- <p>No warning will be shown if the field isn't found.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keyword">new</span> sprite(s);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(frame));</div>
- <div class="line">> <span class="keywordtype">int</span></div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(blendcolor));</div>
- <div class="line">> ColorF</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(angle));</div>
- <div class="line">> <span class="keywordtype">float</span></div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(position));</div>
- <div class="line">> <a class="code" href="group__TorqueScriptTypes.html#ga9e94493e2a334dee294c516b9479f52b">Vector2</a></div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(<span class="keyword">class</span>));</div>
- <div class="line">> <span class="keywordtype">string</span></div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(s.getFieldType(notAField));</div>
- <div class="line">></div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="abc2222a9649b5c033810e753b07f26a3"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getFieldValue </td>
- <td>(</td>
- <td class="paramtype">fieldName </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the value of any field. This can be a static ("built-in") field or a dynamic ("add-on") field.</p>
- <p>Normally, you would get a field directly as <code>%object.field</code>. However, in some cases you may want to use <a class="el" href="classSimObject.html#abc2222a9649b5c033810e753b07f26a3">getFieldValue()</a>. For instance, suppose you allow the field name to be passed into a function. You can still get that field with <code>%object.getFieldValue(%field)</code>.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fieldName</td><td>the name of the field </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>the value of the field</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="comment">// create a SimObject and set its 'class' field for our example</span></div>
- <div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>()</div>
- <div class="line">{</div>
- <div class="line"> <span class="keyword">class </span>= "MyClass";</div>
- <div class="line">}</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// 'class' is a static "built-in" field. retrieve it directly and with getFieldValue()</span></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> MyClass</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getFieldValue(<span class="keyword">class</span>));</div>
- <div class="line">> MyClass</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// set a dynamic "add-on" field</span></div>
- <div class="line">%example.myField = <span class="stringliteral">"myValue"</span>;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.myField);</div>
- <div class="line">> myValue</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getFieldValue(myField));</div>
- <div class="line">> myValue</div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ae329d6593bb3f9b8046e7cae693ccc09"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> getGroup </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>determines if this object is contained in a <a class="el" href="classSimGroup.html">SimGroup</a> and if so, which one. </p>
- <dl class="section return"><dt>Returns</dt><dd>Returns the ID of the <a class="el" href="classSimGroup.html">SimGroup</a> this shape is in or zero if the shape is not contained in a <a class="el" href="classSimGroup.html">SimGroup</a></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimGroup.html">SimGroup</a>, <a class="el" href="classSimObject.html#af9f341b474a28f4bcf79bc02439b7c18">getInternalName</a>, <a class="el" href="classSimObject.html#a5aaca360a719feabae0e4e57b921deae">setInternalName</a>, <a class="el" href="classSimObject.html#a986f1b4a76969bac5dfd50b22af8dec6">isChildOfGroup</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a929e1325a515b279faca90a65028782e"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> getId </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>get the unique numeric ID – or "handle" – of this object.</p>
- <dl class="section return"><dt>Returns</dt><dd>Returns the numeric ID.</dd></dl>
- <p>The id is provided for you by the simulator upon object creation. You can not change it and it likely will not be reused by any other object after this object is deleted.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>(example);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(example.getId());</div>
- <div class="line">> 1752</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section user"><dt>Caveat</dt><dd>You can not access the id directly. That is, you can not access <code>%object.id</code>. If you do set <code>%object.id</code> you will only succeed in creating a dynamic field named <code>id</code> – an unrelated field to the actual object's id.</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%example = <a class="code" href="classSimObject.html">SimObject</a>();</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getId());</div>
- <div class="line">> 1753</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// warning! this will fail to change the id!</span></div>
- <div class="line"><span class="comment">// it will also not warn you as it is legal syntax</span></div>
- <div class="line">%example.id = 50;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getId());</div>
- <div class="line">> 1753</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.id);</div>
- <div class="line">> 50</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a78ee178b6a73658d65ca60da4d1e6683">getName</a>, <a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="af9f341b474a28f4bcf79bc02439b7c18"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getInternalName </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>returns the objects "internal" name </p>
- <dl class="section return"><dt>Returns</dt><dd>the internalName used for group access</dd></dl>
- <p>Not to be confused with the object's <code>Name</code>, the internal name is used to find this object within a group. Each object may be in one group, ultimately forming a tree (usually for GUI related classes). See <a class="el" href="classSimGroup.html">SimGroup</a> for more information.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimGroup.html">SimGroup</a>, <a class="el" href="classSimObject.html#a5aaca360a719feabae0e4e57b921deae">setInternalName</a>, <a class="el" href="classSimObject.html#a986f1b4a76969bac5dfd50b22af8dec6">isChildOfGroup</a>, <a class="el" href="classSimObject.html#ae329d6593bb3f9b8046e7cae693ccc09">getGroup</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a78ee178b6a73658d65ca60da4d1e6683"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getName </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns the name of the object </p>
- <dl class="section return"><dt>Returns</dt><dd>the "global" name</dd></dl>
- <p>See <a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName()</a> for a description of the name field.</p>
- <p>Note not to confuse this with the <code>internalName</code> which is a name for grouping purposes.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>();</div>
- <div class="line">%example.setName(<span class="stringliteral">"myObject"</span>);</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// now we can reference our object with variables and with its name</span></div>
- <div class="line">%example.getId();</div>
- <div class="line">> 160</div>
- <div class="line"></div>
- <div class="line">myObject.getId();</div>
- <div class="line">> 160</div>
- </div><!-- fragment --></dd></dl>
- <p>See <a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName()</a> for caveats.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName</a>, <a class="el" href="classSimObject.html#a929e1325a515b279faca90a65028782e">getId</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a88c8d99755a07ac4648360dd40ff67a5"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getProgenitorFile </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Gets the progenitor file responsible for this instances creation. </p>
- <dl class="section return"><dt>Returns</dt><dd>The progenitor file responsible for this instances creation. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a6e266d4432d70cad58461d96e1d2cbdf"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#gadd36cf0d984acde0881d9ab8fff3ae5d">String</a> getSuperClassNamespace </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Return the superclass <code>Namespace</code> of this object as set by the user.</p>
- <p>An object can have a primary and secondary <code>Namespace</code> also known as its <code>class</code> and <code>superclass</code>. If a user-defined function is not found in the <code>class</code> then the <code>superclass</code> is searched.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a367706e675179342e6153c45f1ba06ae"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> getType </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Use the getType method to get the type for this object.</p>
- <dl class="section return"><dt>Returns</dt><dd>Returns a bit mask containing one or more set bits.</dd></dl>
- <p>This is here for legacy purposes.</p>
- <p>This type is an integer value composed of bitmasks. For simplicity, these bitmasks are defined in the engine and exposed for our use as global variables. To simplify the writing of scripts, a set of globals has been provided containing the bit setting for each class corresponding to a particular type. </p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a986f1b4a76969bac5dfd50b22af8dec6"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> isChildOfGroup </td>
- <td>(</td>
- <td class="paramtype">groupID </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>test if this object is in a specified group (or subgroup of it) </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">groupID</td><td>the ID of the group being tested </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>true if we are in the specified simgroup or a subgroup of it; false otherwise</dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimGroup.html">SimGroup</a>, <a class="el" href="classSimObject.html#af9f341b474a28f4bcf79bc02439b7c18">getInternalName</a>, <a class="el" href="classSimObject.html#a5aaca360a719feabae0e4e57b921deae">setInternalName</a>, <a class="el" href="classSimObject.html#ae329d6593bb3f9b8046e7cae693ccc09">getGroup</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a66ac731a8dc088fe8c8ab17bf7c9eecd"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> isMemberOfClass </td>
- <td>(</td>
- <td class="paramtype">string </td>
- <td class="paramname"><em>classname</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>returns true if this object is of the specified class or a subclass of the specified class </p>
- <dl class="section return"><dt>Returns</dt><dd>true if a class or subclass of the given class</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSceneObject.html">SceneObject</a>();</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.isMemberOfClass(<a class="code" href="classSimObject.html">SimObject</a>);</div>
- <div class="line">> 1</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.isMemberOfClass(<a class="code" href="classSimSet.html">SimSet</a>);</div>
- <div class="line">> 0</div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a8f4e85d0903526235ed2ca86df69cdef"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> isMethod </td>
- <td>(</td>
- <td class="paramtype">string </td>
- <td class="paramname"><em>methodName</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Returns wether the method exists for this object.</p>
- <dl class="section return"><dt>Returns</dt><dd>true if the method exists; false otherwise</dd></dl>
- <p>The method must be a "built-in" method, or one that is not user-defined in script. It must also be a direct method on the object, and not a behavior defined in a Behavior. </p>
- </div>
- </div>
- <a class="anchor" id="a5807c03d2b725a54732d09b53d5da631"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> isTimerActive </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Checks whether the periodic timer is active for this object or not. </p>
- <dl class="section return"><dt>Returns</dt><dd>Whether the periodic timer is active for this object or not. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ad517bd83c1c853985ab07cd22775c43d"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void removeFieldFilter </td>
- <td>(</td>
- <td class="paramtype">fieldName </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Remove the field from the list of fields to exclude during write </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fieldName</td><td>The name of the field to stop filtering out. </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>No return value.</dd></dl>
- <p>The field can be static or dynamic.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classFileObject.html#a2b2d3fbeea8517d038208d362cb6b378">FileObject::writeObject</a>, <a class="el" href="classSimObject.html#ad4944a7132f9ee90f801f4cd57014836">save</a>, <a class="el" href="classSimObject.html#a216228c27df224ac5e8d3590494bfb3f">addFieldFilter</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ad4944a7132f9ee90f801f4cd57014836"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> save </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__FileSystemFunctions.html#ga4ea5109dc203259fb3c01292345bc0ee">fileName</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">[selectedOnly] ? </td>
- <td class="paramname"> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>save this object to a specified file </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fileName</td><td>the file to save to </td></tr>
- <tr><td class="paramname">selectedOnly</td><td>seems to be for editors to set. not sure how to mark anything as "selected" </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>false if file could not be opened; true otherwise</dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classFileObject.html#a2b2d3fbeea8517d038208d362cb6b378">FileObject::writeObject</a>, <a class="el" href="classSimObject.html#a216228c27df224ac5e8d3590494bfb3f">addFieldFilter</a>, <a class="el" href="classSimObject.html#ad517bd83c1c853985ab07cd22775c43d">removeFieldFilter</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a6b70a037ad6cea86b10fd5188f42bf52"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga85be84504cf913ad90b8ee4f264195d3">Integer</a> schedule </td>
- <td>(</td>
- <td class="paramtype">time </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">command </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">[arg] * </td>
- <td class="paramname"> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>schedule an action to be executed upon this object in the future.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">time</td><td>Time in milliseconds till action is scheduled to occur. </td></tr>
- <tr><td class="paramname">command</td><td>Name of the command to execute. This command must be scoped to this object (i.e. It must exist in the namespace of the object), otherwise the schedule call will fail. </td></tr>
- <tr><td class="paramname">arg1...argN</td><td>These are optional arguments which will be passed to the command. This version of schedule automatically passes the ID of obj as arg0 to command. </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>Returns an integer schedule ID.</dd></dl>
- <p>The major difference between this and the <a class="el" href="group__EventScheduleFunctions.html#gab457aa4a88b4d9fad6fc4ef1e79dd6c2">schedule()</a> console function is that if this object is deleted prior to the scheduled event, the event is automatically canceled. Times should not be treated as exact since some 'simulation delay' is to be expected. The minimum resolution for a scheduled event is 32 ms, or one tick.</p>
- <p>The existence of command is not validated. If you pass an invalid console method name, the <a class="el" href="classSimObject.html#a6b70a037ad6cea86b10fd5188f42bf52">schedule()</a> method will still return a schedule ID, but the subsequent event will fail silently.</p>
- <p>To manipulate the scheduled event, use the id returned with the system schedule functions.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="group__EventScheduleFunctions.html#gab457aa4a88b4d9fad6fc4ef1e79dd6c2">schedule</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a847e859bcc5b58df83fa7f331c167c32"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void setClassNamespace </td>
- <td>(</td>
- <td class="paramtype">nameSpace </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Sets the <code>Namespace</code> of this object. </p>
- <dl class="section return"><dt>Returns</dt><dd>no return value</dd></dl>
- <p>The class namespace is a a scripting concept that provides a "namespace" in which the engine looks to find user-defined scripting functions. It can be set, and reset, by the user using <a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace()</a>. Alternatively, it can be set directly using the <code>class</code> field of the object.</p>
- <p>The <code>Namespace</code> or <code>class</code> can then be returned with <a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace()</a>. Note that this can easily be confused with <a class="el" href="classSimObject.html#a3e97a324df2af082cdb089491757ce11">getClassName()</a>, which is unrelated, and returns the "true" engine class name of an object, such as <code><a class="el" href="classSimObject.html">SimObject</a></code>.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>()</div>
- <div class="line">{</div>
- <div class="line"> <span class="keyword">class </span>= MyScope;</div>
- <div class="line">};</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> MyScope</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// set the namespace using setNamespace()</span></div>
- <div class="line">%example.setClassNamespace(DifferentScope);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> DifferentScope</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// set the namespace directly using the field 'class'</span></div>
- <div class="line">%example.class = YetAnotherScope;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getClassNamespace());</div>
- <div class="line">> YetAnotherScope</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#ab8b0f8b874af628d7204d9cc2630ced7">getClassNamespace</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a1084f1964e446b3d279943cf6e575069"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> setFieldValue </td>
- <td>(</td>
- <td class="paramtype">fieldName </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">value </td>
- <td class="paramname"> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Set the value of any field. This can be a static ("built-in") field or a dynamic ("add-on") field.</p>
- <p>Normally, you would set a field directly as <code>%object.field = value</code>. However, in some cases you may want to use <a class="el" href="classSimObject.html#a1084f1964e446b3d279943cf6e575069">setFieldValue()</a>. For instance, suppose you allow the field name to be passed into a function. You can still set that field with <code>%object.setFieldValue(field, "myValue")</code>.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">fieldName</td><td>the name of the field to set </td></tr>
- <tr><td class="paramname">value</td><td>the value to set </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>always returns true</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><span class="comment">// create a SimObject</span></div>
- <div class="line">%example = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>();</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// 'class' is a static "built-in" field. set it directly and with setFieldValue()</span></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">></div>
- <div class="line"></div>
- <div class="line">%example.class = <span class="stringliteral">"MyClass"</span>;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> MyClass</div>
- <div class="line"></div>
- <div class="line">%example.setFieldValue(<span class="keyword">class</span>, <span class="stringliteral">"AnotherClass"</span>);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.class);</div>
- <div class="line">> AnotherClass</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// set a dynamic "add-on" field</span></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.myField);</div>
- <div class="line">></div>
- <div class="line"></div>
- <div class="line">%example.myField = <span class="stringliteral">"myValue"</span>;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.myField);</div>
- <div class="line">> myValue</div>
- <div class="line"></div>
- <div class="line">%example.setFieldValue(anotherField, <span class="stringliteral">"anotherValue"</span>);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.anotherField);</div>
- <div class="line">> anotherValue</div>
- </div><!-- fragment --> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a5aaca360a719feabae0e4e57b921deae"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void setInternalName </td>
- <td>(</td>
- <td class="paramtype">string </td>
- <td class="paramname"><em>InternalName</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>sets the objects "internal" name </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">internalName</td><td>the name used for group access </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>nothing returned</dd></dl>
- <p>Not to be confused with the object's <code>Name</code>, the internal name is used to find this object within a group. Each object may be in one group, ultimately forming a tree (usually for GUI related classes). See <a class="el" href="classSimGroup.html">SimGroup</a> for more information.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimGroup.html">SimGroup</a>, <a class="el" href="classSimObject.html#af9f341b474a28f4bcf79bc02439b7c18">getInternalName</a>, <a class="el" href="classSimObject.html#a986f1b4a76969bac5dfd50b22af8dec6">isChildOfGroup</a>, <a class="el" href="classSimObject.html#ae329d6593bb3f9b8046e7cae693ccc09">getGroup</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a4f673cd959711ae09927e7c44dae5fdb"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void setName </td>
- <td>(</td>
- <td class="paramtype">newName </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Set the objects name field. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">newName</td><td>name for objects </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>no return value</dd></dl>
- <p>Now the object can be invoked by this name. This is different than tracking an object by a variable, such as <code>%myObject</code> or <code>$myObject</code>.</p>
- <p>Only one object can have a specific name. Setting a second object with this name will remove the name from the former object.</p>
- <p>Note not to confuse this with the <code>internalName</code> which is a name for grouping purposes.</p>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line">%obj = <span class="keyword">new</span> <a class="code" href="classSimObject.html">SimObject</a>();</div>
- <div class="line">%obj.setName(<span class="stringliteral">"MyName"</span>);</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// these are now equivalent</span></div>
- <div class="line">%obj.save();</div>
- <div class="line">MyName.save();</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section user"><dt>Caveat</dt><dd>You can not access the name directly. That is, you can not access <code>%object.name</code>. If you do set <code>%object.name</code> you will only succeed in creating a dynamic field named <code>name</code> – an unrelated field to the actual object's name.</dd></dl>
- <dl class="section user"><dt>Example</dt><dd><div class="fragment"><div class="line"><a class="code" href="classSimObject.html">SimObject</a>(<span class="stringliteral">"example"</span>);</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(example.getName());</div>
- <div class="line">> example</div>
- <div class="line"></div>
- <div class="line"><span class="comment">// warning! the field `name` does not exist yet</span></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(example.name);</div>
- <div class="line">></div>
- <div class="line"></div>
- <div class="line"><span class="comment">// warning! this will fail to change the name!</span></div>
- <div class="line"><span class="comment">// it will also not warn you as it is legal syntax</span></div>
- <div class="line">%example.name = <span class="stringliteral">"newExample"</span>;</div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.getName());</div>
- <div class="line">> example</div>
- <div class="line"></div>
- <div class="line"><a class="code" href="group__ConsoleOutputFunctions.html#ga530570e5951963de5e7ae349e996691c">echo</a>(%example.name);</div>
- <div class="line">> newExample</div>
- </div><!-- fragment --></dd></dl>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a4f673cd959711ae09927e7c44dae5fdb">setName</a>, <a class="el" href="classSimObject.html#a929e1325a515b279faca90a65028782e">getId</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="aa8f68d1e6d8c6601c39b3f676f0e9c70"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void setProgenitorFile </td>
- <td>(</td>
- <td class="paramtype">file </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Sets the progenitor file responsible for this instances creation. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">file</td><td>The progenitor file responsible for this instances creation. </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>No return value. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a9cbf471b97387d5bdefb88f92094ad54"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void setSuperClassNamespace </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Sets the superclass <code>Namespace</code> of this object.</p>
- <p>An object can have a primary and secondary <code>Namespace</code> also known as its <code>class</code> and <code>superclass</code>. If a user-defined function is not found in the <code>class</code> then the <code>superclass</code> is searched.</p>
- <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classSimObject.html#a847e859bcc5b58df83fa7f331c167c32">setClassNamespace</a> </dd></dl>
- </div>
- </div>
- <a class="anchor" id="a2dd2c7a365c19267d7a26923c7616afd"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="group__TorqueScriptTypes.html#ga2b43030c97cd77d3fe3fc96fd39aa246">Boolean</a> startTimer </td>
- <td>(</td>
- <td class="paramtype">callbackFunction </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">float </td>
- <td class="paramname"><em>timePeriod</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">[repeat] ? </td>
- <td class="paramname"> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Starts a periodic timer for this object. Sets a timer on the object that, when it expires, will cause the object to execute the onTimer() callback. The timer event will continue to occur at regular intervals until setTimerOff() is called. </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">callbackFunction</td><td>The name of the callback function to call for each timer repetition. </td></tr>
- <tr><td class="paramname">timePeriod</td><td>The period of time (in milliseconds) between each callback. </td></tr>
- <tr><td class="paramname">repeat</td><td>The number of times the timer should repeat. If not specified or zero then it will run infinitely </td></tr>
- </table>
- </dd>
- </dl>
- <dl class="section return"><dt>Returns</dt><dd>No return Value. </dd></dl>
- </div>
- </div>
- <a class="anchor" id="aa6f6bfef028c7b053444cbd48567d286"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void stopTimer </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Stops the periodic timer for this object. </p>
- <dl class="section return"><dt>Returns</dt><dd>No return Value. </dd></dl>
- </div>
- </div>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.3.1
- </small></address>
- </body>
- </html>
|