NCBI C++ ToolKit
Public Member Functions | Static Public Member Functions | Private Attributes | Friends | List of all members
LargeInt< 1 > Class Reference

Search Toolkit Book for LargeInt_3_011_01_4

#include <algo/gnomon/debruijn/LargeInt1.hpp>

Public Member Functions

 LargeInt (const u_int64_t &c=0)
 Constructor. More...
 
 LargeInt (const std::string &kmer)
 
template<typename T >
 LargeInt (const T &a, const T &b)
 
u_int64_t getVal () const
 
u_int64_t toInt () const
 Returns lower 64 bits. More...
 
LargeInt< 1 > operator+ (const LargeInt< 1 > &other) const
 
LargeInt< 1 > operator- (const LargeInt< 1 > &other) const
 
LargeInt< 1 > operator| (const LargeInt< 1 > &other) const
 
LargeInt< 1 > operator* (const int &coeff) const
 
LargeInt< 1 > operator/ (const u_int32_t &divisor) const
 
u_int32_t operator% (const u_int32_t &divisor) const
 
LargeInt< 1 > operator^ (const LargeInt< 1 > &other) const
 
LargeInt< 1 > operator& (const LargeInt< 1 > &other) const
 
LargeInt< 1 > operator& (const char &other) const
 
LargeInt< 1 > operator~ () const
 
LargeInt< 1 > operator<< (const int &coeff) const
 
LargeInt< 1 > operator>> (const int &coeff) const
 
bool operator!= (const LargeInt< 1 > &c) const
 
bool operator== (const LargeInt< 1 > &c) const
 
bool operator< (const LargeInt< 1 > &c) const
 
bool operator<= (const LargeInt< 1 > &c) const
 
LargeInt< 1 > & operator+= (const LargeInt< 1 > &other)
 
LargeInt< 1 > & operator^= (const LargeInt< 1 > &other)
 
LargeInt< 1 > & operator<<= (const int &coeff)
 
LargeInt< 1 > & operator>>= (const int &coeff)
 
u_int8_t operator[] (size_t idx) const
 
std::string toString (size_t sizeKmer) const
 Print corresponding kmer in ASCII. More...
 
u_int64_t oahash () const
 
u_int64_t * GetGuts ()
 

Static Public Member Functions

static const char * getName ()
 
static const size_t getSize ()
 
static u_int64_t revcomp64 (const u_int64_t &x, size_t sizeKmer)
 
template<typename Map >
static LargeInt< 1 > polynom (const char *data, size_t size, Map fct)
 

Private Attributes

u_int64_t value [1]
 

Friends

std::ostream & operator<< (std::ostream &s, const LargeInt< 1 > &l)
 
LargeInt< 1 > revcomp (const LargeInt< 1 > &i, size_t sizeKmer)
 

Detailed Description

Definition at line 25 of file LargeInt1.hpp.

Constructor & Destructor Documentation

◆ LargeInt() [1/3]

LargeInt< 1 >::LargeInt ( const u_int64_t &  c = 0)
inline

Constructor.

Parameters
[in]c: initial value of the large integer.

Definition at line 148 of file LargeInt1.hpp.

◆ LargeInt() [2/3]

LargeInt< 1 >::LargeInt ( const std::string kmer)
inline

Definition at line 148 of file LargeInt1.hpp.

◆ LargeInt() [3/3]

template<typename T >
LargeInt< 1 >::LargeInt ( const T a,
const T b 
)
inline

Definition at line 148 of file LargeInt1.hpp.

Member Function Documentation

◆ GetGuts()

u_int64_t* LargeInt< 1 >::GetGuts ( )
inline

Definition at line 139 of file LargeInt1.hpp.

References rapidjson::value.

◆ getName()

static const char* LargeInt< 1 >::getName ( )
inlinestatic

Definition at line 50 of file LargeInt1.hpp.

◆ getSize()

static const size_t LargeInt< 1 >::getSize ( )
inlinestatic

Definition at line 52 of file LargeInt1.hpp.

◆ getVal()

u_int64_t LargeInt< 1 >::getVal ( ) const
inline

Definition at line 48 of file LargeInt1.hpp.

References rapidjson::value.

◆ oahash()

u_int64_t LargeInt< 1 >::oahash ( ) const
inline

Definition at line 107 of file LargeInt1.hpp.

References DeBruijn::oahash64(), and rapidjson::value.

◆ operator!=()

bool LargeInt< 1 >::operator!= ( const LargeInt< 1 > &  c) const
inline

Definition at line 69 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator%()

u_int32_t LargeInt< 1 >::operator% ( const u_int32_t &  divisor) const
inline

Definition at line 62 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator&() [1/2]

LargeInt<1> LargeInt< 1 >::operator& ( const char &  other) const
inline

Definition at line 65 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator&() [2/2]

LargeInt<1> LargeInt< 1 >::operator& ( const LargeInt< 1 > &  other) const
inline

Definition at line 64 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator*()

LargeInt<1> LargeInt< 1 >::operator* ( const int coeff) const
inline

Definition at line 60 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator+()

LargeInt<1> LargeInt< 1 >::operator+ ( const LargeInt< 1 > &  other) const
inline

Definition at line 57 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator+=()

LargeInt<1>& LargeInt< 1 >::operator+= ( const LargeInt< 1 > &  other)
inline

Definition at line 74 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator-()

LargeInt<1> LargeInt< 1 >::operator- ( const LargeInt< 1 > &  other) const
inline

Definition at line 58 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator/()

LargeInt<1> LargeInt< 1 >::operator/ ( const u_int32_t &  divisor) const
inline

Definition at line 61 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator<()

bool LargeInt< 1 >::operator< ( const LargeInt< 1 > &  c) const
inline

Definition at line 71 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator<<()

LargeInt<1> LargeInt< 1 >::operator<< ( const int coeff) const
inline

Definition at line 66 of file LargeInt1.hpp.

◆ operator<<=()

LargeInt<1>& LargeInt< 1 >::operator<<= ( const int coeff)
inline

Definition at line 75 of file LargeInt1.hpp.

◆ operator<=()

bool LargeInt< 1 >::operator<= ( const LargeInt< 1 > &  c) const
inline

Definition at line 72 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator==()

bool LargeInt< 1 >::operator== ( const LargeInt< 1 > &  c) const
inline

Definition at line 70 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator>>()

LargeInt<1> LargeInt< 1 >::operator>> ( const int coeff) const
inline

Definition at line 68 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator>>=()

LargeInt<1>& LargeInt< 1 >::operator>>= ( const int coeff)
inline

Definition at line 78 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator[]()

u_int8_t LargeInt< 1 >::operator[] ( size_t  idx) const
inline

Definition at line 80 of file LargeInt1.hpp.

References rapidjson::value.

◆ operator^()

LargeInt<1> LargeInt< 1 >::operator^ ( const LargeInt< 1 > &  other) const
inline

Definition at line 63 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator^=()

LargeInt<1>& LargeInt< 1 >::operator^= ( const LargeInt< 1 > &  other)
inline

Definition at line 75 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator|()

LargeInt<1> LargeInt< 1 >::operator| ( const LargeInt< 1 > &  other) const
inline

Definition at line 59 of file LargeInt1.hpp.

References value, and rapidjson::value.

◆ operator~()

LargeInt<1> LargeInt< 1 >::operator~ ( ) const
inline

Definition at line 66 of file LargeInt1.hpp.

References rapidjson::value.

◆ polynom()

template<typename Map >
static LargeInt<1> LargeInt< 1 >::polynom ( const char *  data,
size_t  size,
Map  fct 
)
inlinestatic

Definition at line 133 of file LargeInt1.hpp.

References data, i, ncbi::grid::netcache::search::fields::size, and value.

◆ revcomp64()

static u_int64_t LargeInt< 1 >::revcomp64 ( const u_int64_t &  x,
size_t  sizeKmer 
)
inlinestatic

Definition at line 112 of file LargeInt1.hpp.

Referenced by revcomp().

◆ toInt()

u_int64_t LargeInt< 1 >::toInt ( ) const
inline

Returns lower 64 bits.

Definition at line 55 of file LargeInt1.hpp.

References rapidjson::value.

◆ toString()

std::string LargeInt< 1 >::toString ( size_t  sizeKmer) const
inline

Print corresponding kmer in ASCII.

Parameters
[sizeKmer]in : kmer size (def=32).

Definition at line 92 of file LargeInt1.hpp.

References bin2NT, i, string, and rapidjson::value.

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  s,
const LargeInt< 1 > &  l 
)
friend

Definition at line 83 of file LargeInt1.hpp.

◆ revcomp

LargeInt<1> revcomp ( const LargeInt< 1 > &  i,
size_t  sizeKmer 
)
friend

Definition at line 148 of file LargeInt1.hpp.

Member Data Documentation

◆ value

u_int64_t LargeInt< 1 >::value[1]
private

The documentation for this class was generated from the following file:
Modified on Fri Sep 20 14:58:21 2024 by modify_doxy.py rev. 669887