18#ifndef LIMA_GRAPH_CHAINIDSTRUCT_H
19#define LIMA_GRAPH_CHAINIDSTRUCT_H
24namespace LinguisticProcessing {
25namespace LinguisticAnalysisStructure {
37 static const uint64_t
noid=UINT_MAX;
47 m_chainType(cis.m_chainType),
49 m_chainId(cis.m_chainId),
50 m_elemType(cis.m_elemType)
56 m_chainType = cis.m_chainType;
58 m_chainId = cis.m_chainId;
59 m_elemType = cis.m_elemType;
68 return (m_chainId < cis.m_chainId);
73 inline uint64_t
chainId()
const {
return m_chainId; }
100 case BEGIN: os <<
"b";
break;
101 case END: os <<
"e";
break;
102 case UNIGRAM: os <<
"u";
break;
103 case PART: os <<
"p";
break;
123 case BEGIN: os <<
"b";
break;
124 case END: os <<
"e";
break;
125 case UNIGRAM: os <<
"u";
break;
126 case PART: os <<
"p";
break;
135 return ( (m_chainType == cis.m_chainType) && (m_chainId == cis.m_chainId) );
Property to identify the chains in the graph.
void chainId(uint64_t chainId)
Common::MediaticData::ChainsType chainType() const
ChainIdStruct & operator=(const ChainIdStruct &cis)
void elemType(ChainElemType type)
void chainType(Common::MediaticData::ChainsType t)
static const uint64_t noid
ChainIdStruct(const ChainIdStruct &cis)
ChainElemType elemType() const
bool operator==(const ChainIdStruct &cis) const
ChainIdStruct(Common::MediaticData::ChainsType chainType=Common::MediaticData::NO_CHAIN_TYPE, uint64_t chainId=noid, ChainElemType type=PART)
bool operator<(const ChainIdStruct &cis) const
std::ostream & operator<<(std::ostream &os, const ChainIdStruct &ids)