Skip to content

Commit

Permalink
Added some defines to sga cluster to hide away the hideous template f…
Browse files Browse the repository at this point in the history
…unction calls
  • Loading branch information
jts committed Jun 17, 2011
1 parent 2497649 commit 97d9325
Showing 1 changed file with 19 additions and 20 deletions.
39 changes: 19 additions & 20 deletions src/SGA/cluster.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,21 @@
#include "ClusterProcess.h"
#include "ClusterReader.h"

// Defines to clarify awful template function calls
#define PROCESS_CLUSTER_SERIAL SequenceProcessFramework::processSequencesSerial<SequenceWorkItem, ClusterResult, \
ClusterProcess, ClusterPostProcess>

#define PROCESS_CLUSTER_PARALLEL SequenceProcessFramework::processSequencesParallel<SequenceWorkItem, ClusterResult, \
ClusterProcess, ClusterPostProcess>


#define PROCESS_EXTEND_SERIAL SequenceProcessFramework::processWorkSerial<ClusterVector, ClusterResult, \
ClusterReader, ClusterProcess, \
ClusterPostProcess>

#define PROCESS_EXTEND_PARALLEL SequenceProcessFramework::processWorkParallel<ClusterVector, ClusterResult, \
ClusterReader, ClusterProcess, \
ClusterPostProcess>
//
// Getopt
//
Expand Down Expand Up @@ -123,21 +138,13 @@ void cluster()
// If the extend file is empty, build new clusters
if(opt::extendFile.empty())
{
SequenceProcessFramework::processSequencesSerial<SequenceWorkItem,
ClusterResult,
ClusterProcess,
ClusterPostProcess>(opt::readsFile, &processor, &postProcessor);
PROCESS_CLUSTER_SERIAL(opt::readsFile, &processor, &postProcessor);
}
else
{
// Process a set of preexisting clusters
ClusterReader clusterReader(opt::extendFile);
SequenceProcessFramework::processWorkSerial<ClusterVector,
ClusterResult,
ClusterReader,
ClusterProcess,
ClusterPostProcess>(clusterReader, &processor, &postProcessor);

PROCESS_EXTEND_SERIAL(clusterReader, &processor, &postProcessor);
}
}
else
Expand All @@ -153,20 +160,12 @@ void cluster()

if(opt::extendFile.empty())
{
SequenceProcessFramework::processSequencesParallel<SequenceWorkItem,
ClusterResult,
ClusterProcess,
ClusterPostProcess>(opt::readsFile, processorVector, &postProcessor);
PROCESS_CLUSTER_PARALLEL(opt::readsFile, processorVector, &postProcessor);
}
else
{
ClusterReader clusterReader(opt::extendFile);
SequenceProcessFramework::processWorkParallel<ClusterVector,
ClusterResult,
ClusterReader,
ClusterProcess,
ClusterPostProcess>(clusterReader, processorVector, &postProcessor);

PROCESS_EXTEND_PARALLEL(clusterReader, processorVector, &postProcessor);
}

for(size_t i = 0; i < processorVector.size(); ++i)
Expand Down

0 comments on commit 97d9325

Please sign in to comment.