refactor PROPERTY_PLAIN and READONLY_PROPERTY_PLAIN;

pull/48/head
Bryan Biedenkapp 2 years ago
parent c94ddc3421
commit 7513bccf52

@ -209,14 +209,14 @@ const uint8_t IP_COMPRESS_RFC1144_UNCOMPRESS = 0x02U;
protected: type m_##variableName; \
public: __forceinline type get##propName(void) const { return m_##variableName; }
/// <summary>Creates a read-only get property, does not use "get"/"set".</summary>
#define __PROTECTED_READONLY_PROPERTY_PLAIN(type, variableName, propName) \
/// <summary>Creates a read-only get property, does not use "get".</summary>
#define __PROTECTED_READONLY_PROPERTY_PLAIN(type, variableName) \
protected: type m_##variableName; \
public: __forceinline type propName(void) const { return m_##variableName; }
public: __forceinline type variableName(void) const { return m_##variableName; }
/// <summary>Creates a read-only get property, does not use "get".</summary>
#define __READONLY_PROPERTY_PLAIN(type, variableName, propName) \
#define __READONLY_PROPERTY_PLAIN(type, variableName) \
private: type m_##variableName; \
public: __forceinline type propName(void) const { return m_##variableName; }
public: __forceinline type variableName(void) const { return m_##variableName; }
/// <summary>Creates a get and set private property.</summary>
#define __PROPERTY(type, variableName, propName) \
@ -230,14 +230,14 @@ const uint8_t IP_COMPRESS_RFC1144_UNCOMPRESS = 0x02U;
__forceinline void set##propName(type val) { m_##variableName = val; }
/// <summary>Creates a get and set private property, does not use "get"/"set".</summary>
#define __PROPERTY_PLAIN(type, variableName, propName) \
#define __PROPERTY_PLAIN(type, variableName) \
private: type m_##variableName; \
public: __forceinline type propName(void) const { return m_##variableName; } \
__forceinline void propName(type val) { m_##variableName = val; }
public: __forceinline type variableName(void) const { return m_##variableName; }\
__forceinline void variableName(type val) { m_##variableName = val; }
/// <summary>Creates a get and set protected property, does not use "get"/"set".</summary>
#define __PROTECTED_PROPERTY_PLAIN(type, variableName, propName) \
#define __PROTECTED_PROPERTY_PLAIN(type, variableName) \
protected: type m_##variableName; \
public: __forceinline type propName(void) const { return m_##variableName; } \
__forceinline void propName(type val) { m_##variableName = val; }
public: __forceinline type variableName(void) const { return m_##variableName; }\
__forceinline void variableName(type val) { m_##variableName = val; }
#endif // __COMMON_DEFINES_H__

@ -71,7 +71,7 @@ private:
public:
/// <summary>Flag indicating if the thread was started.</summary>
__PROTECTED_READONLY_PROPERTY_PLAIN(bool, started, started);
__PROTECTED_READONLY_PROPERTY_PLAIN(bool, started);
};
#endif // __THREAD_H__

@ -155,17 +155,17 @@ namespace dmr
public:
/// <summary>DMR site model type.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, siteModel, siteModel);
__READONLY_PROPERTY_PLAIN(uint8_t, siteModel);
/// <summary>DMR site network ID.</summary>
__READONLY_PROPERTY_PLAIN(uint16_t, netId, netId);
__READONLY_PROPERTY_PLAIN(uint16_t, netId);
/// <summary>DMR site ID.</summary>
__READONLY_PROPERTY_PLAIN(uint16_t, siteId, siteId);
__READONLY_PROPERTY_PLAIN(uint16_t, siteId);
/// <summary>DMR partition ID.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, parId, parId);
__READONLY_PROPERTY_PLAIN(uint8_t, parId);
/// <summary>DMR require registration.</summary>
__READONLY_PROPERTY_PLAIN(bool, requireReg, requireReg);
__READONLY_PROPERTY_PLAIN(bool, requireReg);
/// <summary>Flag indicating whether this site is a linked active network member.</summary>
__READONLY_PROPERTY_PLAIN(bool, netActive, netActive);
__READONLY_PROPERTY_PLAIN(bool, netActive);
};
} // namespace dmr

@ -78,7 +78,7 @@ namespace dmr
public:
/// <summary>Flag indicating whether or not the embedded data is valid.</summary>
__READONLY_PROPERTY_PLAIN(bool, valid, isValid);
__READONLY_PROPERTY_PLAIN(bool, valid);
/// <summary>Full-link control opcode.</summary>
__READONLY_PROPERTY(uint8_t, FLCO, FLCO);

@ -141,7 +141,7 @@ namespace dmr
/** Local Site data */
/// <summary>Local Site Identity Entry.</summary>
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry, siteIdenEntry);
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry);
protected:
static bool m_verbose;

@ -93,15 +93,15 @@ namespace lookups
public:
/// <summary>Voice Channel Identity.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, chId, chId);
__READONLY_PROPERTY_PLAIN(uint8_t, chId);
/// <summary>Voice Channel Number.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, chNo, chNo);
__READONLY_PROPERTY_PLAIN(uint32_t, chNo);
/// <summary>REST API Address.</summary>
__READONLY_PROPERTY_PLAIN(std::string, address, address);
__READONLY_PROPERTY_PLAIN(std::string, address);
/// <summary>REST API Port.</summary>
__READONLY_PROPERTY_PLAIN(uint16_t, port, port);
__READONLY_PROPERTY_PLAIN(uint16_t, port);
/// <summary>REST API Password.</summary>
__READONLY_PROPERTY_PLAIN(std::string, password, password);
__READONLY_PROPERTY_PLAIN(std::string, password);
};
// ---------------------------------------------------------------------------

@ -86,15 +86,15 @@ namespace lookups
public:
/// <summary>Channel ID for this entry.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, channelId, channelId);
__READONLY_PROPERTY_PLAIN(uint8_t, channelId);
/// <summary>Base frequency for this entry.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, baseFrequency, baseFrequency);
__READONLY_PROPERTY_PLAIN(uint32_t, baseFrequency);
/// <summary>Channel spacing in kHz for this entry.</summary>
__READONLY_PROPERTY_PLAIN(float, chSpaceKhz, chSpaceKhz);
__READONLY_PROPERTY_PLAIN(float, chSpaceKhz);
/// <summary>Channel transmit offset in MHz for this entry.</summary>
__READONLY_PROPERTY_PLAIN(float, txOffsetMhz, txOffsetMhz);
__READONLY_PROPERTY_PLAIN(float, txOffsetMhz);
/// <summary>Channel bandwith in kHz for this entry.</summary>
__READONLY_PROPERTY_PLAIN(float, chBandwidthKhz, chBandwidthKhz);
__READONLY_PROPERTY_PLAIN(float, chBandwidthKhz);
};
// ---------------------------------------------------------------------------

@ -85,9 +85,9 @@ namespace lookups
public:
/// <summary>Flag indicating if the radio is enabled.</summary>
__READONLY_PROPERTY_PLAIN(bool, radioEnabled, radioEnabled);
__READONLY_PROPERTY_PLAIN(bool, radioEnabled);
/// <summary>Flag indicating if the radio is default.</summary>
__READONLY_PROPERTY_PLAIN(bool, radioDefault, radioDefault);
__READONLY_PROPERTY_PLAIN(bool, radioDefault);
};
// ---------------------------------------------------------------------------

@ -73,9 +73,9 @@ namespace lookups
public:
/// <summary>Talkgroup ID.</summary>
__PROPERTY_PLAIN(uint32_t, tgId, tgId);
__PROPERTY_PLAIN(uint32_t, tgId);
/// <summary>Talkgroup DMR slot.</summary>
__PROPERTY_PLAIN(uint8_t, tgSlot, tgSlot);
__PROPERTY_PLAIN(uint8_t, tgSlot);
};
// ---------------------------------------------------------------------------
@ -117,11 +117,11 @@ namespace lookups
public:
/// <summary>Peer ID.</summary>
__PROPERTY_PLAIN(uint32_t, peerId, peerId);
__PROPERTY_PLAIN(uint32_t, peerId);
/// <summary>Talkgroup ID.</summary>
__PROPERTY_PLAIN(uint32_t, tgId, tgId);
__PROPERTY_PLAIN(uint32_t, tgId);
/// <summary>Talkgroup DMR slot.</summary>
__PROPERTY_PLAIN(uint8_t, tgSlot, tgSlot);
__PROPERTY_PLAIN(uint8_t, tgSlot);
};
// ---------------------------------------------------------------------------
@ -189,15 +189,15 @@ namespace lookups
public:
/// <summary>Flag indicating whether the rule is active.</summary>
__PROPERTY_PLAIN(bool, active, active);
__PROPERTY_PLAIN(bool, active);
/// <summary>Flag indicating whether or not the talkgroup is a parrot.</summary>
__PROPERTY_PLAIN(bool, parrot, parrot);
__PROPERTY_PLAIN(bool, parrot);
/// <summary>List of peer IDs included by this rule.</summary>
__PROPERTY_PLAIN(std::vector<uint32_t>, inclusion, inclusion);
__PROPERTY_PLAIN(std::vector<uint32_t>, inclusion);
/// <summary>List of peer IDs excluded by this rule.</summary>
__PROPERTY_PLAIN(std::vector<uint32_t>, exclusion, exclusion);
__PROPERTY_PLAIN(std::vector<uint32_t>, exclusion);
/// <summary>List of rewrites performed by this rule.</summary>
__PROPERTY_PLAIN(std::vector<TalkgroupRuleRewrite>, rewrite, rewrite);
__PROPERTY_PLAIN(std::vector<TalkgroupRuleRewrite>, rewrite);
};
// ---------------------------------------------------------------------------
@ -247,11 +247,11 @@ namespace lookups
public:
/// <summary>Textual name for the routing rule.</summary>
__PROPERTY_PLAIN(std::string, name, name);
__PROPERTY_PLAIN(std::string, name);
/// <summary>Configuration for the routing rule.</summary>
__PROPERTY_PLAIN(TalkgroupRuleConfig, config, config);
__PROPERTY_PLAIN(TalkgroupRuleConfig, config);
/// <summary>Source talkgroup information for the routing rule.</summary>
__PROPERTY_PLAIN(TalkgroupRuleGroupVoiceSource, source, source);
__PROPERTY_PLAIN(TalkgroupRuleGroupVoiceSource, source);
};
// ---------------------------------------------------------------------------
@ -308,11 +308,11 @@ namespace lookups
public:
/// <summary>Number indicating the number of seconds to hang on a talkgroup.</summary>
__PROPERTY_PLAIN(uint32_t, groupHangTime, groupHangTime);
__PROPERTY_PLAIN(uint32_t, groupHangTime);
/// <summary>Flag indicating whether or not the network layer should send the talkgroups to peers.</summary>
__PROPERTY_PLAIN(bool, sendTalkgroups, sendTalkgroups);
__PROPERTY_PLAIN(bool, sendTalkgroups);
/// <summary>List of group voice rules.</summary>
__PROPERTY_PLAIN(std::vector<TalkgroupRuleGroupVoice>, groupVoice, groupVoice);
__PROPERTY_PLAIN(std::vector<TalkgroupRuleGroupVoice>, groupVoice);
};
} // namespace lookups

@ -231,9 +231,9 @@ namespace network
__PROTECTED_READONLY_PROPERTY(NET_CONN_STATUS, status, Status);
/// <summary>Unix socket storage containing the connected address.</summary>
__PROTECTED_READONLY_PROPERTY_PLAIN(sockaddr_storage, addr, addr);
__PROTECTED_READONLY_PROPERTY_PLAIN(sockaddr_storage, addr);
/// <summary>Length of the sockaddr_storage structure.</summary>
__PROTECTED_READONLY_PROPERTY_PLAIN(uint32_t, addrLen, addrLen);
__PROTECTED_READONLY_PROPERTY_PLAIN(uint32_t, addrLen);
/// <summary>Flag indicating whether network DMR slot 1 traffic is permitted.</summary>
__PROTECTED_READONLY_PROPERTY(bool, slot1, DMRSlot1);

@ -165,21 +165,21 @@ namespace nxdn
public:
/// <summary>NXDN location ID.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, locId, locId);
__READONLY_PROPERTY_PLAIN(uint32_t, locId);
/// <summary>Channel ID.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, channelId, channelId);
__READONLY_PROPERTY_PLAIN(uint8_t, channelId);
/// <summary>Channel number.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, channelNo, channelNo);
__READONLY_PROPERTY_PLAIN(uint32_t, channelNo);
/// <summary>Service class.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, serviceClass, serviceClass);
__READONLY_PROPERTY_PLAIN(uint8_t, serviceClass);
/// <summary>Flag indicating whether this site data is for an adjacent site.</summary>
__READONLY_PROPERTY_PLAIN(bool, isAdjSite, isAdjSite);
__READONLY_PROPERTY_PLAIN(bool, isAdjSite);
/// <summary>Callsign.</summary>
__READONLY_PROPERTY_PLAIN(std::string, callsign, callsign);
__READONLY_PROPERTY_PLAIN(std::string, callsign);
/// <summary>NXDN require registration.</summary>
__READONLY_PROPERTY_PLAIN(bool, requireReg, requireReg);
__READONLY_PROPERTY_PLAIN(bool, requireReg);
/// <summary>Flag indicating whether this site is a linked active network member.</summary>
__READONLY_PROPERTY_PLAIN(bool, netActive, netActive);
__READONLY_PROPERTY_PLAIN(bool, netActive);
};
} // namespace nxdn

@ -119,7 +119,7 @@ namespace nxdn
/** Local Site data */
/// <summary>Local Site Identity Entry.</summary>
__PROTECTED_PROPERTY_PLAIN(lookups::IdenTable, siteIdenEntry, siteIdenEntry);
__PROTECTED_PROPERTY_PLAIN(lookups::IdenTable, siteIdenEntry);
protected:
static bool m_verbose;

@ -253,31 +253,31 @@ namespace p25
public:
/// <summary>P25 location resource area.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, lra, lra);
__READONLY_PROPERTY_PLAIN(uint8_t, lra);
/// <summary>P25 network ID.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, netId, netId);
__READONLY_PROPERTY_PLAIN(uint32_t, netId);
/// <summary>Gets the P25 system ID.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, sysId, sysId);
__READONLY_PROPERTY_PLAIN(uint32_t, sysId);
/// <summary>P25 RFSS ID.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, rfssId, rfssId);
__READONLY_PROPERTY_PLAIN(uint8_t, rfssId);
/// <summary>P25 site ID.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, siteId, siteId);
__READONLY_PROPERTY_PLAIN(uint8_t, siteId);
/// <summary>Channel ID.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, channelId, channelId);
__READONLY_PROPERTY_PLAIN(uint8_t, channelId);
/// <summary>Channel number.</summary>
__READONLY_PROPERTY_PLAIN(uint32_t, channelNo, channelNo);
__READONLY_PROPERTY_PLAIN(uint32_t, channelNo);
/// <summary>Service class.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, serviceClass, serviceClass);
__READONLY_PROPERTY_PLAIN(uint8_t, serviceClass);
/// <summary>Flag indicating whether this site data is for an adjacent site.</summary>
__READONLY_PROPERTY_PLAIN(bool, isAdjSite, isAdjSite);
__READONLY_PROPERTY_PLAIN(bool, isAdjSite);
/// <summary>Callsign.</summary>
__READONLY_PROPERTY_PLAIN(std::string, callsign, callsign);
__READONLY_PROPERTY_PLAIN(std::string, callsign);
/// <summary>Count of available channels.</summary>
__READONLY_PROPERTY_PLAIN(uint8_t, chCnt, chCnt);
__READONLY_PROPERTY_PLAIN(uint8_t, chCnt);
/// <summary>Flag indicating whether this site is a linked active network member.</summary>
__READONLY_PROPERTY_PLAIN(bool, netActive, netActive);
__READONLY_PROPERTY_PLAIN(bool, netActive);
/// <summary>Local Time Offset.</summary>
__READONLY_PROPERTY_PLAIN(int8_t, lto, lto);
__READONLY_PROPERTY_PLAIN(int8_t, lto);
};
} // namespace p25

@ -78,9 +78,9 @@ namespace p25
__PROPERTY(uint8_t, rssi, RSSI);
/// <summary>Link control data.</summary>
__READONLY_PROPERTY_PLAIN(p25::lc::LC*, control, control);
__READONLY_PROPERTY_PLAIN(p25::lc::LC*, control);
/// <summary>Low speed data.</summary>
__READONLY_PROPERTY_PLAIN(p25::data::LowSpeedData*, lsd, lsd);
__READONLY_PROPERTY_PLAIN(p25::data::LowSpeedData*, lsd);
private:
edac::RS634717 m_rs;

@ -107,7 +107,7 @@ namespace p25
/** Local Site data */
/// <summary>Local Site Identity Entry.</summary>
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry, siteIdenEntry);
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry);
protected:
friend class LC;

@ -145,7 +145,7 @@ namespace p25
/** Local Site data */
/// <summary>Local Site Identity Entry.</summary>
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry, siteIdenEntry);
__PROTECTED_PROPERTY_PLAIN(::lookups::IdenTable, siteIdenEntry);
protected:
friend class dfsi::LC;

@ -1,13 +0,0 @@
// Creates a read-only get property.
#define __READONLY_PROPERTY(type, variableName, propName)
// Creates a read-only get property, does not use "get".
#define __READONLY_PROPERTY_PLAIN(type, variableName, propName)
// Creates a read-only get property by reference.
#define __READONLY_PROPERTY_BYREF(type, variableName, propName)
// Creates a get and set property.
#define __PROPERTY(type, variableName, propName)
// Creates a get and set property, does not use "get"/"set".
#define __PROPERTY_PLAIN(type, variableName, propName)
// Creates a get and set property by reference.
#define __PROPERTY_BYREF(type, variableName, propName)

@ -134,41 +134,41 @@ namespace network
public:
/// <summary>Peer ID.</summary>
__PROPERTY_PLAIN(uint32_t, id, id);
__PROPERTY_PLAIN(uint32_t, id);
/// <summary>Current Stream ID.</summary>
__PROPERTY_PLAIN(uint32_t, currStreamId, currStreamId);
__PROPERTY_PLAIN(uint32_t, currStreamId);
/// <summary>Unix socket storage containing the connected address.</summary>
__PROPERTY_PLAIN(sockaddr_storage, socketStorage, socketStorage);
__PROPERTY_PLAIN(sockaddr_storage, socketStorage);
/// <summary>Length of the sockaddr_storage structure.</summary>
__PROPERTY_PLAIN(uint32_t, sockStorageLen, sockStorageLen);
__PROPERTY_PLAIN(uint32_t, sockStorageLen);
/// <summary>IP address peer connected with.</<summary>
__PROPERTY_PLAIN(std::string, address, address);
__PROPERTY_PLAIN(std::string, address);
/// <summary>Port number peer connected with.</summary>
__PROPERTY_PLAIN(uint16_t, port, port);
__PROPERTY_PLAIN(uint16_t, port);
/// <summary>Salt value used for peer authentication.</summary>
__PROPERTY_PLAIN(uint32_t, salt, salt);
__PROPERTY_PLAIN(uint32_t, salt);
/// <summary>Flag indicating whether or not the peer is connected.</summary>
__PROPERTY_PLAIN(bool, connected, connected);
__PROPERTY_PLAIN(bool, connected);
/// <summary>Connection state.</summary>
__PROPERTY_PLAIN(NET_CONN_STATUS, connectionState, connectionState);
__PROPERTY_PLAIN(NET_CONN_STATUS, connectionState);
/// <summary>Number of pings received.</summary>
__PROPERTY_PLAIN(uint32_t, pingsReceived, pingsReceived);
__PROPERTY_PLAIN(uint32_t, pingsReceived);
/// <summary>Last ping received.</summary>
__PROPERTY_PLAIN(uint64_t, lastPing, lastPing);
__PROPERTY_PLAIN(uint64_t, lastPing);
/// <summary>JSON objecting containing peer configuration information.</summary>
__PROPERTY_PLAIN(json::object, config, config);
__PROPERTY_PLAIN(json::object, config);
/// <summary>Last received RTP sequence.</summary>
__PROPERTY_PLAIN(uint16_t, pktLastSeq, pktLastSeq);
__PROPERTY_PLAIN(uint16_t, pktLastSeq);
/// <summary>Calculated next RTP sequence.</summary>
__PROPERTY_PLAIN(uint16_t, pktNextSeq, pktNextSeq);
__PROPERTY_PLAIN(uint16_t, pktNextSeq);
};
// ---------------------------------------------------------------------------

@ -467,7 +467,7 @@ bool Voice::process(uint8_t* data, uint32_t len)
}
// Regenerate the previous super blocks Embedded Data or substitude the LC for it
if (m_rfEmbeddedData[m_rfEmbeddedReadN].isValid())
if (m_rfEmbeddedData[m_rfEmbeddedReadN].valid())
lcss = m_rfEmbeddedData[m_rfEmbeddedReadN].getData(data + 2U, m_rfN);
else
lcss = m_rfEmbeddedLC.getData(data + 2U, m_rfN);
@ -1077,7 +1077,7 @@ void Voice::processNetwork(const data::Data& dmrData)
}
else {
// Regenerate the previous super blocks Embedded Data or substitude the LC for it
if (m_netEmbeddedData[m_netEmbeddedReadN].isValid())
if (m_netEmbeddedData[m_netEmbeddedReadN].valid())
lcss = m_netEmbeddedData[m_netEmbeddedReadN].getData(data + 2U, dmrData.getN());
else
lcss = m_netEmbeddedLC.getData(data + 2U, dmrData.getN());

@ -83,7 +83,7 @@ namespace network
public:
/// <summary>Last received RTP sequence number.</summary>
__READONLY_PROPERTY_PLAIN(uint16_t, pktLastSeq, pktLastSeq);
__READONLY_PROPERTY_PLAIN(uint16_t, pktLastSeq);
protected:
std::string m_address;

Loading…
Cancel
Save

Powered by TurnKey Linux.