Ram Gandikota
/
ABCD
A metronome using the FRDM K64F board
Diff: mbed-client/source/include/eventdata.h
- Revision:
- 0:a7a43371b306
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mbed-client/source/include/eventdata.h Sun May 14 18:40:18 2017 +0000 @@ -0,0 +1,94 @@ +/* + * Copyright (c) 2015 ARM Limited. All rights reserved. + * SPDX-License-Identifier: Apache-2.0 + * 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 EVENT_DATA_H +#define EVENT_DATA_H + +#include "mbed-client/m2mvector.h" + +//FORWARD DECLARATION +class M2MObject; + + +typedef Vector<M2MObject *> M2MObjectList; + +class M2MSecurity; + +class EventData +{ +public: + virtual ~EventData() {} +}; + +class M2MSecurityData : public EventData +{ +public: + M2MSecurityData() + :_object(NULL){} + virtual ~M2MSecurityData() {} + M2MSecurity *_object; +}; + +class ResolvedAddressData : public EventData +{ +public: + ResolvedAddressData() + :_address(NULL), + _port(0){} + virtual ~ResolvedAddressData() {} + const M2MConnectionObserver::SocketAddress *_address; + uint16_t _port; +}; + +class ReceivedData : public EventData +{ +public: + ReceivedData() + :_data(NULL), + _size(0), + _port(0), + _address(NULL){} + virtual ~ReceivedData() {} + uint8_t *_data; + uint16_t _size; + uint16_t _port; + const M2MConnectionObserver::SocketAddress *_address; +}; + +class M2MRegisterData : public EventData +{ +public: + M2MRegisterData() + :_object(NULL){} + virtual ~M2MRegisterData() {} + M2MSecurity *_object; + M2MObjectList _object_list; +}; + +class M2MUpdateRegisterData : public EventData +{ +public: + M2MUpdateRegisterData() + :_object(NULL), + _lifetime(0){} + virtual ~M2MUpdateRegisterData() {} + M2MSecurity *_object; + uint32_t _lifetime; + M2MObjectList _object_list; +}; + + +#endif //EVENT_DATA_H +