📄 classdbtimeseriesprocessor.html
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>FastDB: TemplatedbTimeSeriesProcessor< T > class Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.3.5 --><div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a></div><h1>dbTimeSeriesProcessor< T > Class Template Reference</h1><code>#include <<a class="el" href="timeseries_8h-source.html">timeseries.h</a>></code><p><a href="classdbTimeSeriesProcessor-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0><tr><td></td></tr><tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>virtual void </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora0">process</a> (T const &)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora1">add</a> (oid_t oid, T const &data)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora2">select</a> (oid_t oid, time_t from, time_t till)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>time_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora3">getFirstTime</a> (oid_t oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>time_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora4">getLastTime</a> (oid_t oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>size_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora5">getNumberOfElements</a> (oid_t oid)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>size_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora6">getInterval</a> (oid_t oid, time_t from, time_t till, T *buf, size_t bufSize)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora7">getElement</a> (oid_t oid, T &elem, time_t t)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>size_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora8">getFirstInterval</a> (oid_t oid, time_t till, T *buf, size_t bufSize)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>size_t </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora9">getLastInterval</a> (oid_t oid, time_t from, T *buf, size_t bufSize)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora10">hasElement</a> (oid_t oid, time_t t)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora11">dbTimeSeriesProcessor</a> (<a class="el" href="classdbDatabase.html">dbDatabase</a> &database, int minElementsInBlock=100, int maxElementsInBlock=100, time_t maxBlockTimeInterval=0)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora12">remove</a> (oid_t oid, time_t from, time_t till)</td></tr><tr><td class="memItemLeft" nowrap align=right valign=top>int </td><td class="memItemRight" valign=bottom><a class="el" href="classdbTimeSeriesProcessor.html#dbTimeSeriesProcessora14">_openIteratorCursor</a> (<a class="el" href="classdbCursor.html">dbCursor</a>< <a class="el" href="classdbTimeSeriesBlock.html">dbTimeSeriesBlock</a>< T > > &cursor, oid_t oid, time_t from, time_t till)</td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2><h3>template<class T><br> class dbTimeSeriesProcessor< T ></h3>Time series processor.<br> Element of time series can be arbitrary type with declared TYPE_DESCRIPTOR and defined <code>time_t time()</code> method <p><hr><h2>Constructor & Destructor Documentation</h2><a class="anchor" name="dbTimeSeriesProcessora11" doxytag="dbTimeSeriesProcessor::dbTimeSeriesProcessor" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" colspan="4">template<class T> </td> </tr> <tr> <td class="md" nowrap valign="top"> <a class="el" href="classdbTimeSeriesProcessor.html">dbTimeSeriesProcessor</a>< T >::<a class="el" href="classdbTimeSeriesProcessor.html">dbTimeSeriesProcessor</a> </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classdbDatabase.html">dbDatabase</a> & </td> <td class="mdname" nowrap> <em>database</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>minElementsInBlock</em> = 100, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>maxElementsInBlock</em> = 100, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>time_t </td> <td class="mdname" nowrap> <em>maxBlockTimeInterval</em> = 0</td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [inline]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>TimeSeries processor constructor <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>database</em> </td><td>reference to the database </td></tr> <tr><td valign=top><em>minElementsInBlock</em> </td><td>preallocated number of the elements in the block: array with specified number of elements will be allocated for new block </td></tr> <tr><td valign=top><em>maxElementsInBlock</em> </td><td>maximal number of the elements in the block: block will be splitten if it has maxElementsInBlock elements and new is added to the block </td></tr> <tr><td valign=top><em>maxBlockTimeInterval</em> </td><td>maximal interval between first and last element in the block, new block will be created if adding new element to the block cause violation of this assumption. If maxBlockTimeInterval is 0, then it is assigned to doubled number of seconds in day multipied on maxElementsInBlock </td></tr> </table></dl> </td> </tr></table><hr><h2>Member Function Documentation</h2><a class="anchor" name="dbTimeSeriesProcessora14" doxytag="dbTimeSeriesProcessor::_openIteratorCursor" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" colspan="4">template<class T> </td> </tr> <tr> <td class="md" nowrap valign="top"> int <a class="el" href="classdbTimeSeriesProcessor.html">dbTimeSeriesProcessor</a>< T >::_openIteratorCursor </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="classdbCursor.html">dbCursor</a>< <a class="el" href="classdbTimeSeriesBlock.html">dbTimeSeriesBlock</a>< T > > & </td> <td class="mdname" nowrap> <em>cursor</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>oid_t </td> <td class="mdname" nowrap> <em>oid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>time_t </td> <td class="mdname" nowrap> <em>from</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>time_t </td> <td class="mdname" nowrap> <em>till</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [inline]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>This method should be actually private but since there is no portable way of declaration of friend templates classes recognized by all C++ compiler, it is made public. Do not use this method yourself. </td> </tr></table><a class="anchor" name="dbTimeSeriesProcessora1" doxytag="dbTimeSeriesProcessor::add" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" colspan="4">template<class T> </td> </tr> <tr> <td class="md" nowrap valign="top"> void <a class="el" href="classdbTimeSeriesProcessor.html">dbTimeSeriesProcessor</a>< T >::add </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">oid_t </td> <td class="mdname" nowrap> <em>oid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>T const & </td> <td class="mdname" nowrap> <em>data</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [inline]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Add new element <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>oid</em> </td><td>time series identifer (OID of the object associated with this time series) </td></tr> <tr><td valign=top><em>data</em> </td><td>reference to the inserted element </td></tr> </table></dl> </td> </tr></table><a class="anchor" name="dbTimeSeriesProcessora7" doxytag="dbTimeSeriesProcessor::getElement" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" colspan="4">template<class T> </td> </tr> <tr> <td class="md" nowrap valign="top"> bool <a class="el" href="classdbTimeSeriesProcessor.html">dbTimeSeriesProcessor</a>< T >::getElement </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">oid_t </td> <td class="mdname" nowrap> <em>oid</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>T & </td> <td class="mdname" nowrap> <em>elem</em>, </td> </tr> <tr> <td></td> <td></td> <td class="md" nowrap>time_t </td> <td class="mdname" nowrap> <em>t</em></td> </tr> <tr> <td></td> <td class="md">) </td> <td class="md" colspan="2"><code> [inline]</code></td> </tr> </table> </td> </tr></table><table cellspacing=5 cellpadding=0 border=0> <tr> <td> </td> <td><p>Get time series element with specified time <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign=top><em>oid</em> </td><td>time series identifer (OID of the object associated with this time series) </td></tr> <tr><td valign=top><em>elem</em> </td><td>reference to the extracted element </td></tr> <tr><td valign=top><em>t</em> </td><td>timestamp of extracted element </td></tr>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -