36 #ifndef OPENMS_DATASTRUCTURES_QTCLUSTER_H 37 #define OPENMS_DATASTRUCTURES_QTCLUSTER_H 41 #include <OpenMS/OpenMSConfig.h> 42 #include <OpenMS/config.h> 44 #include <boost/unordered_map.hpp> 60 #if OPENMS_BOOST_VERSION_MINOR > 47 61 using namespace boost::unordered;
63 using namespace boost;
121 typedef OpenMSBoost::unordered_map<Size, NeighborPairType>
NeighborMap;
191 void computeQuality_();
212 double optimizeAnnotations_();
224 double max_distance,
bool use_IDs,
225 Int x_coord,
Int y_coord);
234 double getCenterRT()
const;
237 double getCenterMZ()
const;
240 Int getXCoord()
const;
243 Int getYCoord()
const;
260 void getElements(OpenMSBoost::unordered_map<Size, GridFeature*>& elements);
269 bool update(
const OpenMSBoost::unordered_map<Size, GridFeature*>& removed);
275 const std::set<AASequence>& getAnnotations();
293 void initializeCluster();
296 void finalizeCluster();
299 OpenMSBoost::unordered_map<Size, std::vector<GridFeature*> > getAllNeighbors();
303 #endif // OPENMS_DATASTRUCTURES_QTCLUSTER_H
std::set< AASequence > annotations_
Set of annotations of the cluster.
Definition: QTCluster.h:185
A representation of a QT cluster used for feature grouping.
Definition: QTCluster.h:112
NeighborMap neighbors_
Map that keeps track of the best current feature for each map.
Definition: QTCluster.h:130
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
GridFeature * center_point_
Pointer to the cluster center.
Definition: QTCluster.h:124
bool operator<(const MultiplexDeltaMasses &dm1, const MultiplexDeltaMasses &dm2)
Representation of a feature in a hash grid.
Definition: GridFeature.h:53
bool use_IDs_
Keep track of peptide IDs and use them for matching?
Definition: QTCluster.h:154
bool collect_annotations_
Whether initial collection of all neighbors is needed.
Definition: QTCluster.h:168
NeighborMapMulti * tmp_neighbors_
Temporary map tracking *all* neighbors.
Definition: QTCluster.h:139
bool finalized_
Whether current cluster is accepting new elements or not (if true, no more new elements allowed) ...
Definition: QTCluster.h:171
Int x_coord_
x coordinate in the grid cell
Definition: QTCluster.h:174
bool changed_
Has the cluster changed (if yes, quality needs to be recomputed)?
Definition: QTCluster.h:151
Int y_coord_
y coordinate in the grid cell
Definition: QTCluster.h:177
std::pair< double, GridFeature * > NeighborPairType
Definition: QTCluster.h:120
OpenMSBoost::unordered_map< Size, NeighborPairType > NeighborMap
Definition: QTCluster.h:121
OpenMSBoost::unordered_map< Size, NeighborListType > NeighborMapMulti
Definition: QTCluster.h:118
Size num_maps_
Number of input maps.
Definition: QTCluster.h:145
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
std::multimap< double, GridFeature * > NeighborListType
Definition: QTCluster.h:117
bool valid_
Whether current cluster is valid.
Definition: QTCluster.h:157
double quality_
Quality of the cluster.
Definition: QTCluster.h:148
bool isInvalid() const
Whether current cluster is invalid.
Definition: QTCluster.h:287
int Int
Signed integer type.
Definition: Types.h:103
double max_distance_
Maximum distance of a point that can still belong to the cluster.
Definition: QTCluster.h:142