00001
#ifndef _Z_CLUSTER_H_
00002
#define _Z_CLUSTER_H_
00003
00004
typedef struct
00005
{
00006
int *parent;
00007
int *child;
00008 IsotopicClusterPointer *pIsoclusters;
00009 } IsotopicClusterPointerSet;
00010
00011
void IsotopicClusterPointerSet_init (IsotopicClusterPointerSet* SET, IsotopicClusterPointer* pIsoclusters,
int nIsoclusters);
00012
int IsotopicClusterPointerSet_getLeaf (IsotopicClusterPointerSet* SET,
int index);
00013
int IsotopicClusterPointerSet_getRoot (IsotopicClusterPointerSet* SET,
int index);
00014
00015
typedef struct
00016
{
00017
int *parent;
00018
int *child;
00019 IsotopicCluster *pIsoclusters;
00020 } IsotopicClusterSet;
00021
00022
void IsotopicClusterSet_init (IsotopicClusterSet* SET, IsotopicCluster* pIsoclusters,
int nIsoclusters);
00023
int IsotopicClusterSet_getLeaf(IsotopicClusterSet* SET,
int index);
00024
int IsotopicClusterSet_getRoot(IsotopicClusterSet* SET,
int index);
00025
00026
typedef struct
00027
{
00028 IsotopicClusterPointer* pIsoclusters;
00029
FPeak2i* pChargeVariants;
00030
int nChargeVariants;
00031
00032 } ChargeCluster;
00033
00034
typedef struct
00035
{
00036
int rti;
00037 IsotopicCluster* pIsoclusters;
00038
int nic;
00039 ChargeCluster* ZC;
00040
int nzc;
00041 } IsotopicClusterGroup;
00042
00043
void IsotopicClusterSet_getSubGroups(IsotopicClusterGroup** ICG,
int* ngroups, IsotopicClusterSet* SET);
00044
00045
#endif
00046