6 #ifndef SWIFT_MISC_NETWORK_CLIENTPROVIDER_H
7 #define SWIFT_MISC_NETWORK_CLIENTPROVIDER_H
10 #include <QReadWriteLock>
20 class CAircraftSituation;
63 bool skipEqualValues =
true) = 0;
92 virtual void setClients(
const CClientList &clients)
override;
93 virtual void clearClients()
override;
97 virtual bool addNewClient(
const CClient &client)
override;
100 bool skipEqualValues =
true)
override;
104 virtual bool setClientGndCapability(
const aviation::CCallsign &callsign,
bool supportGndFlag)
override;
109 mutable QReadWriteLock m_lockClient;
115 virtual void anchor();
137 bool addNewClient(
const CClient &client);
141 bool skipEqualValues);
Specialized value object compliant map for variants, based on indexes.
Base class of provider aware classes.
Base class for providers.
Value object encapsulating information of an aircraft's situation.
Value object encapsulating information of a callsign.
Value object for a set of callsigns.
Class which can be directly used to access an.
swift::misc::network::CClientList getClientsForCallsigns(const aviation::CCallsignSet &callsigns) const
Returns a list of other clients corresponding to the given callsigns.
CClientAware(IClientProvider *clientProvider)
Constructor.
CClientAware()
Default constructor.
void clearClients()
Set other clients.
void setClients(const CClientList &clients)
Set other clients.
void setClientProvider(CClientProvider *provider)
Provider.
Value object encapsulating a list of voice rooms.
Client provider dummy for testing.
Direct in memory access to client (network client) data.
Direct in memory access to client (network client) data.
virtual CClientList getClients() const =0
Get other clients.
virtual bool setClientGndCapability(const aviation::CCallsign &callsign, bool supportGndFlag)=0
Set gnd.flag capability.
virtual bool autoAdjustCientGndCapability(const aviation::CAircraftSituation &situation)=0
Adjust gnd.flag capability from situation.
virtual bool hasClientInfo(const aviation::CCallsign &callsign) const =0
Client info for given callsign?
virtual CClient getClientOrDefaultForCallsign(const aviation::CCallsign &callsign) const =0
Other client for the given callsigns.
virtual void clearClients()=0
Set other clients.
virtual void setClients(const CClientList &clients)=0
Set other clients.
virtual bool setOtherClient(const swift::misc::network::CClient &client)=0
Set client for its callsign.
virtual int updateOrAddClient(const aviation::CCallsign &callsign, const CPropertyIndexVariantMap &vm, bool skipEqualValues=true)=0
Update or add a client.
virtual int removeClient(const aviation::CCallsign &callsign)=0
Remove client.
virtual CClientList getClientsForCallsigns(const aviation::CCallsignSet &callsigns) const =0
Returns a list of other clients corresponding to the given callsigns.
virtual void markAsSwiftClient(const aviation::CCallsign &callsign)=0
Mark as other swift client.
virtual bool addNewClient(const CClient &client)=0
Add a new client, if existing nothing will be added.
virtual bool addClientGndCapability(const aviation::CCallsign &callsign)=0
Add gnd.flag capability.
Free functions in swift::misc.
#define SWIFT_MISC_EXPORT
Export a class or function from the library.