IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Feb 8, 2010, 4:06:45 PM (16 years ago)
Author:
watersc1
Message:

Edits for detrend cleanup.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/src/dettool.c

    r26515 r26815  
    9494        MODECASE(DETTOOL_MODE_PENDINGCLEANUP_PROCESSEDEXP, pendingcleanup_processedexpMode);
    9595        MODECASE(DETTOOL_MODE_DONECLEANUP_PROCESSEDEXP, donecleanup_processedexpMode);
     96        MODECASE(DETTOOL_MODE_UPDATESTATE_PROCESSED, updatestateprocessedMode);
    9697        // stacked
    9798        MODECASE(DETTOOL_MODE_TOSTACKED,        tostackedMode);
     
    142143        MODECASE(DETTOOL_MODE_PENDINGCLEANUP_RESIDEXP, pendingcleanup_residexpMode);
    143144        MODECASE(DETTOOL_MODE_DONECLEANUP_RESIDEXP, donecleanup_residexpMode);
     145        MODECASE(DETTOOL_MODE_UPDATESTATE_RESID, updatestateresidMode);
    144146        // detrunsummary
    145147        MODECASE(DETTOOL_MODE_TODETRUNSUMMARY,  todetrunsummaryMode);
     
    18591861
    18601862
    1861 bool setProcessedImfileDataState(pxConfig *config, psS64 det_id, psS64 exp_id, const char *class_id, const char *data_state)
     1863bool setProcessedImfileDataState(pxConfig *config, psMetadata *where, const char *data_state)
    18621864{
    18631865    PS_ASSERT_PTR_NON_NULL(config, false);
     1866    PS_ASSERT_PTR_NON_NULL(where, false);
    18641867    PS_ASSERT_PTR_NON_NULL(data_state, false);
    1865     PS_ASSERT_PTR_NON_NULL(class_id, false);
    18661868
    18671869    if (!isValidDataState (data_state)) return false;
    1868    
    1869     char *query = "UPDATE detProcessedImfile SET data_state = '%s'"
    1870         " WHERE det_id = %" PRId64
    1871         " AND exp_id = %" PRId64
    1872         " AND class_id = '%s'";
    1873     if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, exp_id, class_id)) {
    1874         psError(PS_ERR_UNKNOWN, false,
    1875                 "failed to change state for det_id %" PRId64 ", exp_id %" PRId64 ", class_id %s",
    1876                 det_id, exp_id, class_id);
    1877         return false;
    1878     }
    1879 
    1880     return true;
    1881 }
    1882 
    1883 bool setProcessedExpDataState(pxConfig *config, psS64 det_id, psS64 exp_id, const char *data_state)
     1870
     1871    psString query = psStringCopy("UPDATE detProcessedImfile SET data_state = '%s'");
     1872    if (where && psListLength(where->list) > 0) {
     1873      psString whereClause = psDBGenerateWhereSQL(where,NULL);
     1874      psStringAppend(&query," %s",whereClause);
     1875      psFree(whereClause);
     1876    } else {
     1877      psError(PS_ERR_UNKNOWN, true, "search parameters are required");
     1878      return(false);
     1879    }
     1880
     1881    if (!p_psDBRunQueryF(config->dbh, query, data_state)) {
     1882      psFree(query);
     1883      psError(PS_ERR_UNKNOWN, false, "database error");
     1884      return(false);
     1885    }
     1886    psFree(query);
     1887    return(true);
     1888}
     1889
     1890bool setProcessedExpDataState(pxConfig *config, psMetadata *where, const char *data_state)
    18841891{
    18851892    PS_ASSERT_PTR_NON_NULL(config, false);
     1893    PS_ASSERT_PTR_NON_NULL(where, false);
    18861894    PS_ASSERT_PTR_NON_NULL(data_state, false);
    18871895
    18881896    if (!isValidDataState (data_state)) return false;
    18891897
    1890     char *query = "UPDATE detProcessedExp SET data_state = '%s'"
    1891         " WHERE det_id = %" PRId64
    1892         " AND exp_id = %" PRId64;
    1893     if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, exp_id)) {
    1894         psError(PS_ERR_UNKNOWN, false,
    1895                 "failed to change state for det_id %" PRId64 ", exp_id %" PRId64,
    1896                 det_id, exp_id);
    1897         return false;
    1898     }
    1899 
    1900     return true;
    1901 }
    1902 
    1903 
     1898    psString query = psStringCopy("UPDATE detProcessedExp SET data_state = '%s'");
     1899    if (where && psListLength(where->list) > 0) {
     1900      psString whereClause = psDBGenerateWhereSQL(where,NULL);
     1901      psStringAppend(&query," %s",whereClause);
     1902      psFree(whereClause);
     1903    } else {
     1904      psError(PS_ERR_UNKNOWN, true, "search parameters are required");
     1905      return(false);
     1906    }
     1907
     1908    if (!p_psDBRunQueryF(config->dbh, query, data_state)) {
     1909      psFree(query);
     1910      psError(PS_ERR_UNKNOWN, false, "database error");
     1911      return(false);
     1912    }
     1913    psFree(query);
     1914    return(true);
     1915}
     1916
     1917bool setResidImfileDataState(pxConfig *config, psMetadata *where, const char *data_state)
     1918{
     1919    PS_ASSERT_PTR_NON_NULL(config, false);
     1920    PS_ASSERT_PTR_NON_NULL(where,false);
     1921    PS_ASSERT_PTR_NON_NULL(data_state, false);
     1922
     1923    if (!isValidDataState (data_state)) return false;
     1924
     1925    psString query = psStringCopy("UPDATE detResidImfile SET data_state = '%s'");
     1926    if (where && psListLength(where->list) > 0) {
     1927      psString whereClause = psDBGenerateWhereSQL(where,NULL);
     1928      psStringAppend(&query," %s",whereClause);
     1929      psFree(whereClause);
     1930    } else {
     1931      psError(PS_ERR_UNKNOWN, true, "search parameters are required");
     1932      return(false);
     1933    }
     1934
     1935    if (!p_psDBRunQueryF(config->dbh, query, data_state)) {
     1936      psFree(query);
     1937      psError(PS_ERR_UNKNOWN, false, "database error");
     1938      return(false);
     1939    }
     1940    psFree(query);
     1941    return(true);
     1942}
     1943// This function apparently not used anymore.
     1944bool setResidExpDataState(pxConfig *config, psMetadata *where, const char *data_state)
     1945{
     1946    PS_ASSERT_PTR_NON_NULL(config, false);
     1947    PS_ASSERT_PTR_NON_NULL(where,false);
     1948    PS_ASSERT_PTR_NON_NULL(data_state, false);
     1949
     1950    if (!isValidDataState (data_state)) return false;
     1951
     1952    psString query = psStringCopy("UPDATE detResidExp SET data_state = '%s'");
     1953    if (where && psListLength(where->list) > 0) {
     1954      psString whereClause = psDBGenerateWhereSQL(where,NULL);
     1955      psStringAppend(&query," %s",whereClause);
     1956      psFree(whereClause);
     1957    } else {
     1958      psError(PS_ERR_UNKNOWN, true, "search parameters are required");
     1959      return(false);
     1960    }
     1961
     1962    if (!p_psDBRunQueryF(config->dbh, query, data_state)) {
     1963      psFree(query);
     1964      psError(PS_ERR_UNKNOWN, false, "database error");
     1965      return(false);
     1966    }
     1967    psFree(query);
     1968    return(true);
     1969}
     1970
     1971// Not yet updated for cleaning
    19041972bool setStackedImfileDataState(pxConfig *config, psS64 det_id, psS32 iteration, const char *class_id, const char *data_state)
    19051973{
     
    19882056    return true;
    19892057}
    1990 
    1991 bool setResidImfileDataState(pxConfig *config, psS64 det_id, psS32 iteration, psS64 exp_id, const char *class_id, const char *data_state)
    1992 {
    1993     PS_ASSERT_PTR_NON_NULL(config, false);
    1994     PS_ASSERT_PTR_NON_NULL(data_state, false);
    1995     PS_ASSERT_PTR_NON_NULL(class_id, false);
    1996 
    1997     if (!isValidDataState (data_state)) return false;
    1998 
    1999     char *query = "UPDATE detResidImfile SET data_state = '%s'"
    2000         " WHERE det_id = %" PRId64
    2001         " AND iteration = %" PRId32
    2002         " AND exp_id = %" PRId64
    2003         " AND class_id = '%s'";
    2004     if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration, exp_id, class_id)) {
    2005         psError(PS_ERR_UNKNOWN, false,
    2006                 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 ", exp_id %" PRId64 ", class_id %s",
    2007                 det_id, iteration, exp_id, class_id);
    2008         return false;
    2009     }
    2010 
    2011     return true;
    2012 }
    2013 
    2014 bool setResidExpDataState(pxConfig *config, psS64 det_id, psS32 iteration, psS64 exp_id, const char *data_state)
    2015 {
    2016     PS_ASSERT_PTR_NON_NULL(config, false);
    2017     PS_ASSERT_PTR_NON_NULL(data_state, false);
    2018 
    2019     if (!isValidDataState (data_state)) return false;
    2020 
    2021     char *query = "UPDATE detResidExp SET data_state = '%s'"
    2022         " WHERE det_id = %" PRId64
    2023         " AND iteration = %" PRId32
    2024         " AND exp_id = %" PRId64;
    2025     if (!p_psDBRunQueryF(config->dbh, query, data_state, det_id, iteration, exp_id)) {
    2026         psError(PS_ERR_UNKNOWN, false,
    2027                 "failed to change state for det_id %" PRId64 ", iteration %" PRId32 ", exp_id %" PRId64,
    2028                 det_id, iteration, exp_id);
    2029         return false;
    2030     }
    2031 
    2032     return true;
    2033 }
     2058// End not yet modified for cleanup.
    20342059
    20352060bool exportrunMode(pxConfig *config)
Note: See TracChangeset for help on using the changeset viewer.