X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=src%2FDataReader.cc;h=72a44bd65a20ce6cbc0bbfd2592689e288ef2388;hb=db9ced4236847cfca52b232935838ee80dcfd047;hp=1c7e9a36121bc85403f80d5552c4c74765c96fe7;hpb=063ec715601bf9662797725cb39732bea0572d26;p=libplp.git diff --git a/src/DataReader.cc b/src/DataReader.cc index 1c7e9a3..72a44bd 100644 --- a/src/DataReader.cc +++ b/src/DataReader.cc @@ -74,7 +74,9 @@ Data *DataReader::get_latest_data() { ret_val = NULL; y_list = FileUtil::get_subdirectories(device_dir); - ret_val = find_latest_data(y_list); + if (y_list.size() > 0) { + ret_val = find_latest_data(y_list); + } return ret_val; } @@ -282,6 +284,34 @@ DataRange *DataReader::get_monthly_summary(Date *start_date, return ret_val; } +/* + * Get Daily summary from the latest date + */ +DataRange *DataReader::get_daily_summary() { + if (device_config == NULL) { + device_config = DeviceConfig::get_device_config(device_id); + summary_calc_type = device_config->get_summary_calculation_type(); + } + return get_daily_summary(summary_calc_type); +} + +/* + * Get Daily summary specified by the calc_type from the latest date. + */ +DataRange *DataReader::get_daily_summary(EnumSummaryCalculationType calc_type_param) { + Data *data; + Date date; + DataRange *ret_val; + + ret_val = NULL; + data = get_latest_data(); + if (data != NULL) { + date = data->get_date(); + ret_val = get_daily_summary(&date, calc_type_param); + } + return ret_val; +} + DataRange *DataReader::get_daily_summary(Date *date, EnumSummaryCalculationType calc_type_param) { return get_summary(date, calc_type_param, PERIOD_DAILY); @@ -377,8 +407,6 @@ DataRange *DataReader::get_data(Date *start_date, EnumSummaryPeriod period; ret_val = NULL; - start_date->printout(); - end_date->printout(); period = get_period_type(start_date, end_date); switch(period) { case PERIOD_YEARLY: