LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
Lima::Common::FsaAccess::FsaAccessHeader Class Reference

FsaDictionaries (FsaDictBuilder and FsaDictSpare) share the same binary file format: More...

#include <common/FsaAccess/FsaAccessHeader.h>

Inheritance diagram for Lima::Common::FsaAccess::FsaAccessHeader:
Lima::Common::FsaAccess::FsaAccess16< selected_graph_types16::builderGraphType > Lima::Common::FsaAccess::FsaAccess16< selected_graph_types16::spareGraphType > Lima::Common::FsaAccess::FsaAccess16< graphType > Lima::Common::FsaAccess::FsaAccessBuilder16 Lima::Common::FsaAccess::FsaAccessReader16< selected_graph_types16::builderGraphType > Lima::Common::FsaAccess::FsaAccessReader16< selected_graph_types16::spareGraphType > Lima::Common::FsaAccess::FsaAccessReader16< graphType > Lima::Common::FsaAccess::FsaAccessBuilderRandom16 Lima::Common::FsaAccess::FsaAccessSpare16

Public Member Functions

 FsaAccessHeader (bool trie_direction_fwd)
 
virtual ~FsaAccessHeader ()
 
void read (AbstractFsaAccessIStreamWrapper &iw)
 
void write (AbstractFsaAccessOStreamWrapper &ow)
 
bool getTrieDirectionForward () const
 
uint64_t getNbVertices () const
 
uint64_t getNbEdges () const
 
void setPackingStatus (uint8_t packingStatus)
 
void setNbVertices (uint64_t nbVerts)
 
void setNbEdges (uint64_t nbEdges)
 

Protected Member Functions

 FsaAccessHeader (const FsaAccessHeader &h)
 
FsaAccessHeader & operator= (const FsaAccessHeader &h)
 

Protected Attributes

FsaAccessHeaderPrivate * m_d
 

Detailed Description

FsaDictionaries (FsaDictBuilder and FsaDictSpare) share the same binary file format:

offset length content 0 ?? file ::= header body 0 1024 header ::= magicNumber version Lima::LimaCharype packing charOrder nbVertices nbEdges padData 0 12 magicNumber ::= "limaFsaDict" 12 5 version ::= nn.nn (n ::= any ascii character to code figure between 0 & 9 i.e. '0', '1', ....) 5 bytes 17 1 Lima::LimaCharype ::= { 1 for ASCII, iso8859-1..., 4 for 4bytes wide char } 1 byte integer 18 1 packing ::= { BUILT = 1, SPARE = 2, BUILDER = 0 } 1 byte integer 19 1 charOrder ::= { forward = 0, reverse = 1 } 1 byte integer 20 10 nbVertices ::= nnnnnnnnnn integer < 2**31-1. 10 bytes 30 10 nbEdges ::= nnnnnnnnnn integer < 2**31-1. 10 bytes 40 972 padData ::= enough bytes to complete header of 1k 1024 4 body ::= vertice* edges* nbvert0 1024 4 vertices ::= vertexProperty (4 bytes uint64_t) 1024+N*4 8+ep edges ::= vertexId vertexId edgeProperty (4 bytes + 4 bytes +)

Definition at line 72 of file FsaAccessHeader.h.

Constructor & Destructor Documentation

◆ FsaAccessHeader() [1/2]

Lima::Common::FsaAccess::FsaAccessHeader::FsaAccessHeader ( bool  trie_direction_fwd)

Definition at line 91 of file FsaAccessHeader.cpp.

◆ ~FsaAccessHeader()

Lima::Common::FsaAccess::FsaAccessHeader::~FsaAccessHeader ( )
virtual

Definition at line 101 of file FsaAccessHeader.cpp.

◆ FsaAccessHeader() [2/2]

Lima::Common::FsaAccess::FsaAccessHeader::FsaAccessHeader ( const FsaAccessHeader &  h)
protected

Definition at line 96 of file FsaAccessHeader.cpp.

Member Function Documentation

◆ getNbEdges()

uint64_t Lima::Common::FsaAccess::FsaAccessHeader::getNbEdges ( ) const

Definition at line 110 of file FsaAccessHeader.cpp.

◆ getNbVertices()

uint64_t Lima::Common::FsaAccess::FsaAccessHeader::getNbVertices ( ) const

Definition at line 109 of file FsaAccessHeader.cpp.

◆ getTrieDirectionForward()

bool Lima::Common::FsaAccess::FsaAccessHeader::getTrieDirectionForward ( ) const

Definition at line 108 of file FsaAccessHeader.cpp.

◆ operator=()

FsaAccessHeader & Lima::Common::FsaAccess::FsaAccessHeader::operator= ( const FsaAccessHeader &  h)
protected

Definition at line 106 of file FsaAccessHeader.cpp.

◆ read()

void Lima::Common::FsaAccess::FsaAccessHeader::read ( AbstractFsaAccessIStreamWrapper &  iw)

Definition at line 120 of file FsaAccessHeader.cpp.

◆ setNbEdges()

void Lima::Common::FsaAccess::FsaAccessHeader::setNbEdges ( uint64_t  nbEdges)

Definition at line 113 of file FsaAccessHeader.cpp.

◆ setNbVertices()

void Lima::Common::FsaAccess::FsaAccessHeader::setNbVertices ( uint64_t  nbVerts)

Definition at line 112 of file FsaAccessHeader.cpp.

◆ setPackingStatus()

void Lima::Common::FsaAccess::FsaAccessHeader::setPackingStatus ( uint8_t  packingStatus)

Definition at line 111 of file FsaAccessHeader.cpp.

◆ write()

void Lima::Common::FsaAccess::FsaAccessHeader::write ( AbstractFsaAccessOStreamWrapper &  ow)

Definition at line 240 of file FsaAccessHeader.cpp.

Member Data Documentation

◆ m_d

FsaAccessHeaderPrivate* Lima::Common::FsaAccess::FsaAccessHeader::m_d
protected

Definition at line 92 of file FsaAccessHeader.h.


The documentation for this class was generated from the following files: