Newer
Older
TB_Chris / TbEvent / xml / .svn / text-base / TbState.xml.svn-base
  1. <?xml version='1.0' encoding='UTF-8'?>
  2. <!DOCTYPE gdd SYSTEM 'gdd.dtd'>
  3. <gdd>
  4. <package name = 'TbEvent'>
  5. <class name = 'TbState'
  6. author = 'Panagiotis Tsopelas, Wouter Hulsbergen'
  7. desc = '4D state vector with z position'>
  8. <location name = "Default" place = "Rec/Tb/TbStates"/>
  9. <import name = "GaudiKernel/MsgStream" />
  10. <import name = "GaudiKernel/Point3DTypes"/>
  11. <import name = "GaudiKernel/Vector3DTypes"/>
  12. <import name = "GaudiKernel/GenericVectorTypes"/>
  13. <import name = "GaudiKernel/SymmetricMatrixTypes"/>
  14. &StlPtrVector;
  15. <constructor desc = 'Default constructor'
  16. initList = "m_parameters(), m_covariance(), m_z(0.), m_plane(0)">
  17. </constructor>
  18. <constructor desc = "Constructor with arguments"
  19. argList = "const Gaudi::Vector4&amp; state,
  20. const Gaudi::SymMatrix4x4&amp; cov,
  21. const double&amp; z, const unsigned int&amp; plane"
  22. initList = "m_parameters(state), m_covariance(cov), m_z(z), m_plane(plane)">
  23. </constructor>
  24. <attribute type = 'Gaudi::Vector4'
  25. name = 'parameters'
  26. desc = 'the parameter vector'
  27. setMeth = 'FALSE'
  28. access = 'PRIVATE'
  29. nonconstaccessor = 'TRUE'/>
  30. <attribute type = 'Gaudi::SymMatrix4x4'
  31. name = 'covariance'
  32. desc = 'covariance matrix (indices 0 ... 3 for x, y, tx, ty)'
  33. setMeth = 'FALSE'
  34. access = 'PRIVATE'
  35. nonconstaccessor = 'TRUE'/>
  36. <attribute type = 'double'
  37. name = 'z'
  38. desc = 'the z-position of the state'
  39. setMeth = 'FALSE'
  40. access = 'PRIVATE'/>
  41.  
  42. <attribute type = 'unsigned int'
  43. name = 'plane'
  44. desc = 'the plane of the state'/>
  45.  
  46. <method type = 'double'
  47. name = 'errX2'
  48. desc = 'Retrieve the squared error on the x-position of the state'
  49. const = 'TRUE'>
  50. <code>
  51. return m_covariance(0, 0);
  52. </code>
  53. </method>
  54. <method type = 'double'
  55. name = 'errY2'
  56. desc = 'Retrieve the squared error on the y-position of the state'
  57. const = 'TRUE'>
  58. <code>
  59. return m_covariance(1, 1);
  60. </code>
  61. </method>
  62. <method type = 'double'
  63. name = 'errTx2'
  64. desc = 'Retrieve the squared error on the x-slope of the state'
  65. const = 'TRUE'>
  66. <code>
  67. return m_covariance(2, 2);
  68. </code>
  69. </method>
  70. <method type = 'double'
  71. name = 'errTy2'
  72. desc = 'Retrieve the squared error on the y-slope of the state'
  73. const = 'TRUE'>
  74. <code>
  75. return m_covariance(3, 3);
  76. </code>
  77. </method>
  78.  
  79. <method type = 'LHCb::TbState*'
  80. name = 'clone'
  81. desc = 'Clone the TbState (you then own the pointer)'
  82. virtual = 'TRUE'
  83. const = 'TRUE'>
  84. </method>
  85. <method type = 'Gaudi::XYZPoint'
  86. name = 'position'
  87. desc = 'Retrieve the 3D-position vector (x,y,z) of the state'
  88. const = 'TRUE'>
  89. <code>
  90. return Gaudi::XYZPoint(m_parameters[0], m_parameters[1], m_z);
  91. </code>
  92. </method>
  93. <method type = 'double'
  94. name = 'x'
  95. desc = 'Retrieve the x-position of the state'
  96. const = 'TRUE'>
  97. <code>
  98. return m_parameters[0];
  99. </code>
  100. </method>
  101. <method type = 'double'
  102. name = 'y'
  103. desc = 'Retrieve the y-position of the state'
  104. const = 'TRUE'>
  105. <code>
  106. return m_parameters[1];
  107. </code>
  108. </method>
  109. <method type = 'Gaudi::XYZVector'
  110. name = 'slopes'
  111. desc = 'Retrieve the slopes (dx/dz, dy/dz, 1.) of the state'
  112. const = 'TRUE'>
  113. <code>
  114. return Gaudi::XYZVector(m_parameters[2], m_parameters[3], 1.);
  115. </code>
  116. </method>
  117. <method type = 'double'
  118. name = 'tx'
  119. desc = 'Retrieve the Tx=dx/dz slope of the state'
  120. const = 'TRUE'>
  121. <code>
  122. return m_parameters[2];
  123. </code>
  124. </method>
  125. <method type = 'double'
  126. name = 'ty'
  127. desc = 'Retrieve the Ty=dy/dz slope of the state'
  128. const = 'TRUE'>
  129. <code>
  130. return m_parameters[3];
  131. </code>
  132. </method>
  133. <method name = 'setX'
  134. argList = 'const double value'
  135. desc = 'Update the x-position of the state'>
  136. <code>
  137. m_parameters[0] = value;
  138. </code>
  139. </method>
  140. <method name = 'setY'
  141. argList = 'const double value'
  142. desc = 'Update the y-position of the state'>
  143. <code>
  144. m_parameters[1] = value;
  145. </code>
  146. </method>
  147. <method name = 'setZ'
  148. argList = 'const double value'
  149. desc = 'Update the z-position of the state'>
  150. <code>
  151. m_z = value;
  152. </code>
  153. </method>
  154. <method name = 'setTx'
  155. argList = 'const double value'
  156. desc = 'Update the x-slope tx = dx/dz of the state'>
  157. <code>
  158. m_parameters[2] = value;
  159. </code>
  160. </method>
  161. <method name = 'setTy'
  162. argList = 'const double value'
  163. desc = 'Update the y-slope ty = dy/dz of the state'>
  164. <code>
  165. m_parameters[3] = value;
  166. </code>
  167. </method>
  168. <method name = 'setState'
  169. argList = 'double x, double y, double tx, double ty, double z'
  170. desc = 'Update the state vector'/>
  171. <method name = 'setCovariance'
  172. argList = 'Gaudi::SymMatrix4x4 value'
  173. desc = 'Update the covariance matrix'>
  174. <code>
  175. m_covariance = value;
  176. </code>
  177. </method>
  178. <method name = "fillStream"
  179. desc = "Print to message stream"
  180. type = "MsgStream&amp;"
  181. const = "TRUE">
  182. <arg name = "os" type = "MsgStream" inout = "BOTH"/>
  183. <code>
  184. os &lt;&lt; "{ "
  185. &lt;&lt; "parameters: " &lt;&lt; m_parameters &lt;&lt; std::endl
  186. &lt;&lt; "z: " &lt;&lt; m_z &lt;&lt; std::endl
  187. &lt;&lt; " }";
  188. return os;
  189. </code>
  190. </method>
  191. </class>
  192. </package>
  193. </gdd>
  194.