MOOS 0.2375
|
00001 #include "indexedAlogReader.h" 00002 00004 indexedAlogReader::indexedAlogReader() : 00005 m_alogLineReader(), 00006 m_indexReader(), 00007 m_CurrentLine(0) 00008 {} 00009 00011 indexedAlogReader::~indexedAlogReader() 00012 {} 00013 00015 bool indexedAlogReader::Init( std::string alogFilename ) 00016 { 00017 std::string alogIndexFilename = alogFilename + ".idx"; 00018 00019 try 00020 { 00021 m_indexReader.ReadIndexFile( alogIndexFilename ); 00022 } 00023 catch (...) 00024 { 00025 return false; 00026 } 00027 00028 if( m_alogLineReader.Open( alogFilename ) == false ) 00029 { 00030 return false; 00031 } 00032 00033 return true; 00034 } 00035 00037 void indexedAlogReader::GetNextLine(std::string & line) 00038 { 00039 GetLine( m_CurrentLine++, line ); 00040 } 00041 00043 void indexedAlogReader::GetPrevLine(std::string & line) 00044 { 00045 GetLine( --m_CurrentLine, line ); 00046 } 00047 00049 void indexedAlogReader::GetLine( int lineNum, std::string & line) 00050 { 00051 aloglib::idxRec curRec = m_indexReader.GetLineRecord( lineNum ); 00052 m_alogLineReader.Read( curRec, line ); 00053 } 00054 00056 int indexedAlogReader::GetNumRecords() const 00057 { 00058 return m_indexReader.GetNumRecords(); 00059 } 00060 00062 double indexedAlogReader::GetTime( int i ) const 00063 { 00064 return m_indexReader.GetTime( i ); 00065 } 00066 00068 double indexedAlogReader::GetStartTime() const 00069 { 00070 return m_indexReader.GetStartTime(); 00071 } 00072 00074 const aloglib::idxMsgList& indexedAlogReader::GetMsgList() const 00075 { 00076 return m_indexReader.GetMsgList(); 00077 } 00078 00080 const aloglib::idxSrcList& indexedAlogReader::GetSrcList() const 00081 { 00082 return m_indexReader.GetSrcList(); 00083 } 00084 00086 const std::vector<aloglib::idxRec>& indexedAlogReader::GetRecordList() const 00087 { 00088 return m_indexReader.GetRecordList(); 00089 } 00090