/[PAMELA software]/YodaProfiler/src/GLTables.cpp
ViewVC logotype

Diff of /YodaProfiler/src/GLTables.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.18 by mocchiut, Thu Nov 9 16:47:47 2006 UTC revision 1.20 by mocchiut, Mon Nov 27 14:25:34 2006 UTC
# Line 1386  UInt_t GL_TIMESYNC::DBabsTime(UInt_t OBT Line 1386  UInt_t GL_TIMESYNC::DBabsTime(UInt_t OBT
1386   */   */
1387  UInt_t GL_TIMESYNC::ResursTime(UInt_t OBT){    UInt_t GL_TIMESYNC::ResursTime(UInt_t OBT){  
1388    //    //
1389    return(((UInt_t)((this->DBobt(OBT)-this->DBobt(OBT0))/1000)+TIMESYNC));    return(((UInt_t)((Int_t)(this->DBobt(OBT)-this->DBobt(OBT0))/1000)+TIMESYNC));
1390    //    //
1391  };  };
1392    
1393    
1394  ULong64_t GL_TIMESYNC::DBobt(UInt_t obt){    /**
1395     * Return the correct packet number if we went back to zero
1396     */
1397    Long64_t GL_TIMESYNC::DBpkt(UInt_t pkt_num){  
1398    //    //
1399    if ( obt < (obtfirst/2) && obtfirst > (numeric_limits<UInt_t>::max()/2) ) return((ULong64_t)(obt+numeric_limits<UInt_t>::max()));    if ( pkt_num < (pktfirst/2) && pktfirst > (16777214/2)  ){
1400        return((Long64_t)pkt_num+16777215LL);
1401      };
1402    //    //
1403    if ( obt > (obtfirst*2) && obt > (numeric_limits<UInt_t>::max()/2) ){    if ( pkt_num > pktfirst*2 && pkt_num > (16777214/2) ){
1404      if ( (obt-numeric_limits<UInt_t>::max()) < 0  ){      return((Long64_t)pkt_num-16777215LL);
       return((ULong64_t)(numeric_limits<UInt_t>::max()-obt));  
     } else {  
       return((ULong64_t)(obt-numeric_limits<UInt_t>::max()));  
     };  
1405    };    };
1406    //    //
1407    return((ULong64_t)obt);    return((Long64_t)pkt_num);
1408    //    //
1409  };  };
1410    
1411  UInt_t GL_TIMESYNC::DBpkt(UInt_t pkt_num){    /**
1412     * Return the correct On Board Time if we went back to zero
1413     */
1414    Long64_t GL_TIMESYNC::DBobt(UInt_t obt){  
1415    //    //
1416    if ( pkt_num < (pktfirst/2) && pktfirst > (16777214/2)  ) return((pkt_num+16777215));    if ( obt < (obtfirst/2) && obtfirst > (numeric_limits<UInt_t>::max()/2) ) return((Long64_t)(obt+numeric_limits<UInt_t>::max()));
1417    //    //
1418    if ( pkt_num > pktfirst*2 && pkt_num > (16777214/2) ){    if ( obt > (obtfirst*2) && obt > (numeric_limits<UInt_t>::max()/2) ){
1419      if ( (pkt_num-16777215) < 0 ){      return((Long64_t)obt-(Long64_t)numeric_limits<UInt_t>::max());
       return((16777215-pkt_num));  
     } else {  
       return((pkt_num-16777215));  
     };  
1420    };    };
1421    //    //
1422    return(pkt_num);    return((Long64_t)obt);
   //  
1423  };  };
1424    
1425    
1426    
1427    // ULong64_t GL_TIMESYNC::DBobt(UInt_t obt){  
1428    //   //
1429    //   if ( obt < (obtfirst/2) && obtfirst > (numeric_limits<UInt_t>::max()/2) ) return((ULong64_t)(obt+numeric_limits<UInt_t>::max()));
1430    //   //
1431    //   if ( obt > (obtfirst*2) && obt > (numeric_limits<UInt_t>::max()/2) ){
1432    //     if ( (obt-numeric_limits<UInt_t>::max()) < 0  ){
1433    //       return((ULong64_t)(numeric_limits<UInt_t>::max()-obt));
1434    //     } else {
1435    //       return((ULong64_t)(obt-numeric_limits<UInt_t>::max()));
1436    //     };
1437    //   };
1438    //   //
1439    //   return((ULong64_t)obt);
1440    //   //
1441    // };
1442    
1443    // UInt_t GL_TIMESYNC::DBpkt(UInt_t pkt_num){  
1444    //   //
1445    //   if ( pkt_num < (pktfirst/2) && pktfirst > (16777214/2)  ) return((pkt_num+16777215));
1446    //   //
1447    //   if ( pkt_num > pktfirst*2 && pkt_num > (16777214/2) ){
1448    //     if ( (pkt_num-16777215) < 0 ){
1449    //       return((16777215-pkt_num));
1450    //     } else {
1451    //       return((pkt_num-16777215));
1452    //     };
1453    //   };
1454    //   //
1455    //   return(pkt_num);
1456    //   //
1457    // };
1458    
1459  /*  /*
1460   *   *
1461   * Convert the time in the DB from UInt_t to a string   * Convert the time in the DB from UInt_t to a string

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.20

  ViewVC Help
Powered by ViewVC 1.1.23