doc: Document NTP clock interface
This commit is contained in:
parent
20dc9da16b
commit
5c3f76f04d
|
@ -78,43 +78,38 @@ $(function() {
|
|||
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>  </div>
|
||||
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>  <span class="comment">/* network time protocol */</span></div>
|
||||
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>  <span class="keyword">namespace </span>ntp {</div>
|
||||
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>  uint64_t now();</div>
|
||||
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>  </div>
|
||||
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>  <span class="comment">/* return the difference of ntp timestamps in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>  uint64_t diff(uint64_t ntp1, uint64_t ntp2);</div>
|
||||
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>  </div>
|
||||
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  <span class="comment">/* Calculate the difference between now</span></div>
|
||||
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * (a wall clock reading when the function is called) and "then"</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"> * The result is in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>  uint64_t diff_now(uint64_t then);</div>
|
||||
<div class="line"><a name="l00020"></a><span class="lineno"> 20</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">/* high-resolution clock */</span></div>
|
||||
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>  <span class="keyword">namespace </span>hrc {</div>
|
||||
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>  <span class="keyword">typedef</span> std::chrono::high_resolution_clock::time_point hrc_t;</div>
|
||||
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>  </div>
|
||||
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  hrc_t now();</div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  </div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="comment">/* the result is in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  uint64_t diff(hrc_t hrc1, hrc_t hrc2);</div>
|
||||
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  </div>
|
||||
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  <span class="comment">/* the result is in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  uint64_t diff_now(hrc_t then);</div>
|
||||
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>  </div>
|
||||
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  uint64_t diff_now_us(hrc_t& then);</div>
|
||||
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  };</div>
|
||||
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  </div>
|
||||
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  uint64_t ms_to_jiffies(uint64_t ms);</div>
|
||||
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  uint64_t jiffies_to_ms(uint64_t jiffies);</div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  </div>
|
||||
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#ifdef _WIN32</span></div>
|
||||
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keywordtype">int</span> gettimeofday(<span class="keyword">struct</span> timeval *tp, <span class="keyword">struct</span> timezone *tzp);</div>
|
||||
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#endif</span></div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  };</div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</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>uvg_rtp = uvgrtp;</div>
|
||||
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>  uint64_t now();</div>
|
||||
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>  </div>
|
||||
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  uint64_t diff(uint64_t ntp1, uint64_t ntp2);</div>
|
||||
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  </div>
|
||||
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  uint64_t diff_now(uint64_t then);</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>  </div>
|
||||
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="comment">/* high-resolution clock */</span></div>
|
||||
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="keyword">namespace </span>hrc {</div>
|
||||
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keyword">typedef</span> std::chrono::high_resolution_clock::time_point hrc_t;</div>
|
||||
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  </div>
|
||||
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  hrc_t now();</div>
|
||||
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  </div>
|
||||
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  <span class="comment">/* the result is in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  uint64_t diff(hrc_t hrc1, hrc_t hrc2);</div>
|
||||
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  </div>
|
||||
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="comment">/* the result is in milliseconds */</span></div>
|
||||
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  uint64_t diff_now(hrc_t then);</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>  uint64_t diff_now_us(hrc_t& then);</div>
|
||||
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  };</div>
|
||||
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  </div>
|
||||
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  uint64_t ms_to_jiffies(uint64_t ms);</div>
|
||||
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  uint64_t jiffies_to_ms(uint64_t jiffies);</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="preprocessor">#ifdef _WIN32</span></div>
|
||||
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordtype">int</span> gettimeofday(<span class="keyword">struct</span> timeval *tp, <span class="keyword">struct</span> timezone *tzp);</div>
|
||||
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor">#endif</span></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> };</div>
|
||||
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  </div>
|
||||
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keyword">namespace </span>uvg_rtp = uvgrtp;</div>
|
||||
</div><!-- fragment --></div><!-- contents -->
|
||||
<!-- start footer part -->
|
||||
<hr class="footer"/><address class="footer"><small>
|
||||
|
|
|
@ -7,18 +7,39 @@ namespace uvgrtp {
|
|||
|
||||
/* network time protocol */
|
||||
namespace ntp {
|
||||
/**
|
||||
* \brief Get current time in NTP units
|
||||
*
|
||||
* \return NTP timestamp
|
||||
*/
|
||||
uint64_t now();
|
||||
|
||||
/* return the difference of ntp timestamps in milliseconds */
|
||||
/**
|
||||
* \brief Calculate the time difference of two NTP times
|
||||
*
|
||||
* The second timestamp is subtracted from the first one
|
||||
*
|
||||
* \param ntp1 First NTP timestamp
|
||||
* \param ntp2 Second NTP timestamp
|
||||
*
|
||||
* \return Difference of the timestamps in milliseconds
|
||||
*/
|
||||
uint64_t diff(uint64_t ntp1, uint64_t ntp2);
|
||||
|
||||
/* Calculate the difference between now
|
||||
* (a wall clock reading when the function is called) and "then"
|
||||
/**
|
||||
* \brief Calculate the time difference of two NTP times
|
||||
*
|
||||
* The result is in milliseconds */
|
||||
* \details This function calls uvgrtp::clock::ntp::now()
|
||||
* and then subtracts the input parameter from that timestamp value.
|
||||
*
|
||||
* \param then NTP timestamp
|
||||
*
|
||||
* \return Difference of the timestamps in milliseconds
|
||||
*/
|
||||
uint64_t diff_now(uint64_t then);
|
||||
};
|
||||
|
||||
/// \cond DO_NOT_DOCUMENT
|
||||
/* high-resolution clock */
|
||||
namespace hrc {
|
||||
typedef std::chrono::high_resolution_clock::time_point hrc_t;
|
||||
|
@ -40,6 +61,7 @@ namespace uvgrtp {
|
|||
#ifdef _WIN32
|
||||
int gettimeofday(struct timeval *tp, struct timezone *tzp);
|
||||
#endif
|
||||
/// \endcond
|
||||
};
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue