WSF
WsfXIO_ServiceT< T, SERVICE_TYPE > Class Template Reference

#include <WsfXIO_Service.hpp>

Inheritance diagram for WsfXIO_ServiceT< T, SERVICE_TYPE >:
Collaboration diagram for WsfXIO_ServiceT< T, SERVICE_TYPE >:

Public Types

using RequestType = T

Public Member Functions

 WsfXIO_ServiceT (WsfXIO_Interface *aInterfacePtr)
WsfXIO_SubscriptionCreateSubscription (RequestType &aRequest)
 Create a subscription from a request.
virtual void SubscriptionCancelledT (WsfXIO_Subscription *aSubscriptionPtr, RequestType &aRequest)
Public Member Functions inherited from WsfXIO_Service
 WsfXIO_Service (WsfXIO_Interface *aInterfacePtr)
virtual ~WsfXIO_Service ()
WsfXIO_SubscriptionFindSubscription (WsfXIO_Connection *aConnectionPtr, int aSubscriptionId)
WsfXIO_InterfaceGetInterface () const

Protected Types

using RequestMapT = std::map<WsfXIO_SubscriptionId, T>
Protected Types inherited from WsfXIO_Service
using SubscriptionMap = std::map<WsfXIO_SubscriptionId, WsfXIO_Subscription*>

Protected Member Functions

void SubscriptionCancelled (WsfXIO_Subscription *aSubscriptionPtr) override
const T * FindRequest (WsfXIO_SubscriptionId aId) const
const RequestMapTGetRequests () const
Protected Member Functions inherited from WsfXIO_Service
void DenyRequest (WsfXIO_RequestDataPkt &aRequest)
void HandleDisconnect (WsfXIO_Connection *aConnection)
void AddSubscription (WsfXIO_Subscription *aSubscriptionPtr)
bool RemoveSubscription (WsfXIO_Subscription *aSubscriptionPtr)
WsfXIO_SubscriptionCreateSubscription (WsfXIO_RequestDataPkt &aRequest)
void HandleCancellation (WsfXIO_SubscriptionCancelPkt &aPkt)
const SubscriptionMap GetSubscriptions () const
WsfXIO_SubscriptionFindSubscription (const WsfXIO_SubscriptionId &aSubscriptionId)
virtual void RemovingSubscription (WsfXIO_Subscription *aSubscriptionPtr)

Additional Inherited Members

Protected Attributes inherited from WsfXIO_Service
UtCallbackHolder mCallbacks
WsfXIO_InterfacemInterfacePtr

Detailed Description

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
class WsfXIO_ServiceT< T, SERVICE_TYPE >

Provides extended functionality for handling WsfXIO_Requests Ties a subscription to the original request for that subscription. Template parameter 'T' is the request packet used for this subscription provider and must be derived from WsfXIO_SubscriptionRequestPkt.

Member Typedef Documentation

◆ RequestMapT

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
using WsfXIO_ServiceT< T, SERVICE_TYPE >::RequestMapT = std::map<WsfXIO_SubscriptionId, T>
protected

◆ RequestType

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
using WsfXIO_ServiceT< T, SERVICE_TYPE >::RequestType = T

Constructor & Destructor Documentation

◆ WsfXIO_ServiceT()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
WsfXIO_ServiceT< T, SERVICE_TYPE >::WsfXIO_ServiceT ( WsfXIO_Interface * aInterfacePtr)
inline

Member Function Documentation

◆ CreateSubscription()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
WsfXIO_Subscription * WsfXIO_ServiceT< T, SERVICE_TYPE >::CreateSubscription ( RequestType & aRequest)
inline

Create a subscription from a request.

◆ FindRequest()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
const T * WsfXIO_ServiceT< T, SERVICE_TYPE >::FindRequest ( WsfXIO_SubscriptionId aId) const
inlineprotected

◆ GetRequests()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
const RequestMapT & WsfXIO_ServiceT< T, SERVICE_TYPE >::GetRequests ( ) const
inlineprotected

◆ SubscriptionCancelled()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
void WsfXIO_ServiceT< T, SERVICE_TYPE >::SubscriptionCancelled ( WsfXIO_Subscription * aSubscriptionPtr)
inlineoverrideprotectedvirtual

Reimplemented from WsfXIO_Service.

◆ SubscriptionCancelledT()

template<typename T, typename SERVICE_TYPE = WsfXIO_Service>
virtual void WsfXIO_ServiceT< T, SERVICE_TYPE >::SubscriptionCancelledT ( WsfXIO_Subscription * aSubscriptionPtr,
RequestType & aRequest )
inlinevirtual

Called when a subscription has been canceled May be called due to lost connection, destroyed simulation entity, or cancellation request

Reimplemented in WsfXIO_PlatformInfoService, WsfXIO_PlatformPartInfoService, WsfXIO_ScriptService, WsfXIO_SensorService, and WsfXIO_TrackService.

Referenced by WsfXIO_ServiceT< WsfXIO_RequestPlatformInfoPkt, WsfXIO_SimService >::SubscriptionCancelled(), and WsfXIO_ScriptService::SubscriptionCancelledT().


The documentation for this class was generated from the following file:
Copyrights Multiple, All Rights Reserved