XBee and XBee-PRO ZigBee RF modules provide cost-effective wireless connectivity to electronic devices. They are interoperable with other ZigBee PRO feature set devices, including devices from other vendors.
Device/ExplicitAddress.cpp@0:837e6c48e90d, 2015-10-22 (annotated)
- Committer:
- yangcq88517
- Date:
- Thu Oct 22 12:28:26 2015 +0000
- Revision:
- 0:837e6c48e90d
- Child:
- 6:5f31ddc17239
initial upload
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
yangcq88517 | 0:837e6c48e90d | 1 | #include "ExplicitAddress.h" |
yangcq88517 | 0:837e6c48e90d | 2 | |
yangcq88517 | 0:837e6c48e90d | 3 | ExplicitAddress::ExplicitAddress() |
yangcq88517 | 0:837e6c48e90d | 4 | { } |
yangcq88517 | 0:837e6c48e90d | 5 | |
yangcq88517 | 0:837e6c48e90d | 6 | ExplicitAddress::ExplicitAddress (const char * address, const char * explicitAddress ) |
yangcq88517 | 0:837e6c48e90d | 7 | : Address(address) |
yangcq88517 | 0:837e6c48e90d | 8 | { |
yangcq88517 | 0:837e6c48e90d | 9 | memcpy(explicitValue, explicitAddress, 6); |
yangcq88517 | 0:837e6c48e90d | 10 | } |
yangcq88517 | 0:837e6c48e90d | 11 | |
yangcq88517 | 0:837e6c48e90d | 12 | ExplicitAddress::ExplicitAddress(long SerialNumberHigh, long SerialNumberLow, int NetworkAddress, int SourceEndpoint, int DestinationEndpoint, int ClusterID, int ProfileID) |
yangcq88517 | 0:837e6c48e90d | 13 | : Address(SerialNumberHigh, SerialNumberLow, NetworkAddress) |
yangcq88517 | 0:837e6c48e90d | 14 | { |
yangcq88517 | 0:837e6c48e90d | 15 | explicitValue[0] = SourceEndpoint; |
yangcq88517 | 0:837e6c48e90d | 16 | explicitValue[1] = DestinationEndpoint; |
yangcq88517 | 0:837e6c48e90d | 17 | explicitValue[2] = ClusterID >> 8; |
yangcq88517 | 0:837e6c48e90d | 18 | explicitValue[3] = ClusterID; |
yangcq88517 | 0:837e6c48e90d | 19 | explicitValue[4] = ProfileID >> 8; |
yangcq88517 | 0:837e6c48e90d | 20 | explicitValue[5] = ProfileID; |
yangcq88517 | 0:837e6c48e90d | 21 | } |
yangcq88517 | 0:837e6c48e90d | 22 | |
yangcq88517 | 0:837e6c48e90d | 23 | char * ExplicitAddress::getExplicitValue() |
yangcq88517 | 0:837e6c48e90d | 24 | { |
yangcq88517 | 0:837e6c48e90d | 25 | return explicitValue; |
yangcq88517 | 0:837e6c48e90d | 26 | } |
yangcq88517 | 0:837e6c48e90d | 27 | |
yangcq88517 | 0:837e6c48e90d | 28 | int ExplicitAddress::getSourceEndpoint() |
yangcq88517 | 0:837e6c48e90d | 29 | { |
yangcq88517 | 0:837e6c48e90d | 30 | return explicitValue[0]; |
yangcq88517 | 0:837e6c48e90d | 31 | } |
yangcq88517 | 0:837e6c48e90d | 32 | |
yangcq88517 | 0:837e6c48e90d | 33 | void ExplicitAddress::setSourceEndpoint(int SourceEndpoint) |
yangcq88517 | 0:837e6c48e90d | 34 | { |
yangcq88517 | 0:837e6c48e90d | 35 | explicitValue[0] = SourceEndpoint; |
yangcq88517 | 0:837e6c48e90d | 36 | } |
yangcq88517 | 0:837e6c48e90d | 37 | |
yangcq88517 | 0:837e6c48e90d | 38 | int ExplicitAddress::getDestinationEndpoint() |
yangcq88517 | 0:837e6c48e90d | 39 | { |
yangcq88517 | 0:837e6c48e90d | 40 | return explicitValue[1]; |
yangcq88517 | 0:837e6c48e90d | 41 | } |
yangcq88517 | 0:837e6c48e90d | 42 | |
yangcq88517 | 0:837e6c48e90d | 43 | void ExplicitAddress::setDestinationEndpoint(int DestinationEndpoint) |
yangcq88517 | 0:837e6c48e90d | 44 | { |
yangcq88517 | 0:837e6c48e90d | 45 | explicitValue[1] = DestinationEndpoint; |
yangcq88517 | 0:837e6c48e90d | 46 | } |
yangcq88517 | 0:837e6c48e90d | 47 | |
yangcq88517 | 0:837e6c48e90d | 48 | int ExplicitAddress::getClusterID() |
yangcq88517 | 0:837e6c48e90d | 49 | { |
yangcq88517 | 0:837e6c48e90d | 50 | return (explicitValue[2] << 8) | explicitValue[3]; |
yangcq88517 | 0:837e6c48e90d | 51 | } |
yangcq88517 | 0:837e6c48e90d | 52 | |
yangcq88517 | 0:837e6c48e90d | 53 | void ExplicitAddress::setClusterID(int ClusterID) |
yangcq88517 | 0:837e6c48e90d | 54 | { |
yangcq88517 | 0:837e6c48e90d | 55 | explicitValue[2] = ClusterID >> 8; |
yangcq88517 | 0:837e6c48e90d | 56 | explicitValue[3] = ClusterID; |
yangcq88517 | 0:837e6c48e90d | 57 | } |
yangcq88517 | 0:837e6c48e90d | 58 | |
yangcq88517 | 0:837e6c48e90d | 59 | int ExplicitAddress::getProfileID() |
yangcq88517 | 0:837e6c48e90d | 60 | { |
yangcq88517 | 0:837e6c48e90d | 61 | return (explicitValue[4] << 8) | explicitValue[5]; |
yangcq88517 | 0:837e6c48e90d | 62 | } |
yangcq88517 | 0:837e6c48e90d | 63 | |
yangcq88517 | 0:837e6c48e90d | 64 | void ExplicitAddress::setProfileID(int ProfileID) |
yangcq88517 | 0:837e6c48e90d | 65 | { |
yangcq88517 | 0:837e6c48e90d | 66 | explicitValue[4] = ProfileID >> 8; |
yangcq88517 | 0:837e6c48e90d | 67 | explicitValue[5] = ProfileID; |
yangcq88517 | 0:837e6c48e90d | 68 | } |