Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

lemur::cluster::KeyfileClusterDB Class Reference

Keyfile based cluster database. More...

#include <KeyfileClusterDB.hpp>

Inheritance diagram for lemur::cluster::KeyfileClusterDB:

lemur::api::ClusterDB List of all members.

Public Member Functions

 KeyfileClusterDB (const lemur::api::Index *ind, const string &name, double threshold=0.25, enum ClusterParam::simTypes simType=ClusterParam::COS, enum ClusterParam::clusterTypes clusterType=ClusterParam::CENTROID, enum ClusterParam::docModes docMode=ClusterParam::DMAX)
 initialize

virtual ~KeyfileClusterDB ()
 clean up

virtual vector< Cluster * > getDocCluster (lemur::api::DOCID_T docId) const
 Get the Cluster for the given docId.

virtual int countClusters () const
 Count number of clusters.

virtual int maxID () const
 Return highest cluster ID.

virtual Cluster * getCluster (int clusterId) const
 Get the Cluster for the given clusterId.

virtual vector< int > getDocClusterId (lemur::api::DOCID_T docId) const
 Get the Cluster id for the given docId.

virtual int addToCluster (lemur::api::DOCID_T docId, int clusterId, double score)
 Add a document id to a cluster, given the cluster id.

virtual int addToCluster (lemur::api::DOCID_T docId, Cluster *cluster, double score)
 Add a document id to a cluster, given the cluster.

virtual int removeFromCluster (lemur::api::DOCID_T docId, int clusterID)
 Remove a document id from a cluster, given the cluster id.

virtual int deleteCluster (int clusterID)
 Delete a cluster entirely.

virtual int deleteCluster (Cluster *cluster)
 Delete a cluster entirely.

virtual vector< int > splitCluster (int cid, int num=2)
 split cluster -- using Cluster::split.

virtual int mergeClusters (int cid1, int cid2)
 merge two clusters.


Protected Member Functions

virtual Cluster * newCluster ()
 Factory method for creating Cluster objects.


Private Member Functions

void init (const string &name)
void addC2D (int cid, const vector< lemur::api::DOCID_T > &dids)

Private Attributes

lemur::file::Keyfile doc2cluster
 the document id to cluster table.

lemur::file::Keyfile clustersKey

Detailed Description

Keyfile based cluster database.


Constructor & Destructor Documentation

lemur::cluster::KeyfileClusterDB::KeyfileClusterDB (  const lemur::api::Index *  ind,
const string &  name,
double  threshold = 0.25,
enum ClusterParam::simTypes  simType = ClusterParam::COS,
enum ClusterParam::clusterTypes  clusterType = ClusterParam::CENTROID,
enum ClusterParam::docModes  docMode = ClusterParam::DMAX
) 
 

initialize

lemur::cluster::KeyfileClusterDB::~KeyfileClusterDB (   )  [virtual]
 

clean up


Member Function Documentation

void lemur::cluster::KeyfileClusterDB::addC2D (  int  cid,
const vector< lemur::api::DOCID_T > &  dids
)  [private]
 

int lemur::cluster::KeyfileClusterDB::addToCluster (  lemur::api::DOCID_T  docId,
Cluster *  cluster,
double  score
)  [virtual]
 

Add a document id to a cluster, given the cluster.

Implements lemur::api::ClusterDB.

int lemur::cluster::KeyfileClusterDB::addToCluster (  lemur::api::DOCID_T  docId,
int  clusterId,
double  score
)  [virtual]
 

Add a document id to a cluster, given the cluster id.

Implements lemur::api::ClusterDB.

virtual int lemur::cluster::KeyfileClusterDB::countClusters (   )  const [inline, virtual]
 

Count number of clusters.

Implements lemur::api::ClusterDB.

int lemur::cluster::KeyfileClusterDB::deleteCluster (  Cluster *  cluster  )  [virtual]
 

Delete a cluster entirely.

Implements lemur::api::ClusterDB.

int lemur::cluster::KeyfileClusterDB::deleteCluster (  int  clusterID  )  [virtual]
 

Delete a cluster entirely.

Implements lemur::api::ClusterDB.

lemur::cluster::Cluster * lemur::cluster::KeyfileClusterDB::getCluster (  int  clusterId  )  const [virtual]
 

Get the Cluster for the given clusterId.

Implements lemur::api::ClusterDB.

vector< lemur::cluster::Cluster * > lemur::cluster::KeyfileClusterDB::getDocCluster (  lemur::api::DOCID_T  docId  )  const [virtual]
 

Get the Cluster for the given docId.

Implements lemur::api::ClusterDB.

vector< int > lemur::cluster::KeyfileClusterDB::getDocClusterId (  lemur::api::DOCID_T  docId  )  const [virtual]
 

Get the Cluster id for the given docId.

Implements lemur::api::ClusterDB.

void lemur::cluster::KeyfileClusterDB::init (  const string &  name  )  [private]
 

virtual int lemur::cluster::KeyfileClusterDB::maxID (   )  const [inline, virtual]
 

Return highest cluster ID.

Implements lemur::api::ClusterDB.

int lemur::cluster::KeyfileClusterDB::mergeClusters (  int  cid1,
int  cid2
)  [virtual]
 

merge two clusters.

Implements lemur::api::ClusterDB.

lemur::cluster::Cluster * lemur::cluster::KeyfileClusterDB::newCluster (   )  [protected, virtual]
 

Factory method for creating Cluster objects.

Implements lemur::api::ClusterDB.

int lemur::cluster::KeyfileClusterDB::removeFromCluster (  lemur::api::DOCID_T  docId,
int  clusterID
)  [virtual]
 

Remove a document id from a cluster, given the cluster id.

Implements lemur::api::ClusterDB.

vector< int > lemur::cluster::KeyfileClusterDB::splitCluster (  int  cid,
int  num = 2
)  [virtual]
 

split cluster -- using Cluster::split.

Implements lemur::api::ClusterDB.


Member Data Documentation

lemur::file::Keyfile lemur::cluster::KeyfileClusterDB::clustersKey [mutable, private]
 

lemur::file::Keyfile lemur::cluster::KeyfileClusterDB::doc2cluster [mutable, private]
 

the document id to cluster table.


The documentation for this class was generated from the following files:
Generated on Tue Jun 15 11:03:05 2010 for Lemur by doxygen 1.3.4