def calcDailyStatistics(base_path, output_path, temp_path, functionList = [], start_date = date.today(), filenames = ('chirps-v2.0', '.tif'), output_filenames = ('chirps-v2.0', 'tif'), preci_threshold = 0.5, maxdays = 30):
    filesList = selectDailyFiles(base_path, start_date, maxdays, filenames)
    if not filesList:
        print "No files to process. Please check the directory and try again."
        return -1
    if 'DSLW' in functionList:
        # calculate days since last rain
        daysSinceLast(base_path, output_path, temp_path, filesList, output_filenames, preci_threshold, maxdays)
    return 0
def processTRMM(process, cfg):
    if process['type'] == 'dslr':
        inWks = process['input_dir']
        outWks = process['output_dir']
        tmpWks = process['temp_dir']

        daysSinceLast(inWks, outWks, tmpWks)
    elif process['type'] == 'download':
        outWks = process['output_dir']
        if 'start_date' in process:
            startDate = process['start_date']
        else:
            startDate = None
        if 'end_date' in process:
            endDate = process['end_date']
        else:
            endDate = None
        trmmUtils.getDailyTRMM(outWks,[startDate, endDate])
    elif process['type'] == 'convert':
        outWks = process['output_dir']
        fname = process['filename']
        trmmUtils.trmmNetCDFToTiff(fname, outWks)
    return 0