Fix for SVACE and Klocwork issues.
[platform/upstream/iotivity.git] / service / simulator / inc / simulator_platform_info.h
1 /******************************************************************
2  *
3  * Copyright 2015 Samsung Electronics All Rights Reserved.
4  *
5  *
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  ******************************************************************/
20 #ifndef SIMULATOR_PLATFORM_INFO_H_
21 #define SIMULATOR_PLATFORM_INFO_H_
22
23 #include <iostream>
24
25 /**
26  * @class   PlatformInfo
27  *
28  * @brief   This class contains remote device platform information and provide APIs access it.
29  */
30 class PlatformInfo
31 {
32     public:
33         /**
34          * This method is for getting platfom id.
35          *
36          * @return Platform id.
37          */
38         std::string getPlatformID() const;
39
40         /**
41          * This method is for getting platform version.
42          *
43          * @return Platform version.
44          */
45         std::string getPlatformVersion() const;
46
47         /**
48          * This method is for getting manufacturer name.
49          *
50          * @return manufacturer name.
51          */
52         std::string getManufacturerName() const;
53
54         /**
55          * This method is for getting manufacturer URL.
56          *
57          * @return manufacturer URL.
58          */
59         std::string getManufacturerUrl() const;
60
61         /**
62          * This method is for getting model number.
63          *
64          * @return Model number.
65          */
66         std::string getModelNumber() const;
67
68         /**
69          * This method is for getting date of manufacture.
70          *
71          * @return Date of manufacture.
72          */
73         std::string getDateOfManfacture() const;
74
75         /**
76          * This method is for getting operating system version.
77          *
78          * @return Operating system version.
79          */
80         std::string getOSVersion() const;
81
82         /**
83          * This method is for getting hardware version.
84          *
85          * @return Hardware version.
86          */
87         std::string getHardwareVersion() const;
88
89         /**
90          * This method is for getting firmware version.
91          *
92          * @return Firmware version.
93          */
94         std::string getFirmwareVersion() const;
95
96         /**
97          * This method is for getting support link URL.
98          *
99          * @return URL of support link.
100          */
101         std::string getSupportUrl() const;
102
103         /**
104          * This method is for getting system time.
105          *
106          * @return System time.
107          */
108         std::string getSystemTime() const;
109
110         void setPlatformID(const std::string &platformId);
111         void setPlatformVersion(const std::string &platformVersion);
112         void setManufacturerName(const std::string &manufacturerName);
113         void setManufacturerUrl(const std::string &manufacturerUrl);
114         void setModelNumber(const std::string &modelNumber);
115         void setDateOfManfacture(const std::string &dateOfManufacture);
116         void setOSVersion(const std::string &osVersion);
117         void setHardwareVersion(const std::string &hwVersion);
118         void setFirmwareVersion(const std::string &firmwareVersion);
119         void setSupportUrl(const std::string &supportUrl);
120         void setSystemTime(const std::string &systemTime);
121
122     private:
123         std::string m_platformID;
124         std::string m_manufacturerName;
125         std::string m_manufacturerUrl;
126         std::string m_modelNumber;
127         std::string m_dateOfManufacture;
128         std::string m_platformVersion;
129         std::string m_operationSystemVersion;
130         std::string m_hardwareVersion;
131         std::string m_firmwareVersion;
132         std::string m_supportUrl;
133         std::string m_systemTime;
134 };
135
136 #endif