bool CGridLabThresholdsLadder::TransferDataFromWindow() { bool bRtn = m_pData != NULL; if(bRtn) { CLabLocusThreshold LocusLimits; int nILS = GetNumberCols() - 1; int nCol; CLabRFU &rfu(*m_pData->GetRFUladder()); CLabRFU &rfuILS(*m_pData->GetRFUls()); CLabRFU *pRFU = &rfu; // get defaults and ILS for(nCol = 0; bRtn && (nCol <= nILS); nCol += nILS) { _GetColumn(nCol,&LocusLimits); // setup defaults pRFU->SetFractionMaxPeak( LocusLimits.GetFractionMaxPeak()); pRFU->SetPullupFractionFilter( LocusLimits.GetPullupFractionFilter()); pRFU->SetStutterThreshold( LocusLimits.GetStutter()); pRFU->SetAdenylationThreshold( LocusLimits.GetAdenylation()); // perform validation here pRFU = &rfuILS; } for(nCol = 1; nCol < nILS; nCol++) { if(_GetColumn(nCol,&LocusLimits)) { rfu.SetLocusThreshold(LocusLimits); } else { bRtn = false; nCol = nILS; // loop exit } } } return bRtn; }
bool CGridLabThresholdsSample::TransferDataFromWindow() { CLabLocusThreshold LocusLimits; bool bRtn = (m_pData != NULL) && _GetColumn(0,&LocusLimits); if(bRtn) { CLabRFU &rfu(*m_pData->GetRFUsample()); // setup defaults m_pData->SetHeterozygousImbalanceLimit( LocusLimits.GetHeterozygousImbalanceLimit()); m_pData->SetMinBoundForHomozygote( LocusLimits.GetMinBoundForHomozygote()); rfu.SetFractionMaxPeak( LocusLimits.GetFractionMaxPeak()); rfu.SetPullupFractionFilter( LocusLimits.GetPullupFractionFilter()); rfu.SetStutterThreshold( LocusLimits.GetStutter()); rfu.SetPlusStutterThreshold( LocusLimits.GetPlusStutter()); rfu.SetAdenylationThreshold( LocusLimits.GetAdenylation()); // Setup Loci int n = GetNumberCols(); for(int i = 1; i < n; i++) { if(_GetColumn(i,&LocusLimits)) { rfu.SetLocusThreshold(LocusLimits); } else { bRtn = false; i = n; // loop exit } } } return bRtn; }
DBTYPE DBRowDescriptor::GetColumnType( uint32 index ) const { return (DBTYPE)_GetColumn( index )->GetItem( 1 )->AsInt()->value(); }
PyString* DBRowDescriptor::GetColumnName( uint32 index ) const { return _GetColumn( index )->GetItem( 0 )->AsString(); }