/*
- * DeviceData.cc
+ * DataReader.cc
*
* Created on: Nov 7, 2010
* Author: lamikr
#include <string.h>
#include "W1Util.hh"
-#include "DeviceData.hh"
+#include "DataReader.hh"
#include "StoreDay.hh"
#include "StoreCache.hh"
#include "DeviceConfig.hh"
return !(iss >> format >> result).fail();
}
-DeviceData::DeviceData(string device_id_param) {
+DataReader::DataReader(string device_id_param) {
string base_dir;
device_config = NULL;
device_ch_dir = W1Util::concat_paths(device_ch_dir, device_id);
}
-DeviceData::~DeviceData() {
+DataReader::~DataReader() {
if (device_config != NULL) {
delete(device_config);
device_config = NULL;
}
}
-Data *DeviceData::find_newest_data(vector<string> year_name_vector_param) {
+Data *DataReader::find_newest_data(vector<string> year_name_vector_param) {
string year_name;
int size;
Data *ret_val;
return ret_val;
}
-Data *DeviceData::find_oldest_data(vector<string> year_name_vector_param) {
+Data *DataReader::find_oldest_data(vector<string> year_name_vector_param) {
int size;
string year_name;
Data *ret_val;
return ret_val;
}
-DataRange *DeviceData::get_data_range() {
+DataRange *DataReader::get_data_range() {
DataRange *ret_val;
vector<string> y_list;
Data *o_data;
return ret_val;
}
-DataRange *DeviceData::get_summary(Date *date_param,
+DataRange *DataReader::get_summary(Date *date_param,
EnumSummaryCalculationType calc_type_param,
EnumSummaryPeriod period_type_param) {
DataRange *ret_val;
return ret_val;
}
-DataRange *DeviceData::get_yearly_summary(Date *date,
+DataRange *DataReader::get_yearly_summary(Date *date,
EnumSummaryCalculationType calc_type_param) {
return get_summary(date, calc_type_param, PERIOD_YEARLY);
}
-DataRange *DeviceData::get_yearly_summary(Date *date) {
+DataRange *DataReader::get_yearly_summary(Date *date) {
DataRange *ret_val;
if (device_config == NULL) {
return ret_val;
}
-DataRange *DeviceData::get_yearly_summary(Date *start_date,
+DataRange *DataReader::get_yearly_summary(Date *start_date,
Date *end_date) {
DataRange *ret_val;
DataRange *data;
return ret_val;
}
-DataRange *DeviceData::get_monthly_summary(Date *date,
+DataRange *DataReader::get_monthly_summary(Date *date,
EnumSummaryCalculationType calc_type_param) {
return get_summary(date, calc_type_param, PERIOD_MONTHLY);
}
-DataRange *DeviceData::get_monthly_summary(Date *date) {
+DataRange *DataReader::get_monthly_summary(Date *date) {
DataRange *ret_val;
if (device_config == NULL) {
return ret_val;
}
-DataRange *DeviceData::get_monthly_summary(Date *start_date,
+DataRange *DataReader::get_monthly_summary(Date *start_date,
Date *end_date) {
DataRange *ret_val;
DataRange *data;
return ret_val;
}
-DataRange *DeviceData::get_daily_summary(Date *date,
+DataRange *DataReader::get_daily_summary(Date *date,
EnumSummaryCalculationType calc_type_param) {
return get_summary(date, calc_type_param, PERIOD_DAILY);
}
-DataRange *DeviceData::get_daily_summary(Date *date) {
+DataRange *DataReader::get_daily_summary(Date *date) {
DataRange *ret_val;
if (device_config == NULL) {
return ret_val;
}
-DataRange *DeviceData::get_daily_summary(Date *start_date,
+DataRange *DataReader::get_daily_summary(Date *start_date,
Date *end_date) {
DataRange *ret_val;
DataRange *data;
return ret_val;
}
-DataRange *DeviceData::get_hourly_summary(Date *date,
+DataRange *DataReader::get_hourly_summary(Date *date,
EnumSummaryCalculationType calc_type_param) {
return get_summary(date, calc_type_param, PERIOD_HOURLY);
}
-DataRange *DeviceData::get_hourly_summary(Date *date) {
+DataRange *DataReader::get_hourly_summary(Date *date) {
DataRange *ret_val;
if (device_config == NULL) {
return ret_val;
}
-DataRange *DeviceData::get_hourly_summary(Date *start_date,
+DataRange *DataReader::get_hourly_summary(Date *start_date,
Date *end_date) {
DataRange *ret_val;
DataRange *dta_lst;
return ret_val;
}
-DataRange *DeviceData::get_data(Date *start_date,
+DataRange *DataReader::get_data(Date *start_date,
Date *end_date) {
DataRange *ret_val;
EnumSummaryPeriod period;
}
return ret_val;
}
+
+string DataReader::get_device_id() {
+ return device_id;
+}
+
+/**
+ * Read device type from the device specific config file
+ */
+string DataReader::get_device_type() {
+ string ret_val;
+
+ if (device_config == NULL) {
+ device_config = Factory::get_device_config(device_id);
+ ret_val = device_config->get_cfg_value(DEVICE_CONFIG_VALUE_KEY__TYPE);
+ }
+ return ret_val;
+}