B2BITS FIX Antenna HFT  1.0.18
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | List of all members
SessionLog Class Referenceabstract

#include <SessionLog.h>

+ Inheritance diagram for SessionLog:
+ Collaboration diagram for SessionLog:

Classes

struct  LogFormat
 
struct  SessionRecord
 
struct  SessionRecordInfo
 

Public Types

using FileAccess = SessionLogRwBase::FileAccess
 
typedef System::u64 Flags
 
typedef System::u8 Format
 
typedef struct
SessionLog::LogFormat 
LogFormat
 
typedef System::u8 LogSessionType
 
using LogType = SessionLogRwBase::LogType
 
typedef System::FileEx::offset_t Offset
 
typedef System::u32 SeqNum
 
typedef System::FileEx::offset_t Size
 

Public Member Functions

virtual void clear ()=0
 
virtual bool defineLogFormat (SessionLog::LogFormat &logFormat)=0
 
std::string getBaseName () const
 
std::string getConfFileName () const
 
virtual bool getCurrentSessionRecord (SessionRecord &sessionRecord)=0
 
virtual const SessionLog::Size getIndexFileSize ()=0
 
bool isIndexFormatDefined () const
 
virtual bool moveNextMessage ()=0
 
virtual void registerProperties (Utils::FileProperties &fileProp)=0
 
virtual bool seekTo (SessionLog::Offset offset)=0
 
virtual void setLogFormat (const SessionLog::LogFormat &logFormat)=0
 
virtual void toBegining ()=0
 
virtual void toEnd ()=0
 
virtual Offset write (const SessionLog::SessionRecord &sessionRecord)=0
 

Static Public Attributes

static Format const FMT_MEM_MAPPED = 1
 
static Format const FMT_ORDINAL = 0
 
static Format const FMT_UNKNOWN = 99
 
static Flags const IDX_FLG_EOL_WIN = 2
 
static Flags const IDX_FLG_HAS_EOL = 1
 
static Flags const IDX_FLG_HAS_TIMESTAMP = 4
 
static const Flags IDX_FLGS_DEF = IDX_FLG_HAS_EOL
 
static LogSessionType const LOG_TYPE_CPP = 1
 
static LogSessionType const LOG_TYPE_JAVA = 2
 
static LogSessionType const LOG_TYPE_UNKNOWN = 0
 

Protected Member Functions

 SessionLog (std::string const &baseName, std::string const &indexFileName, std::string const &logFileName, const FileAccess fileAccess, LogType logType)
 

Protected Attributes

std::string _confFileName
 
const std::string m_baseName
 
const FileAccess m_fileAccess
 
std::shared_ptr< System::FileExm_indexFileStream
 
bool m_indexFormatDefined
 
std::shared_ptr< System::FileExm_logFileStream
 
const LogType m_logType
 

Member Typedef Documentation

Constructor & Destructor Documentation

SessionLog::SessionLog ( std::string const &  baseName,
std::string const &  indexFileName,
std::string const &  logFileName,
const FileAccess  fileAccess,
LogType  logType 
)
protected

Member Function Documentation

virtual void SessionLog::clear ( )
pure virtual

Implemented in SessionLogJava.

virtual bool SessionLog::defineLogFormat ( SessionLog::LogFormat logFormat)
pure virtual

Implemented in SessionLogJava.

std::string SessionLog::getBaseName ( ) const
inline
std::string SessionLog::getConfFileName ( ) const
inline
virtual bool SessionLog::getCurrentSessionRecord ( SessionRecord sessionRecord)
pure virtual

Implemented in SessionLogJava.

virtual const SessionLog::Size SessionLog::getIndexFileSize ( )
pure virtual

Implemented in SessionLogJava.

bool SessionLog::isIndexFormatDefined ( ) const
inline
virtual bool SessionLog::moveNextMessage ( )
pure virtual

Implemented in SessionLogJava.

virtual void SessionLog::registerProperties ( Utils::FileProperties fileProp)
pure virtual

Implemented in SessionLogJava.

virtual bool SessionLog::seekTo ( SessionLog::Offset  offset)
pure virtual

Implemented in SessionLogJava.

virtual void SessionLog::setLogFormat ( const SessionLog::LogFormat logFormat)
pure virtual

Implemented in SessionLogJava.

virtual void SessionLog::toBegining ( )
pure virtual

Implemented in SessionLogJava.

virtual void SessionLog::toEnd ( )
pure virtual

Implemented in SessionLogJava.

virtual Offset SessionLog::write ( const SessionLog::SessionRecord sessionRecord)
pure virtual

Implemented in SessionLogJava.

Member Data Documentation

std::string SessionLog::_confFileName
protected
Format const SessionLog::FMT_MEM_MAPPED = 1
static
Format const SessionLog::FMT_ORDINAL = 0
static
Format const SessionLog::FMT_UNKNOWN = 99
static
Flags const SessionLog::IDX_FLG_EOL_WIN = 2
static
Flags const SessionLog::IDX_FLG_HAS_EOL = 1
static
Flags const SessionLog::IDX_FLG_HAS_TIMESTAMP = 4
static
const Flags SessionLog::IDX_FLGS_DEF = IDX_FLG_HAS_EOL
static
LogSessionType const SessionLog::LOG_TYPE_CPP = 1
static
LogSessionType const SessionLog::LOG_TYPE_JAVA = 2
static
LogSessionType const SessionLog::LOG_TYPE_UNKNOWN = 0
static
const std::string SessionLog::m_baseName
protected
const FileAccess SessionLog::m_fileAccess
protected
std::shared_ptr<System::FileEx> SessionLog::m_indexFileStream
protected
bool SessionLog::m_indexFormatDefined
protected
std::shared_ptr<System::FileEx> SessionLog::m_logFileStream
protected
const LogType SessionLog::m_logType
protected