Fork Vasum on GitHub Official Vasum Wiki on Tizen.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vasum::HostDbusConnection Class Reference

#include <host-dbus-connection.hpp>

Public Types

typedef std::function< void(const
std::string &target, const
std::string &targetBusName,
const std::string
&targetObjectPath, const
std::string &targetInterface,
const std::string
&targetMethod, GVariant
*parameters,
dbus::MethodResultBuilder::Pointer
result)> 
ProxyCallCallback
 

Public Member Functions

 HostDbusConnection (ZonesManager *zm)
 
 ~HostDbusConnection ()
 
void setProxyCallCallback (const ProxyCallCallback &callback)
 Register proxy call callback. More...
 
void proxyCallAsync (const std::string &busName, const std::string &objectPath, const std::string &interface, const std::string &method, GVariant *parameters, const dbus::DbusConnection::AsyncMethodCallCallback &callback)
 Make a proxy call. More...
 

Private Member Functions

void onNameAcquired ()
 
void onNameLost ()
 
bool waitForName (const unsigned int timeoutMs)
 
void onMessageCall (const std::string &objectPath, const std::string &interface, const std::string &methodName, GVariant *parameters, dbus::MethodResultBuilder::Pointer result)
 
void onClientVanished (const std::string &name)
 
void onSignalCall (const std::string &senderBusName, const std::string &objectPath, const std::string &interface, const std::string &signalName, GVariant *parameters) const
 

Private Attributes

dbus::DbusConnection::Pointer mDbusConnection
 
std::mutex mNameMutex
 
std::condition_variable mNameCondition
 
bool mNameAcquired
 
bool mNameLost
 
dbus::DbusConnection::SubscriptionId mSubscriptionId
 
ProxyCallCallback mProxyCallCallback
 
ZonesManagermZonesManagerPtr
 

Member Typedef Documentation

typedef std::function<void(const std::string& target, const std::string& targetBusName, const std::string& targetObjectPath, const std::string& targetInterface, const std::string& targetMethod, GVariant* parameters, dbus::MethodResultBuilder::Pointer result )> vasum::HostDbusConnection::ProxyCallCallback

Constructor & Destructor Documentation

vasum::HostDbusConnection::HostDbusConnection ( ZonesManager zm)
vasum::HostDbusConnection::~HostDbusConnection ( )

Member Function Documentation

void vasum::HostDbusConnection::onClientVanished ( const std::string &  name)
private
void vasum::HostDbusConnection::onMessageCall ( const std::string &  objectPath,
const std::string &  interface,
const std::string &  methodName,
GVariant *  parameters,
dbus::MethodResultBuilder::Pointer  result 
)
private
void vasum::HostDbusConnection::onNameAcquired ( )
private
void vasum::HostDbusConnection::onNameLost ( )
private
void vasum::HostDbusConnection::onSignalCall ( const std::string &  senderBusName,
const std::string &  objectPath,
const std::string &  interface,
const std::string &  signalName,
GVariant *  parameters 
) const
private
void vasum::HostDbusConnection::proxyCallAsync ( const std::string &  busName,
const std::string &  objectPath,
const std::string &  interface,
const std::string &  method,
GVariant *  parameters,
const dbus::DbusConnection::AsyncMethodCallCallback callback 
)

Make a proxy call.

void vasum::HostDbusConnection::setProxyCallCallback ( const ProxyCallCallback callback)

Register proxy call callback.

bool vasum::HostDbusConnection::waitForName ( const unsigned int  timeoutMs)
private

Member Data Documentation

dbus::DbusConnection::Pointer vasum::HostDbusConnection::mDbusConnection
private
bool vasum::HostDbusConnection::mNameAcquired
private
std::condition_variable vasum::HostDbusConnection::mNameCondition
private
bool vasum::HostDbusConnection::mNameLost
private
std::mutex vasum::HostDbusConnection::mNameMutex
private
ProxyCallCallback vasum::HostDbusConnection::mProxyCallCallback
private
dbus::DbusConnection::SubscriptionId vasum::HostDbusConnection::mSubscriptionId
private
ZonesManager* vasum::HostDbusConnection::mZonesManagerPtr
private

The documentation for this class was generated from the following file: