101   if(orChannel) 
return nullptr;
 
  102   if(asdin->isValid()==
false) 
return nullptr;
 
  104   const bool asdinisEndcap = asdin->isEndcap();
 
  105   const bool asdinisTriplet = asdin->isTriplet();
 
  106   const int asdinLayer = asdin->getLayer();
 
  107   const int asdinChannel = asdin->getChannel();
 
  109   TGCDatabase* databaseP = 
m_database[asdin->getRegionType()][asdin->getModuleType()].get();
 
  111   TGCChannelASDOut* asdout = 
nullptr;
 
  115   if(asdin->isEndcap()) {
 
  116    if(!asdin->isInner()){
 
  124    if(!asdin->isInner()){
 
  135   if(asdin->isEndcap()&&!asdin->isInner()){
 
  136     chamber = 5-asdin->getChamber();
 
  138     chamber = asdin->getChamber()-1;
 
  144     const int MaxEntry = databaseP->getMaxEntry();
 
  145     for(
int i=0; 
i<MaxEntry; 
i++){
 
  148       if(asdinisEndcap&&asdinisTriplet)
 
  149     dbChamber = dbChamber-1;
 
  151       int dbChannel = asdinChannel-1;
 
  152       if(databaseP->getEntry(
i,7)==dbChannel &&
 
  153          databaseP->getEntry(
i,1)==dbChamber &&
 
  154          databaseP->getEntry(
i,0)==asdinLayer) {
 
  161     bool is_Backward = 
false; 
 
  162     if(asdin->isEndcap()){
 
  163       if(!asdin->isInner()) { 
 
  164         if(asdin->isAside()) is_Backward = (sector%2==1);
 
  165         else                 is_Backward = (sector%2==0); 
 
  170           if(asdin->isAside()) is_Backward = 
false;
 
  171           else                 is_Backward = 
true; 
 
  172         } 
else if(sector == 16) {
 
  173       if(asdin->isAside()) is_Backward = 
true;
 
  174       else                 is_Backward = 
false; 
 
  178       if(asdin->isAside())  is_Backward = (sector%3==2);
 
  179       else                  is_Backward = (sector%3!=2);
 
  183       if(asdin->isAside()) is_Backward = 
true; 
 
  185     if(( is_Backward && asdin->isAside()) ||
 
  186        (!is_Backward && asdin->isCside()))
 
  187       channel = 32-asdin->getChannel();
 
  189       channel = asdin->getChannel()-1;
 
  191   if(
channel==-1) 
return nullptr;
 
  193   asdout = 
new TGCChannelASDOut(asdin->getSideType(),
 
  194                 asdin->getSignalType(),
 
  195                 asdin->getRegionType(),