gatb.core-API-0.0.0
BankStrings Class Reference

IBank defined by constant strings. More...

#include <BankStrings.hpp>

Inheritance diagram for BankStrings:
Inheritance graph

Public Member Functions

std::string getId ()
 
 BankStrings (const std::vector< std::string > &sequencesData)
 
 BankStrings (const char *sequencesData[], size_t nb)
 
 BankStrings (const char *seq,...)
 
tools::dp::Iterator< Sequence > * iterator ()
 
int64_t getNbItems ()
 
void insert (const Sequence &item)
 
void flush ()
 
u_int64_t getSize ()
 
void estimate (u_int64_t &number, u_int64_t &totalSize, u_int64_t &maxSize)
 
- Public Member Functions inherited from AbstractBank
 AbstractBank ()
 
std::string getIdNb (int i)
 
int64_t estimateNbItemsBanki (int i)
 
const std::vector< IBank * > getBanks () const
 
int64_t estimateNbItems ()
 
u_int64_t estimateSequencesSize ()
 
u_int64_t getEstimateThreshold ()
 
void setEstimateThreshold (u_int64_t nbSeq)
 
void remove ()
 
void finalize ()
 
size_t getCompositionNb ()
 
- Public Member Functions inherited from Iterable< Sequence >
void iterate (Functor f)
 
virtual Sequence * getItems (Sequence *&buffer)
 
virtual size_t getItems (Sequence *&buffer, size_t start, size_t nb)
 
- Public Member Functions inherited from ISmartPointer
virtual ~ISmartPointer ()
 
- Public Member Functions inherited from Bag< Sequence >
virtual void insert (const Sequence &item)=0
 
virtual void insert (const std::vector< Sequence > &items, size_t length=0)
 
virtual void insert (const Sequence *items, size_t length)
 
- Public Member Functions inherited from SmartPointer
void use ()
 
void forget ()
 

Static Public Member Functions

static const char * name ()
 

Protected Attributes

std::vector< Sequence_sequences
 

Additional Inherited Members

- Protected Member Functions inherited from SmartPointer
 SmartPointer ()
 
virtual ~SmartPointer ()
 

Detailed Description

IBank defined by constant strings.

This class allows to define banks with some nucleotides strings.

Instances of this class are located in memory only.

This class is mainly used for tests.

Constructor & Destructor Documentation

BankStrings ( const std::vector< std::string > &  sequencesData)
inline

Constructor.

BankStrings ( const char *  sequencesData[],
size_t  nb 
)
inline

Constructor.

BankStrings ( const char *  seq,
  ... 
)
inline

Constructor.

Member Function Documentation

void estimate ( u_int64_t &  number,
u_int64_t &  totalSize,
u_int64_t &  maxSize 
)
inlinevirtual

Give an estimation of sequences information in the bank.

Parameters
[out]number: sequences number
[out]totalSize: sequences size (in bytes)
[out]maxSize: max size size (in bytes)

Implements IBank.

void flush ( )
inlinevirtual

Flush the current content. May be useful for implementation that uses a cache.

Implements Bag< Sequence >.

std::string getId ( )
inlinevirtual

Constructor.

Implements IBank.

int64_t getNbItems ( )
inlinevirtual

Return the number of items. If a specific implementation doesn't know the value, it should return -1 by convention.

Returns
the number of items if known, -1 otherwise.

Implements Iterable< Sequence >.

u_int64_t getSize ( )
inlinevirtual

Return the size of the bank (comments + data)

The returned value may be an approximation in some case. For instance, if we use a zipped bank, an implementation may be not able to give accurate answer to the size of the original file.

Returns
the bank size in bytes.

Implements IBank.

void insert ( const Sequence item)
inlinevirtual

Insert an item into the bag.

Parameters
[in]item: the item to be inserted.

Implements IBank.

tools::dp::Iterator<Sequence>* iterator ( )
inlinevirtual

Create an iterator for the given Iterable instance.

Returns
the new iterator.

Implements IBank.

static const char* name ( )
inlinestatic

Returns the name of the bank format.

Member Data Documentation

std::vector<Sequence> _sequences
protected

Sequences.


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