26 #ifndef PROSHADE_PEAKSEARCH
27 #define PROSHADE_PEAKSEARCH
39 proshade_signed peakSize, proshade_double* medianIQR );
41 proshade_double noIQRs );
43 proshade_double*& eB, proshade_double*& eG, proshade_double*& uAV );
45 proshade_double*& eB, proshade_double*& eG, proshade_double*& uAV );
46 void optimisePeakPositions ( std::vector< proshade_double* >* pointVec, proshade_signed peakSize, proshade_signed band );
47 std::vector< proshade_double* >
getAllPeaksNaive ( proshade_complex* map, proshade_unsign dim, proshade_signed peakSize, proshade_double noIQRs );
48 void getBestPeakEulerAngsNaive ( proshade_complex* map, proshade_unsign dim, proshade_double* eulA, proshade_double* eulB,
51 proshade_double*& filteredY, proshade_double*& avgFilter, proshade_double*& stdFilter,
52 proshade_double*& subVec, proshade_double*& medianIQR, proshade_double*& YZMap,
53 proshade_double*& XZMap, proshade_double*& XYMap, proshade_unsign smLag );
55 proshade_double*& avgFilter, proshade_double*& stdFilter, proshade_double*& subVec,
56 proshade_double*& medianIQR, proshade_double*& YZMap, proshade_double*& XZMap,
57 proshade_double*& XYMap );
58 void getSmoothedZScore1D ( proshade_unsign dim, proshade_unsign smoothingLag, proshade_double ZScoreThreshold,
59 proshade_signed* signals, proshade_double* filteredY, proshade_double* avgFilter,
60 proshade_double* stdFilter, proshade_double* subVec, proshade_double* medianIQR,
61 proshade_double* scoreOverVals );
63 proshade_signed* signals, proshade_double* filteredY, proshade_double* avgFilter,
64 proshade_double* stdFilter, proshade_double* subVec, proshade_double* medianIQR,
65 proshade_double* scoreOverVals, proshade_complex* map, proshade_double* YZMap );
67 proshade_signed* signals, proshade_double* filteredY, proshade_double* avgFilter,
68 proshade_double* stdFilter, proshade_double* subVec, proshade_double* medianIQR,
69 proshade_double* scoreOverVals, proshade_complex* map, proshade_double* XZMap );
71 proshade_signed* signals, proshade_double* filteredY, proshade_double* avgFilter,
72 proshade_double* stdFilter, proshade_double* subVec, proshade_double* medianIQR,
73 proshade_double* scoreOverVals, proshade_complex* map, proshade_double* XYMap );
74 void findAllPointNeighbours ( proshade_double* YZMap, proshade_double* XZMap, proshade_double* XYMap, proshade_unsign* visitedMap,
75 proshade_signed dim, proshade_signed x, proshade_signed y, proshade_signed z,
76 std::vector< proshade_unsign >* retVals );
77 void findAllDisconnectedIslands ( proshade_complex* map, proshade_double* YZMap, proshade_double* XZMap, proshade_double* XYMap,
78 proshade_unsign dim, std::vector< proshade_unsign >* allIslandBests );
80 proshade_signed dim, proshade_signed peakSize,
81 std::vector< proshade_double* >* allPeaksWithNeighbours );
82 std::vector< proshade_double* >
getAllPeaksSmoothedZ ( proshade_complex* map, proshade_unsign dim, proshade_double smoothingFraction,
83 proshade_double noIQRs, proshade_signed peakSize );
85 proshade_double noIQRs, proshade_signed peakSize, proshade_double* eulA, proshade_double* eulB,
86 proshade_double* eulG );