<!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>xrootd: XrdClMonitor.hh Source File</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" /> </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">xrootd </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="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> </ul> </div> <div id="navrow2" class="tabs2"> <ul class="tablist"> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>File Members</span></a></li> </ul> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_cc07005933c58fdd66ad39025e40a12c.html">XrdCl</a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="headertitle"> <div class="title">XrdClMonitor.hh</div> </div> </div><!--header--> <div class="contents"> <a href="XrdClMonitor_8hh.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">//------------------------------------------------------------------------------</span></div> <div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">// Copyright (c) 2012 by the Board of Trustees of the Leland Stanford, Jr.,</span></div> <div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment">// University</span></div> <div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">// Copyright (c) 2012 by European Organization for Nuclear Research (CERN)</span></div> <div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">// Author: Andrew Hanushevsky <abh@stanford.edu></span></div> <div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment">// Author: Lukasz Janyst <ljanyst@cern.ch></span></div> <div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">//------------------------------------------------------------------------------</span></div> <div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment">// XRootD is free software: you can redistribute it and/or modify</span></div> <div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment">// it under the terms of the GNU Lesser General Public License as published by</span></div> <div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">// the Free Software Foundation, either version 3 of the License, or</span></div> <div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment">// (at your option) any later version.</span></div> <div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">//</span></div> <div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">// XRootD is distributed in the hope that it will be useful,</span></div> <div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment">// but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div> <div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div> <div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">// GNU General Public License for more details.</span></div> <div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment">//</span></div> <div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">// You should have received a copy of the GNU Lesser General Public License</span></div> <div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">// along with XRootD. If not, see <http://www.gnu.org/licenses/>.</span></div> <div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment">//------------------------------------------------------------------------------</span></div> <div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div> <div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment">//------------------------------------------------------------------------------</span></div> <div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"></span><span class="comment">//------------------------------------------------------------------------------</span></div> <div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div> <div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#ifndef __XRD_CL_MONITOR_HH__</span></div> <div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"></span><span class="preprocessor">#define __XRD_CL_MONITOR_HH__</span></div> <div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span></div> <div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#include "<a class="code" href="XrdClFileSystem_8hh.html">XrdCl/XrdClFileSystem.hh</a>"</span></div> <div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div> <div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">namespace </span>XrdCl</div> <div class="line"><a name="l00047"></a><span class="lineno"> 47</span> {</div> <div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  <span class="keyword">class </span>URL;</div> <div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div> <div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="comment">//----------------------------------------------------------------------------</span></div> <div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"></span> <span class="comment">//----------------------------------------------------------------------------</span></div> <div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html"> 53</a></span>  <span class="keyword">class </span><a class="code" href="classXrdCl_1_1Monitor.html" title="An abstract class to describe the client-side monitoring plugin interface.">Monitor</a></div> <div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  {</div> <div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="keyword">public</span>:</div> <div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#ab873d512b39577a333e163e8afea6d1f"> 59</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#ab873d512b39577a333e163e8afea6d1f" title="Constructor.">Monitor</a>() {}</div> <div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div> <div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aaa8ffc223d37336813736856e946a470"> 64</a></span>  <span class="keyword">virtual</span> <a class="code" href="classXrdCl_1_1Monitor.html#aaa8ffc223d37336813736856e946a470" title="Destructor.">~Monitor</a>() {}</div> <div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div> <div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html"> 69</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html" title="Describe a server login event.">ConnectInfo</a></div> <div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  {</div> <div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a3b0ca3e8a70027296a565b2bf68fba61"> 71</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a3b0ca3e8a70027296a565b2bf68fba61">ConnectInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a0875eeb7e5d126eb753298692e2ba009" title="Number of streams.">streams</a>( 0 )</div> <div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  {</div> <div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a880689c93eb0669dc8295b238895ad25" title="gettimeofday() when login started">sTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a880689c93eb0669dc8295b238895ad25" title="gettimeofday() when login started">sTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a91d76b834c5ba0a244ad4fc7d658eea1" title="gettimeofday() when login ended">eTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a91d76b834c5ba0a244ad4fc7d658eea1" title="gettimeofday() when login ended">eTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  }</div> <div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a07782c0b39acdc28cdd1e9bbb94e066b"> 76</a></span>  std::string <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a07782c0b39acdc28cdd1e9bbb94e066b" title="user:port">server</a>; </div> <div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#aaba7025adc145aaf30458e2618ef0c29"> 77</a></span>  std::string <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#aaba7025adc145aaf30458e2618ef0c29" title="authentication protocol used or empty if none">auth</a>; </div> <div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a880689c93eb0669dc8295b238895ad25"> 78</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a880689c93eb0669dc8295b238895ad25" title="gettimeofday() when login started">sTOD</a>; </div> <div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a91d76b834c5ba0a244ad4fc7d658eea1"> 79</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a91d76b834c5ba0a244ad4fc7d658eea1" title="gettimeofday() when login ended">eTOD</a>; </div> <div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a0875eeb7e5d126eb753298692e2ba009"> 80</a></span>  uint16_t <a class="code" href="structXrdCl_1_1Monitor_1_1ConnectInfo.html#a0875eeb7e5d126eb753298692e2ba009" title="Number of streams.">streams</a>; </div> <div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  };</div> <div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div> <div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html"> 86</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html" title="Describe a server logout event.">DisconnectInfo</a></div> <div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  {</div> <div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a54e8519ed04cef13846e6bf19f630c7c"> 88</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a54e8519ed04cef13846e6bf19f630c7c">DisconnectInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a3437989dd7ec6cb397ea0cce25d90589" title="Number of bytes received.">rBytes</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a7b23fac944b9799592a9e9248bbf2c21" title="Number of bytes sent.">sBytes</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a4c0cae8637b4d0c3e22d9041c5b96364" title="Seconds connected to the server.">cTime</a>(0)</div> <div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  {}</div> <div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a41894e9d36629e69920a80f0c2b84f5f"> 90</a></span>  std::string <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a41894e9d36629e69920a80f0c2b84f5f" title="user:port">server</a>; </div> <div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a3437989dd7ec6cb397ea0cce25d90589"> 91</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a3437989dd7ec6cb397ea0cce25d90589" title="Number of bytes received.">rBytes</a>; </div> <div class="line"><a name="l00092"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a7b23fac944b9799592a9e9248bbf2c21"> 92</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a7b23fac944b9799592a9e9248bbf2c21" title="Number of bytes sent.">sBytes</a>; </div> <div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a4c0cae8637b4d0c3e22d9041c5b96364"> 93</a></span>  time_t <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a4c0cae8637b4d0c3e22d9041c5b96364" title="Seconds connected to the server.">cTime</a>; </div> <div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a392e83e6358774e6afefba84a6699c11"> 94</a></span>  <a class="code" href="structXrdCl_1_1Status.html" title="Procedure execution status.">Status</a> <a class="code" href="structXrdCl_1_1Monitor_1_1DisconnectInfo.html#a392e83e6358774e6afefba84a6699c11" title="Disconnection status.">status</a>; </div> <div class="line"><a name="l00095"></a><span class="lineno"> 95</span>  };</div> <div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div> <div class="line"><a name="l00097"></a><span class="lineno"> 97</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html"> 100</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html" title="Describe a file open event to the monitor.">OpenInfo</a></div> <div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  {</div> <div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#aa8466cb761f54a44ad4b865c146d9014"> 102</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#aa8466cb761f54a44ad4b865c146d9014">OpenInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a733094388f8de30d5bd572ba430b99d7" title="File in question.">file</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a695c7a66ebbf6cd9224e266bcb937c9e" title="File size in bytes.">fSize</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#aa3526653ebe377290e560e099febb0b0" title="OpenFlags.">oFlags</a>(0) {}</div> <div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a733094388f8de30d5bd572ba430b99d7"> 103</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1URL.html" title="URL representation.">URL</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a733094388f8de30d5bd572ba430b99d7" title="File in question.">file</a>; </div> <div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a872519460d248dcc33bc2207ef4826af"> 104</a></span>  std::string <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a872519460d248dcc33bc2207ef4826af" title="Actual fata server.">dataServer</a>; </div> <div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a695c7a66ebbf6cd9224e266bcb937c9e"> 105</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#a695c7a66ebbf6cd9224e266bcb937c9e" title="File size in bytes.">fSize</a>; </div> <div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#aa3526653ebe377290e560e099febb0b0"> 106</a></span>  uint16_t <a class="code" href="structXrdCl_1_1Monitor_1_1OpenInfo.html#aa3526653ebe377290e560e099febb0b0" title="OpenFlags.">oFlags</a>; </div> <div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  };</div> <div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div> <div class="line"><a name="l00109"></a><span class="lineno"> 109</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00112"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html"> 112</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html" title="Describe a file close event.">CloseInfo</a></div> <div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  {</div> <div class="line"><a name="l00114"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a6a1b72846721c94ab342b0e5b06af9c2"> 114</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a6a1b72846721c94ab342b0e5b06af9c2">CloseInfo</a>():</div> <div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ad9d6bfc6db43244660d9823ab797ed37" title="The file in question.">file</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ae9d2df688ebaf9e593b6e8c0474f0380" title="Total number of bytes read via read.">rBytes</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a968679cbdb0489b3eadaf5a4bf3c0927" title="Total number of bytes read via readv.">vBytes</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afcf58ef01b7b68fe806df15df5e523f8" title="Total number of bytes written.">wBytes</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a8ba20c696495929b1da59d6835a89877" title="Total count of readv segments.">vSegs</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afd5233fff9e5962ddc44caa31b58dda7" title="Total count of reads.">rCount</a>(0),</div> <div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#acc38cb80daf19229c7e1694b2c82677f" title="Total count of readv.">vCount</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4ce76310117b80a71a8235506f595e91" title="Total count of writes.">wCount</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4701e4dd87a62c1d9889f26eb12df883" title="Close status.">status</a>(0)</div> <div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  {</div> <div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#af9566c9f0b8975ba00b8cf17ee9edc90" title="gettimeofday() when file was opened">oTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#af9566c9f0b8975ba00b8cf17ee9edc90" title="gettimeofday() when file was opened">oTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#aa9b3aa90d7f044d7a7d7e1ef9d449a27" title="gettimeofday() when file was closed">cTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#aa9b3aa90d7f044d7a7d7e1ef9d449a27" title="gettimeofday() when file was closed">cTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  }</div> <div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ad9d6bfc6db43244660d9823ab797ed37"> 121</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1URL.html" title="URL representation.">URL</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ad9d6bfc6db43244660d9823ab797ed37" title="The file in question.">file</a>; </div> <div class="line"><a name="l00122"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#af9566c9f0b8975ba00b8cf17ee9edc90"> 122</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#af9566c9f0b8975ba00b8cf17ee9edc90" title="gettimeofday() when file was opened">oTOD</a>; </div> <div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#aa9b3aa90d7f044d7a7d7e1ef9d449a27"> 123</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#aa9b3aa90d7f044d7a7d7e1ef9d449a27" title="gettimeofday() when file was closed">cTOD</a>; </div> <div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ae9d2df688ebaf9e593b6e8c0474f0380"> 124</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#ae9d2df688ebaf9e593b6e8c0474f0380" title="Total number of bytes read via read.">rBytes</a>; </div> <div class="line"><a name="l00125"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a968679cbdb0489b3eadaf5a4bf3c0927"> 125</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a968679cbdb0489b3eadaf5a4bf3c0927" title="Total number of bytes read via readv.">vBytes</a>; </div> <div class="line"><a name="l00126"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afcf58ef01b7b68fe806df15df5e523f8"> 126</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afcf58ef01b7b68fe806df15df5e523f8" title="Total number of bytes written.">wBytes</a>; </div> <div class="line"><a name="l00127"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a8ba20c696495929b1da59d6835a89877"> 127</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a8ba20c696495929b1da59d6835a89877" title="Total count of readv segments.">vSegs</a>; </div> <div class="line"><a name="l00128"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afd5233fff9e5962ddc44caa31b58dda7"> 128</a></span>  uint32_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#afd5233fff9e5962ddc44caa31b58dda7" title="Total count of reads.">rCount</a>; </div> <div class="line"><a name="l00129"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#acc38cb80daf19229c7e1694b2c82677f"> 129</a></span>  uint32_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#acc38cb80daf19229c7e1694b2c82677f" title="Total count of readv.">vCount</a>; </div> <div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4ce76310117b80a71a8235506f595e91"> 130</a></span>  uint32_t <a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4ce76310117b80a71a8235506f595e91" title="Total count of writes.">wCount</a>; </div> <div class="line"><a name="l00131"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4701e4dd87a62c1d9889f26eb12df883"> 131</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1XRootDStatus.html" title="Request status.">XRootDStatus</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1CloseInfo.html#a4701e4dd87a62c1d9889f26eb12df883" title="Close status.">status</a>; </div> <div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  };</div> <div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div> <div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00137"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html"> 137</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html" title="Describe an encountered file-based error.">ErrorInfo</a></div> <div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  {</div> <div class="line"><a name="l00139"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958"> 139</a></span>  <span class="keyword">enum</span> <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958">Operation</a></div> <div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  {</div> <div class="line"><a name="l00141"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a8b2e8750a692d6804bae8482602f3a71"> 141</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a8b2e8750a692d6804bae8482602f3a71" title="Open (ditto)">ErrOpen</a> = 0, </div> <div class="line"><a name="l00142"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958ab2f0b0d3abdd03bf498e5adefda8ff25"> 142</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958ab2f0b0d3abdd03bf498e5adefda8ff25" title="Read.">ErrRead</a>, </div> <div class="line"><a name="l00143"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a6d4969bc7a70a4168843641dbf4e9af9"> 143</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a6d4969bc7a70a4168843641dbf4e9af9" title="Readv.">ErrReadV</a>, </div> <div class="line"><a name="l00144"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a10b5036f035842f5db8ca1304ed796dc"> 144</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a10b5036f035842f5db8ca1304ed796dc" title="Write.">ErrWrite</a>, </div> <div class="line"><a name="l00145"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a7e16f9fcd034cca596a71260b1459b64"> 145</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a7e16f9fcd034cca596a71260b1459b64" title="Unclassified operation.">ErrUnc</a> </div> <div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  };</div> <div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div> <div class="line"><a name="l00148"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#aa4748c5d1ab713e766332d166ebdb44e"> 148</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#aa4748c5d1ab713e766332d166ebdb44e">ErrorInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a72271ba20d5c86e48321848ca1ef08b0" title="The file in question.">file</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a610aad285840d2d97c36230317ecfe8f" title="Status code.">status</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#aa198e9f9afdf48f54051a918f5a97fca" title="The associated operation.">opCode</a>( <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958a7e16f9fcd034cca596a71260b1459b64" title="Unclassified operation.">ErrUnc</a> ) {}</div> <div class="line"><a name="l00149"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a72271ba20d5c86e48321848ca1ef08b0"> 149</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1URL.html" title="URL representation.">URL</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a72271ba20d5c86e48321848ca1ef08b0" title="The file in question.">file</a>; </div> <div class="line"><a name="l00150"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a610aad285840d2d97c36230317ecfe8f"> 150</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1XRootDStatus.html" title="Request status.">XRootDStatus</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a610aad285840d2d97c36230317ecfe8f" title="Status code.">status</a>; </div> <div class="line"><a name="l00151"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#aa198e9f9afdf48f54051a918f5a97fca"> 151</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#a564f4f900261fe9b22d0c04a219a3958">Operation</a> <a class="code" href="structXrdCl_1_1Monitor_1_1ErrorInfo.html#aa198e9f9afdf48f54051a918f5a97fca" title="The associated operation.">opCode</a>; </div> <div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  };</div> <div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div> <div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00157"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html"> 157</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html" title="Describe the transfer.">TransferInfo</a></div> <div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  {</div> <div class="line"><a name="l00159"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a47b6c8f98dd0344708a61db63220191a"> 159</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a47b6c8f98dd0344708a61db63220191a">TransferInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a4a9d4ed64aff79bfadb28c8e6ab1fad7" title="URL of the origin.">origin</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a44d113968942bbbe9db199357a8fe616" title="URL of the target.">target</a>(0) {}</div> <div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a4a9d4ed64aff79bfadb28c8e6ab1fad7"> 160</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1URL.html" title="URL representation.">URL</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a4a9d4ed64aff79bfadb28c8e6ab1fad7" title="URL of the origin.">origin</a>; </div> <div class="line"><a name="l00161"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a44d113968942bbbe9db199357a8fe616"> 161</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1URL.html" title="URL representation.">URL</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html#a44d113968942bbbe9db199357a8fe616" title="URL of the target.">target</a>; </div> <div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  };</div> <div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div> <div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyBInfo.html"> 169</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1CopyBInfo.html">CopyBInfo</a></div> <div class="line"><a name="l00170"></a><span class="lineno"> 170</span>  {</div> <div class="line"><a name="l00171"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyBInfo.html#ac480217c083e22ac62b1e2db2eb261cd"> 171</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html" title="Describe the transfer.">TransferInfo</a> <a class="code" href="structXrdCl_1_1Monitor_1_1CopyBInfo.html#ac480217c083e22ac62b1e2db2eb261cd" title="The transfer in question.">transfer</a>; </div> <div class="line"><a name="l00172"></a><span class="lineno"> 172</span>  };</div> <div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div> <div class="line"><a name="l00174"></a><span class="lineno"> 174</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00177"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html"> 177</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html" title="Describe an end of copy event.">CopyEInfo</a></div> <div class="line"><a name="l00178"></a><span class="lineno"> 178</span>  {</div> <div class="line"><a name="l00179"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a34ce1785e66c4f810ffb757861af39b7"> 179</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a34ce1785e66c4f810ffb757861af39b7">CopyEInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a7228395744d13f8ab30080960cf33b76" title="Number of sources used for the copy.">sources</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ac77447ec28fe548c5b498a3c12c18647" title="Status of the copy.">status</a>(0)</div> <div class="line"><a name="l00180"></a><span class="lineno"> 180</span>  {</div> <div class="line"><a name="l00181"></a><span class="lineno"> 181</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a96b1038b3f15e600ec33c61ad33fc417" title="Copy start time.">bTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a96b1038b3f15e600ec33c61ad33fc417" title="Copy start time.">bTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00182"></a><span class="lineno"> 182</span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ad2d18aea650748e10b19df261de6a852" title="Copy end time.">eTOD</a>.tv_sec = 0; <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ad2d18aea650748e10b19df261de6a852" title="Copy end time.">eTOD</a>.tv_usec = 0;</div> <div class="line"><a name="l00183"></a><span class="lineno"> 183</span>  }</div> <div class="line"><a name="l00184"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a427386410e3a1e30c5ed87737b38f776"> 184</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html" title="Describe the transfer.">TransferInfo</a> <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a427386410e3a1e30c5ed87737b38f776" title="The transfer in question.">transfer</a>; </div> <div class="line"><a name="l00185"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a7228395744d13f8ab30080960cf33b76"> 185</a></span>  <span class="keywordtype">int</span> <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a7228395744d13f8ab30080960cf33b76" title="Number of sources used for the copy.">sources</a>; </div> <div class="line"><a name="l00186"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a96b1038b3f15e600ec33c61ad33fc417"> 186</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#a96b1038b3f15e600ec33c61ad33fc417" title="Copy start time.">bTOD</a>; </div> <div class="line"><a name="l00187"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ad2d18aea650748e10b19df261de6a852"> 187</a></span>  timeval <a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ad2d18aea650748e10b19df261de6a852" title="Copy end time.">eTOD</a>; </div> <div class="line"><a name="l00188"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ac77447ec28fe548c5b498a3c12c18647"> 188</a></span>  <span class="keyword">const</span> <a class="code" href="classXrdCl_1_1XRootDStatus.html" title="Request status.">XRootDStatus</a> *<a class="code" href="structXrdCl_1_1Monitor_1_1CopyEInfo.html#ac77447ec28fe548c5b498a3c12c18647" title="Status of the copy.">status</a>; </div> <div class="line"><a name="l00189"></a><span class="lineno"> 189</span>  };</div> <div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div> <div class="line"><a name="l00191"></a><span class="lineno"> 191</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00194"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html"> 194</a></span>  <span class="keyword">struct </span><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html" title="Describe a checksum event.">CheckSumInfo</a></div> <div class="line"><a name="l00195"></a><span class="lineno"> 195</span>  {</div> <div class="line"><a name="l00196"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#aafdfa447cff61d2f508062b7a274977a"> 196</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#aafdfa447cff61d2f508062b7a274977a">CheckSumInfo</a>(): <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#ac25bffde29dc8cf7b8dc6e3a501d51eb" title="Microseconds to obtain cksum from origin.">oTime</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77497d6ce3190d524949a8409e5f0291" title="Microseconds to obtain cksum from target.">tTime</a>(0), <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77a171e21cfc89a985072ff816c24c7c" title="True if checksum matched, false otherwise.">isOK</a>(false) {}</div> <div class="line"><a name="l00197"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a0527db0b8f0a6b78d1aae5195911477a"> 197</a></span>  <a class="code" href="structXrdCl_1_1Monitor_1_1TransferInfo.html" title="Describe the transfer.">TransferInfo</a> <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a0527db0b8f0a6b78d1aae5195911477a" title="The transfer in question.">transfer</a>; </div> <div class="line"><a name="l00198"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a84f24cfe4b1b1d5d571b4d2fac69f0ad"> 198</a></span>  std::string <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a84f24cfe4b1b1d5d571b4d2fac69f0ad" title="Checksum as <type>:">cksum</a>; </div> <div class="line"><a name="l00199"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#ac25bffde29dc8cf7b8dc6e3a501d51eb"> 199</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#ac25bffde29dc8cf7b8dc6e3a501d51eb" title="Microseconds to obtain cksum from origin.">oTime</a>; </div> <div class="line"><a name="l00200"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77497d6ce3190d524949a8409e5f0291"> 200</a></span>  uint64_t <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77497d6ce3190d524949a8409e5f0291" title="Microseconds to obtain cksum from target.">tTime</a>; </div> <div class="line"><a name="l00201"></a><span class="lineno"><a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77a171e21cfc89a985072ff816c24c7c"> 201</a></span>  <span class="keywordtype">bool</span> <a class="code" href="structXrdCl_1_1Monitor_1_1CheckSumInfo.html#a77a171e21cfc89a985072ff816c24c7c" title="True if checksum matched, false otherwise.">isOK</a>; </div> <div class="line"><a name="l00202"></a><span class="lineno"> 202</span>  };</div> <div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div> <div class="line"><a name="l00204"></a><span class="lineno"> 204</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00208"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991"> 208</a></span>  <span class="keyword">enum</span> <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991">EventCode</a></div> <div class="line"><a name="l00209"></a><span class="lineno"> 209</span>  {</div> <div class="line"><a name="l00210"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a1a221433c374a896487970bef2521e7a"> 210</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a1a221433c374a896487970bef2521e7a" title="CopyBInfo: Copy operation started.">EvCopyBeg</a>, </div> <div class="line"><a name="l00211"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a7cb92047ca3e010411fce3f6a3780bd9"> 211</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a7cb92047ca3e010411fce3f6a3780bd9" title="CopyEInfo: Copy operation ended.">EvCopyEnd</a>, </div> <div class="line"><a name="l00212"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a7e0d890f890ea21adea85ff8e52bae22"> 212</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a7e0d890f890ea21adea85ff8e52bae22" title="CheckSumInfo: File checksummed.">EvCheckSum</a>, </div> <div class="line"><a name="l00213"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a9d41c6f521a763dd7578d7610f305e05"> 213</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a9d41c6f521a763dd7578d7610f305e05" title="OpenInfo: File opened.">EvOpen</a>, </div> <div class="line"><a name="l00214"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a46120165fa7a31129d30b42c3ad62d93"> 214</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a46120165fa7a31129d30b42c3ad62d93" title="CloseInfo: File closed.">EvClose</a>, </div> <div class="line"><a name="l00215"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a914b706b01a06856c7a56ad3d5a7e6b1"> 215</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a914b706b01a06856c7a56ad3d5a7e6b1" title="ErrorInfo: An I/O error occurred.">EvErrIO</a>, </div> <div class="line"><a name="l00216"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991add9617dbff18744fd27a740a899d146a"> 216</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991add9617dbff18744fd27a740a899d146a" title="ConnectInfo: Login into a server.">EvConnect</a>, </div> <div class="line"><a name="l00217"></a><span class="lineno"><a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a3291500590ff5ca0eddbfe7ae64c9c2c"> 217</a></span>  <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991a3291500590ff5ca0eddbfe7ae64c9c2c" title="DisconnectInfo: Logout from a server.">EvDisconnect</a> </div> <div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div> <div class="line"><a name="l00219"></a><span class="lineno"> 219</span>  };</div> <div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div> <div class="line"><a name="l00221"></a><span class="lineno"> 221</span>  <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment"></span> <span class="comment">//------------------------------------------------------------------------</span></div> <div class="line"><a name="l00229"></a><span class="lineno"> 229</span>  <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classXrdCl_1_1Monitor.html#afb7a921ef75098104471d02dfffc66e7">Event</a>( <a class="code" href="classXrdCl_1_1Monitor.html#aed73f723ecfbcd32bd6a35242919b991">EventCode</a> evCode, <span class="keywordtype">void</span> *evData ) = 0;</div> <div class="line"><a name="l00230"></a><span class="lineno"> 230</span>  };</div> <div class="line"><a name="l00231"></a><span class="lineno"> 231</span> };</div> <div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div> <div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor">#endif // __XRD_CL_MONITOR_HH</span></div> </div><!-- fragment --></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>