mirror of
https://github.com/eclipse/paho.mqtt-sn.embedded-c.git
synced 2025-12-16 08:56:51 +01:00
64 lines
1.9 KiB
C++
64 lines
1.9 KiB
C++
/**************************************************************************************
|
|
* Copyright (c) 2018, Tomoaki Yamaguchi
|
|
*
|
|
* All rights reserved. This program and the accompanying materials
|
|
* are made available under the terms of the Eclipse Public License v1.0
|
|
* and Eclipse Distribution License v1.0 which accompany this distribution.
|
|
*
|
|
* The Eclipse Public License is available at
|
|
* http://www.eclipse.org/legal/epl-v10.html
|
|
* and the Eclipse Distribution License is available at
|
|
* http://www.eclipse.org/org/documents/edl-v10.php.
|
|
*
|
|
* Contributors:
|
|
* Tomoaki Yamaguchi - initial API and implementation and/or initial documentation
|
|
**************************************************************************************/
|
|
|
|
#ifndef MQTTSNGATEWAY_SRC_MQTTSNGWENCAPSULATEDPACKET_H_
|
|
#define MQTTSNGATEWAY_SRC_MQTTSNGWENCAPSULATEDPACKET_H_
|
|
|
|
namespace MQTTSNGW
|
|
{
|
|
|
|
class WirelessNodeId
|
|
{
|
|
friend class MQTTSNGWEncapsulatedPacket;
|
|
public:
|
|
WirelessNodeId();
|
|
~WirelessNodeId();
|
|
void setId(uint8_t* id, uint8_t len);
|
|
void setId(WirelessNodeId* id);
|
|
bool operator ==(WirelessNodeId& id);
|
|
private:
|
|
uint8_t _len;
|
|
uint8_t* _nodeId;
|
|
};
|
|
|
|
class MQTTSNGWEncapsulatedPacket
|
|
{
|
|
public:
|
|
MQTTSNGWEncapsulatedPacket();
|
|
MQTTSNGWEncapsulatedPacket(MQTTSNPacket* packet);
|
|
~MQTTSNGWEncapsulatedPacket();
|
|
int unicast(SensorNetwork* network, SensorNetAddress* sendTo);
|
|
int serialize(uint8_t* buf);
|
|
int desirialize(unsigned char* buf, unsigned short len);
|
|
int getType(void);
|
|
unsigned char* getPacketData(void);
|
|
int getPacketLength(void);
|
|
const char* getName();
|
|
MQTTSNPacket* getMQTTSNPacket(void);
|
|
void setWirelessNodeId(WirelessNodeId* id);
|
|
WirelessNodeId* getWirelessNodeId(void);
|
|
char* print(char* buf);
|
|
|
|
private:
|
|
MQTTSNPacket* _mqttsn;
|
|
WirelessNodeId _id;
|
|
uint8_t _ctrl;
|
|
};
|
|
|
|
}
|
|
|
|
#endif /* MQTTSNGATEWAY_SRC_MQTTSNGWENCAPSULATEDPACKET_H_ */
|