]> pilppa.org Git - libplp.git/blob - src/DeviceData.cc
cleanups for devices with no data
[libplp.git] / src / DeviceData.cc
1 /*
2  * DeviceData.cc
3  *
4  *  Created on: Mar 10, 2011
5  *      Author: lamikr
6  */
7
8 #include "Data.hh"
9 #include "DeviceData.hh"
10 #include "log.h"
11
12 using namespace std;
13 using namespace plp;
14
15 DeviceData::DeviceData(string id_param, string type_param) : Device(id_param, type_param) {
16         _latest_data    = NULL;
17 }
18
19 DeviceData::DeviceData(string id_param,
20                 string type_param,
21                 string name_param,
22                 EnumDeviceLifeCycleStatus status_param,
23                 Data *data_param) : Device(id_param, type_param, name_param, status_param) {
24         //if (latest_data != NULL)
25         //      _latest_data    = latest_data->clone();
26         _latest_data    = data_param;
27 }
28
29 DeviceData::~DeviceData() {
30         if (_latest_data != NULL)
31                 delete(_latest_data);
32         _latest_data    = NULL;
33 }
34
35 void DeviceData::printout() {
36         string  id;
37
38         log_debug("--- device data --- \n");
39         id      = get_id();
40         log_debug("\tid: %s\n", id.c_str());
41         log_debug("\tname: %s\n", get_name().c_str());
42         log_debug("\ttype: %s\n", get_type().c_str());
43         log_debug("\tlifecycle state: %d\n", get_lifecycle_state());
44         if (_latest_data != NULL) {
45                 log_debug("data not null\n");
46                 _latest_data->printout();
47         }
48         else
49                 log_debug("data null\n");
50 }