mbed Connector Endpoint interface. This interface permits a mbed endpoint to easily setup MDS resources and emit those resources to an MDS server.
Dependents: IoT_LED_demo ServoTest uWater_Project hackathon ... more
Diff: api/Options.h
- Revision:
- 0:b438482ebbfc
- Child:
- 2:853f9ecc12df
diff -r 000000000000 -r b438482ebbfc api/Options.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/api/Options.h Tue Jan 27 22:23:51 2015 +0000 @@ -0,0 +1,130 @@ +/** + * @file Options.h + * @brief mbed CoAP Options (immutable OptionsBuilder instance) class header + * @author Doug Anson/Chris Paola + * @version 1.0 + * @see + * + * Copyright (c) 2014 + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + + #ifndef __OPTIONS_H__ + #define __OPTIONS_H__ + + // Static Resources + #include "StaticResource.h" + + // Dynamic Resources + #include "DynamicResource.h" + + // include the mbed connector resource list + #include "mbedConnectorInterface.h" + + // Vector support + #include <vector> + + // Resources list + typedef vector<StaticResource *> StaticResourcesList; + typedef vector<DynamicResource *> DynamicResourcesList; + + namespace Connector { + class Options { + public: + /** + Default constructor + */ + Options(); + + /** + Copy constructor + */ + Options(const Options &opt); + + /** + Destructor + */ + virtual ~Options(); + + /** + Get the node lifetime + */ + char *getLifetime(); + + /** + Get the NSP domain + */ + string getDomain(); + + /** + Get the node name + */ + string getEndpointNodename(); + + /** + Get the node type + */ + string getEndpointType(); + + /** + Get the NSP port number + */ + int getNSPPortNumber(); + + /** + Get the node radio channel list + */ + uint32_t setRadioChannelList(); + + /** + Get the NSP read update period + */ + int getReadUpdatePeriod(); + + /** + Get the NSP address + */ + uint8_t *getNSPAddress(); + + /** + Get the node MAC address + */ + uint8_t *setMACAddress(); + + /** + Get the list of static resources + */ + StaticResourcesList *getStaticResourceList(); + + /** + Get the list of dynamic resources + */ + DynamicResourcesList *getDynamicResourceList(); + + protected: + char *m_lifetime; + string m_domain; + string m_node_name; + string m_endpoint_type; + uint32_t m_channel_list; + int m_rd_update_period; + int m_nsp_port; + uint8_t m_nsp_address[NSP_IP_ADDRESS_LENGTH]; + uint8_t m_mac_address[NODE_MAC_ADDRESS_LENGTH]; + StaticResourcesList m_static_resources; + DynamicResourcesList m_dynamic_resources; + }; + } + + #endif // __OPTIONS_H__ \ No newline at end of file