Colibri Core
Classes | Enumerations | Functions | Variables
pattern.h File Reference

Contains the Pattern class that is ubiquitous throughout Colibri Core. More...

#include <string>
#include <iostream>
#include <ostream>
#include <istream>
#include <unordered_map>
#include <vector>
#include <set>
#include <map>
#include <array>
#include <unordered_set>
#include <iomanip>
#include <exception>
#include <algorithm>
#include <climits>
#include "common.h"
#include "classdecoder.h"

Go to the source code of this file.

Classes

class  Pattern
 Pattern class, represents a pattern (ngram, skipgram or flexgram). Encoded in a memory-saving fashion. Allows numerous operations. More...
 
class  PatternPointer
 
struct  std::hash< Pattern >
 
struct  std::hash< const Pattern * >
 
struct  std::hash< PatternPointer >
 
struct  std::hash< const PatternPointer * >
 

Enumerations

enum  PatternCategory { UNKNOWNPATTERN = 0, NGRAM = 1, SKIPGRAM = 2, FLEXGRAM = 3 }
 
enum  PatternType { PATTERN = 0, PATTERNPOINTER = 1 }
 

Functions

void readanddiscardpattern (std::istream *in, bool pointerformat=false)
 
int reader_passmarker (const unsigned char c, std::istream *in)
 
Pattern patternfromfile (const std::string &filename)
 

Variables

const int MAINPATTERNBUFFERSIZE = 40960
 
const Pattern SKIPPATTERN = Pattern((const unsigned char *) tmp_skipmarker,1)
 
const Pattern FLEXPATTERN = Pattern((const unsigned char*) tmp_flexmarker,1)
 

Detailed Description

Contains the Pattern class that is ubiquitous throughout Colibri Core.

Author
Maarten van Gompel (proycon) proyc.nosp@m.on@a.nosp@m.napro.nosp@m.y.nl

LICENSE

Licensed under GPLv3

DESCRIPTION

Contains the Pattern class that is ubiquitous throughout Colibri Core

Enumeration Type Documentation

Pattern categories

Enumerator
UNKNOWNPATTERN 

not used

NGRAM 

For ngrams, i.e. patterns without gaps

SKIPGRAM 

For skipgrams, i.e. patterns with fixed-width gaps

FLEXGRAM 

For flexgrams, i.e. patterns with dynamic-width gaps

Enumerator
PATTERN 
PATTERNPOINTER 

Function Documentation

Pattern patternfromfile ( const std::string &  filename)
void readanddiscardpattern ( std::istream *  in,
bool  pointerformat = false 
)
int reader_passmarker ( const unsigned char  c,
std::istream *  in 
)

Variable Documentation

const Pattern FLEXPATTERN = Pattern((const unsigned char*) tmp_flexmarker,1)
const int MAINPATTERNBUFFERSIZE = 40960
const Pattern SKIPPATTERN = Pattern((const unsigned char *) tmp_skipmarker,1)