1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 2<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> 3<title>oscl_file_stats.h Source File</title> 4<link href="doxygen.css" rel="stylesheet" type="text/css"> 5</head><body> 6<!-- Generated by Doxygen 1.2.18 --> 7<center> 8<a class="qindex" href="index.html">Main Page</a> <a class="qindex" href="modules.html">Modules</a> <a class="qindex" href="hierarchy.html">Class Hierarchy</a> <a class="qindex" href="annotated.html">Data Structures</a> <a class="qindex" href="files.html">File List</a> <a class="qindex" href="functions.html">Data Fields</a> <a class="qindex" href="globals.html">Globals</a> </center> 9<hr><h1>oscl_file_stats.h</h1><a href="oscl__file__stats_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre>00001 <span class="comment">// -*- c++ -*-</span> 1000002 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> 1100003 1200004 <span class="comment">// O S C L _ F I L E _ STATS</span> 1300005 1400006 <span class="comment">// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =</span> 1500007 1600019 <span class="preprocessor">#ifndef OSCL_FILE_STATS_H_INCLUDED</span> 1700020 <span class="preprocessor"></span><span class="preprocessor">#define OSCL_FILE_STATS_H_INCLUDED</span> 1800021 <span class="preprocessor"></span> 1900022 <span class="preprocessor">#include "<a class="code" href="oscl__base_8h.html">oscl_base.h</a>"</span> 2000023 <span class="preprocessor">#include "<a class="code" href="osclconfig__io_8h.html">osclconfig_io.h</a>"</span> 2100024 22<a name="l00025"></a><a class="code" href="group__osclio.html#a19">00025</a> <span class="preprocessor">#define OSCL_FILE_STATS_LOGGER_NODE "OsclFileStats"</span> 2300026 <span class="preprocessor"></span> 24<a name="l00027"></a><a class="code" href="classOsclFileStatsItem.html">00027</a> <span class="keyword">class </span><a class="code" href="classOsclFileStatsItem.html">OsclFileStatsItem</a> 2500028 { 2600029 <span class="keyword">public</span>: 27<a name="l00030"></a><a class="code" href="classOsclFileStatsItem.html#m0">00030</a> uint32 <a class="code" href="classOsclFileStatsItem.html#m0">iOpCount</a>; 28<a name="l00031"></a><a class="code" href="classOsclFileStatsItem.html#m1">00031</a> uint32 <a class="code" href="classOsclFileStatsItem.html#m1">iParam</a>; 29<a name="l00032"></a><a class="code" href="classOsclFileStatsItem.html#m2">00032</a> <a class="code" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> <a class="code" href="classOsclFileStatsItem.html#m2">iParam2</a>; 30<a name="l00033"></a><a class="code" href="classOsclFileStatsItem.html#m3">00033</a> uint32 <a class="code" href="classOsclFileStatsItem.html#m3">iStartTick</a>; 31<a name="l00034"></a><a class="code" href="classOsclFileStatsItem.html#m4">00034</a> uint32 <a class="code" href="classOsclFileStatsItem.html#m4">iTotalTicks</a>; 3200035 }; 3300036 34<a name="l00037"></a><a class="code" href="group__osclio.html#a29">00037</a> <span class="keyword">enum</span> <a class="code" href="group__osclio.html#a29">TOsclFileOp</a> 3500038 { 3600039 <a class="code" href="group__osclio.html#a29a2">EOsclFileOp_Open</a> 3700040 , <a class="code" href="group__osclio.html#a29a3">EOsclFileOp_Close</a> 3800041 , <a class="code" href="group__osclio.html#a29a4">EOsclFileOp_Read</a> 3900042 , <a class="code" href="group__osclio.html#a29a5">EOsclFileOp_Write</a> 4000043 , <a class="code" href="group__osclio.html#a29a6">EOsclFileOp_Seek</a> 4100044 , <a class="code" href="group__osclio.html#a29a7">EOsclFileOp_Tell</a> 4200045 , <a class="code" href="group__osclio.html#a29a8">EOsclFileOp_Size</a> 4300046 , <a class="code" href="group__osclio.html#a29a9">EOsclFileOp_Flush</a> 4400047 , <a class="code" href="group__osclio.html#a29a10">EOsclFileOp_EndOfFile</a> 4500048 , <a class="code" href="group__osclio.html#a29a11">EOsclFileOp_NativeOpen</a> 4600049 , <a class="code" href="group__osclio.html#a29a12">EOsclFileOp_NativeClose</a> 4700050 , <a class="code" href="group__osclio.html#a29a13">EOsclFileOp_NativeRead</a> 4800051 , <a class="code" href="group__osclio.html#a29a14">EOsclFileOp_NativeWrite</a> 4900052 , <a class="code" href="group__osclio.html#a29a15">EOsclFileOp_NativeSeek</a> 5000053 , <a class="code" href="group__osclio.html#a29a16">EOsclFileOp_NativeTell</a> 5100054 , <a class="code" href="group__osclio.html#a29a17">EOsclFileOp_NativeSize</a> 5200055 , <a class="code" href="group__osclio.html#a29a18">EOsclFileOp_NativeFlush</a> 5300056 , <a class="code" href="group__osclio.html#a29a19">EOsclFileOp_NativeEndOfFile</a> 5400057 , <a class="code" href="group__osclio.html#a29a20">EOsclFileOp_Last</a> 5500058 }; 5600059 <span class="keyword">static</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* <span class="keyword">const</span> TOsclFileOpStr[] = 5700060 { 5800061 <span class="stringliteral">"Open"</span> 5900062 , <span class="stringliteral">"Close"</span> 6000063 , <span class="stringliteral">"Read"</span> 6100064 , <span class="stringliteral">"Write"</span> 6200065 , <span class="stringliteral">"Seek"</span> 6300066 , <span class="stringliteral">"Tell"</span> 6400067 , <span class="stringliteral">"Size"</span> 6500068 , <span class="stringliteral">"Flush"</span> 6600069 , <span class="stringliteral">"EndOfFile"</span> 6700070 , <span class="stringliteral">"NativeOpen"</span> 6800071 , <span class="stringliteral">"NativeClose"</span> 6900072 , <span class="stringliteral">"NativeRead"</span> 7000073 , <span class="stringliteral">"NativeWrite"</span> 7100074 , <span class="stringliteral">"NativeSeek"</span> 7200075 , <span class="stringliteral">"NativeTell"</span> 7300076 , <span class="stringliteral">"NativeSize"</span> 7400077 , <span class="stringliteral">"NativeFlush"</span> 7500078 , <span class="stringliteral">"NativeEndOfFile"</span> 7600079 , <span class="stringliteral">"???"</span> 7700080 }; 7800081 7900082 <span class="keyword">class </span><a class="code" href="classPVLogger.html">PVLogger</a>; 8000083 <span class="keyword">class </span><a class="code" href="classOscl__File.html">Oscl_File</a>; 8100084 82<a name="l00085"></a><a class="code" href="classOsclFileStats.html">00085</a> <span class="keyword">class </span><a class="code" href="classOsclFileStats.html">OsclFileStats</a> 8300086 { 8400087 <span class="keyword">public</span>: 8500088 <a class="code" href="classOsclFileStats.html#a0">OsclFileStats</a>(<a class="code" href="classOscl__File.html">Oscl_File</a>* c); 8600089 <span class="keywordtype">void</span> <a class="code" href="classOsclFileStats.html#a1">Start</a>(uint32& aTicks); 8700090 <span class="keywordtype">void</span> <a class="code" href="classOsclFileStats.html#a2">End</a>(<a class="code" href="group__osclio.html#a29">TOsclFileOp</a> aOp, uint32 aStart, uint32 aParam = 0, <a class="code" href="osclconfig__io_8h.html#a48">TOsclFileOffset</a> aParam2 = 0); 8800091 <span class="keywordtype">void</span> <a class="code" href="classOsclFileStats.html#a3">Log</a>(<a class="code" href="group__osclio.html#a29">TOsclFileOp</a>, <a class="code" href="classPVLogger.html">PVLogger</a>*, uint32); 8900092 <span class="keywordtype">void</span> <a class="code" href="classOsclFileStats.html#a4">LogAll</a>(<a class="code" href="classPVLogger.html">PVLogger</a>*, uint32); 9000093 9100094 <span class="keyword">private</span>: 9200095 <a class="code" href="classOscl__File.html">Oscl_File</a>* iContainer; 9300096 <span class="comment">//fixed array of the max time per item.</span> 9400097 <a class="code" href="classOsclFileStatsItem.html">OsclFileStatsItem</a> iStats[<a class="code" href="group__osclio.html#a29a20">EOsclFileOp_Last</a>]; 9500098 }; 9600099 9700100 9800101 9900102 <span class="preprocessor">#endif</span> 10000103 <span class="preprocessor"></span> 101</pre></div><hr size="1"><img src="pvlogo_small.jpg"><address style="align: right;"><small>OSCL API</small> 102<address style="align: left;"><small>Posting Version: OPENCORE_20090310 </small> 103</small></address> 104</body> 105</html> 106