| 682 | } |
| 683 | |
| 684 | static void calculateBreakpoints_perform(float** V, int** jump, float** J, int from, int to, int kk) |
| 685 | { |
| 686 | //std::cout << "calculateBreakpoints_perform from=" << from << " to=" << to << " kk=" << kk << std::endl; |
| 687 | float* mk = new float[kk]; |
| 688 | for (int ii = from; ii <= to; ii++) { |
| 689 | float* pV = V[ii+1]; |
| 690 | int* pJ = jump[ii]; |
| 691 | for (int jj = ii+1; jj <= kk; jj++) { |
| 692 | |
| 693 | int ind = 0; |
| 694 | float min = MAXFLOAT; |
| 695 | float* rr = mk; |
| 696 | float* pp = &V[ii][ii]; |
| 697 | float** qq = &J[1+ii]; |
| 698 | for (int gg = ii; gg < jj; gg++) { |
| 699 | float rr_val = *pp++ + (*qq++)[jj]; |
| 700 | if (rr_val < min) { |
| 701 | min = rr_val; |
| 702 | ind = gg-ii; |
| 703 | } |
| 704 | *rr++ = rr_val; |
| 705 | } |
| 706 | ind++; |
| 707 | pV[jj] = mk[ind-1]; |
| 708 | pJ[jj] = ind+ii; |
| 709 | } |
| 710 | } |
| 711 | delete [] mk; |
| 712 | } |
| 713 | |
| 714 | int calculateBreakpoints_general(double threshold, int length, const vector<float>& ratio,vector<int>& bpfinal, int normal_length_dummy, int breakPointType, const std::string& chr) { |
| 715 |
no outgoing calls
no test coverage detected