protected void start() throws Exception{
EMPeakDetector emp= new EMPeakDetector(data, emPar);
emp.start();
ArrayList<EMPeakDetector> pds= emp.subs;
for( int i=0; i<pds.size(); i++ ){
Landscape2D dat= pds.get(i).data;
HeightPeakDetector hpd= new HeightPeakDetector(dat, emp.thr, hPar);
hpd.start();
ArrayList<Region> rs= hpd.getAllPeaks();
//dat.getXRange().printInt();for( int j=0; j<rs.size(); j++ ){rs.get(j).printIntAfter(" ");}
if(!rs.isEmpty()){
regs.addAll(rs);
}else{
if(emPar.satisfyMin(dat) && emPar.satisfyMax(dat)){
regs.add(dat.getXRange());
}
}
}
join(regs);
}