Merge branch 'master' of git://anongit.freedesktop.org/git/dbus/dbus-c++
Merge branch 'master' of git://anongit.freedesktop.org/git/dbus/dbus-c++ Conflicts: include/dbus-c++/connection.h include/dbus-c++/dispatcher.h include/dbus-c++/pendingcall.h src/dispatcher.cpp
This commit is contained in:
commit
c1970e2352
57 changed files with 1642 additions and 1638 deletions
|
@ -26,7 +26,7 @@ void EchoClient::Echoed( const DBus::Variant& value )
|
|||
* For some strange reason, libdbus frequently dies with an OOM
|
||||
*/
|
||||
|
||||
static const int THREADS = 16;
|
||||
static const int THREADS = 3;
|
||||
|
||||
static bool spin = true;
|
||||
|
||||
|
@ -40,7 +40,7 @@ void* greeter_thread( void* arg )
|
|||
|
||||
snprintf(idstr, sizeof(idstr), "%lu", pthread_self());
|
||||
|
||||
for(int i = 0; i < 100 && spin; ++i)
|
||||
for (int i = 0; i < 30 && spin; ++i)
|
||||
{
|
||||
cout << client.Hello(idstr) << endl;
|
||||
}
|
||||
|
|
|
@ -17,13 +17,14 @@ EchoServer::EchoServer( DBus::Connection& connection )
|
|||
{
|
||||
}
|
||||
|
||||
DBus::Int32 EchoServer::Random()
|
||||
int32_t EchoServer::Random()
|
||||
{
|
||||
return rand();
|
||||
}
|
||||
|
||||
DBus::String EchoServer::Hello( const DBus::String& name )
|
||||
std::string EchoServer::Hello(const std::string &name)
|
||||
{
|
||||
sleep (10);
|
||||
return "Hello " + name + "!";
|
||||
}
|
||||
|
||||
|
@ -34,33 +35,33 @@ DBus::Variant EchoServer::Echo( const DBus::Variant& value )
|
|||
return value;
|
||||
}
|
||||
|
||||
std::vector< DBus::Byte > EchoServer::Cat( const DBus::String & file )
|
||||
std::vector< uint8_t > EchoServer::Cat(const std::string &file)
|
||||
{
|
||||
FILE *handle = fopen(file.c_str(), "rb");
|
||||
|
||||
if (!handle) throw DBus::Error("org.freedesktop.DBus.EchoDemo.ErrorFileNotFound", "file not found");
|
||||
|
||||
DBus::Byte buff[1024];
|
||||
uint8_t buff[1024];
|
||||
|
||||
size_t nread = fread(buff, 1, sizeof(buff), handle);
|
||||
|
||||
fclose(handle);
|
||||
|
||||
return std::vector< DBus::Byte > (buff, buff + nread);
|
||||
return std::vector< uint8_t > (buff, buff + nread);
|
||||
}
|
||||
|
||||
DBus::Int32 EchoServer::Sum( const std::vector<DBus::Int32>& ints )
|
||||
int32_t EchoServer::Sum(const std::vector<int32_t>& ints)
|
||||
{
|
||||
DBus::Int32 sum = 0;
|
||||
int32_t sum = 0;
|
||||
|
||||
for (size_t i = 0; i < ints.size(); ++i) sum += ints[i];
|
||||
|
||||
return sum;
|
||||
}
|
||||
|
||||
std::map< DBus::String, DBus::String > EchoServer::Info()
|
||||
std::map< std::string, std::string > EchoServer::Info()
|
||||
{
|
||||
std::map< DBus::String, DBus::String > info;
|
||||
std::map< std::string, std::string > info;
|
||||
char hostname[HOST_NAME_MAX];
|
||||
|
||||
gethostname(hostname, sizeof(hostname));
|
||||
|
|
|
@ -13,17 +13,17 @@ public:
|
|||
|
||||
EchoServer(DBus::Connection &connection);
|
||||
|
||||
DBus::Int32 Random();
|
||||
int32_t Random();
|
||||
|
||||
DBus::String Hello( const DBus::String & name );
|
||||
std::string Hello(const std::string &name);
|
||||
|
||||
DBus::Variant Echo(const DBus::Variant &value);
|
||||
|
||||
std::vector< DBus::Byte > Cat( const DBus::String & file );
|
||||
std::vector< uint8_t > Cat(const std::string &file);
|
||||
|
||||
DBus::Int32 Sum( const std::vector<DBus::Int32> & ints );
|
||||
int32_t Sum(const std::vector<int32_t> & ints);
|
||||
|
||||
std::map< DBus::String, DBus::String > Info();
|
||||
std::map< std::string, std::string > Info();
|
||||
};
|
||||
|
||||
#endif//__DEMO_ECHO_SERVER_H
|
||||
|
|
|
@ -15,7 +15,7 @@ static const char* DBUS_SERVER_PATH = "/org/freedesktop/DBus";
|
|||
DBusBrowser::DBusBrowser( ::DBus::Connection& conn )
|
||||
: ::DBus::ObjectProxy(conn, DBUS_SERVER_PATH, DBUS_SERVER_NAME)
|
||||
{
|
||||
typedef std::vector< ::DBus::String > Names;
|
||||
typedef std::vector< std::string > Names;
|
||||
|
||||
Names names = ListNames();
|
||||
|
||||
|
@ -26,17 +26,17 @@ DBusBrowser::DBusBrowser( ::DBus::Connection& conn )
|
|||
}
|
||||
|
||||
void DBusBrowser::NameOwnerChanged(
|
||||
const ::DBus::String& name, const ::DBus::String& old_owner, const ::DBus::String& new_owner )
|
||||
const std::string& name, const std::string& old_owner, const std::string& new_owner )
|
||||
{
|
||||
cout << name << ": " << old_owner << " -> " << new_owner << endl;
|
||||
}
|
||||
|
||||
void DBusBrowser::NameLost( const ::DBus::String& name )
|
||||
void DBusBrowser::NameLost( const std::string& name )
|
||||
{
|
||||
cout << name << " lost" << endl;
|
||||
}
|
||||
|
||||
void DBusBrowser::NameAcquired( const ::DBus::String& name )
|
||||
void DBusBrowser::NameAcquired( const std::string& name )
|
||||
{
|
||||
cout << name << " acquired" << endl;
|
||||
}
|
||||
|
|
|
@ -18,11 +18,11 @@ public:
|
|||
|
||||
private:
|
||||
|
||||
void NameOwnerChanged( const ::DBus::String&, const ::DBus::String&, const ::DBus::String& );
|
||||
void NameOwnerChanged( const std::string&, const std::string&, const std::string& );
|
||||
|
||||
void NameLost( const ::DBus::String& );
|
||||
void NameLost( const std::string& );
|
||||
|
||||
void NameAcquired( const ::DBus::String& );
|
||||
void NameAcquired( const std::string& );
|
||||
|
||||
private:
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ DBusBrowser::DBusBrowser( ::DBus::Connection& conn )
|
|||
set_border_width(5);
|
||||
set_default_size(400, 500);
|
||||
|
||||
typedef std::vector< ::DBus::String > Names;
|
||||
typedef std::vector< std::string > Names;
|
||||
|
||||
Names names = ListNames();
|
||||
|
||||
|
@ -46,17 +46,17 @@ DBusBrowser::DBusBrowser( ::DBus::Connection& conn )
|
|||
}
|
||||
|
||||
void DBusBrowser::NameOwnerChanged(
|
||||
const ::DBus::String& name, const ::DBus::String& old_owner, const ::DBus::String& new_owner )
|
||||
const std::string &name, const std::string &old_owner, const std::string &new_owner)
|
||||
{
|
||||
cout << name << ": " << old_owner << " -> " << new_owner << endl;
|
||||
}
|
||||
|
||||
void DBusBrowser::NameLost( const ::DBus::String& name )
|
||||
void DBusBrowser::NameLost(const std::string &name)
|
||||
{
|
||||
cout << name << " lost" << endl;
|
||||
}
|
||||
|
||||
void DBusBrowser::NameAcquired( const ::DBus::String& name )
|
||||
void DBusBrowser::NameAcquired(const std::string &name)
|
||||
{
|
||||
cout << name << " acquired" << endl;
|
||||
}
|
||||
|
|
|
@ -30,11 +30,11 @@ public:
|
|||
|
||||
private:
|
||||
|
||||
void NameOwnerChanged( const ::DBus::String&, const ::DBus::String&, const ::DBus::String& );
|
||||
void NameOwnerChanged(const std::string &, const std::string &, const std::string &);
|
||||
|
||||
void NameLost( const ::DBus::String& );
|
||||
void NameLost(const std::string &);
|
||||
|
||||
void NameAcquired( const ::DBus::String& );
|
||||
void NameAcquired(const std::string &);
|
||||
|
||||
void on_select_busname();
|
||||
|
||||
|
|
|
@ -14,9 +14,9 @@ HalManagerProxy::HalManagerProxy( DBus::Connection& connection )
|
|||
connect_signal(HalManagerProxy, DeviceAdded, DeviceAddedCb);
|
||||
connect_signal(HalManagerProxy, DeviceRemoved, DeviceRemovedCb);
|
||||
|
||||
std::vector< DBus::String > devices = GetAllDevices();
|
||||
std::vector< std::string > devices = GetAllDevices();
|
||||
|
||||
std::vector< DBus::String >::iterator it;
|
||||
std::vector< std::string >::iterator it;
|
||||
for (it = devices.begin(); it != devices.end(); ++it)
|
||||
{
|
||||
DBus::Path udi = *it;
|
||||
|
@ -27,9 +27,9 @@ HalManagerProxy::HalManagerProxy( DBus::Connection& connection )
|
|||
}
|
||||
}
|
||||
|
||||
std::vector< DBus::String > HalManagerProxy::GetAllDevices()
|
||||
std::vector< std::string > HalManagerProxy::GetAllDevices()
|
||||
{
|
||||
std::vector< DBus::String > udis;
|
||||
std::vector< std::string > udis;
|
||||
DBus::CallMessage call;
|
||||
|
||||
call.member("GetAllDevices");
|
||||
|
@ -44,7 +44,7 @@ std::vector< DBus::String > HalManagerProxy::GetAllDevices()
|
|||
void HalManagerProxy::DeviceAddedCb(const DBus::SignalMessage &sig)
|
||||
{
|
||||
DBus::MessageIter it = sig.reader();
|
||||
DBus::String devname;
|
||||
std::string devname;
|
||||
|
||||
it >> devname;
|
||||
|
||||
|
@ -57,7 +57,7 @@ void HalManagerProxy::DeviceAddedCb( const DBus::SignalMessage& sig )
|
|||
void HalManagerProxy::DeviceRemovedCb(const DBus::SignalMessage &sig)
|
||||
{
|
||||
DBus::MessageIter it = sig.reader();
|
||||
DBus::String devname;
|
||||
std::string devname;
|
||||
|
||||
it >> devname;
|
||||
|
||||
|
@ -76,10 +76,10 @@ HalDeviceProxy::HalDeviceProxy( DBus::Connection& connection, DBus::Path& udi )
|
|||
|
||||
void HalDeviceProxy::PropertyModifiedCb(const DBus::SignalMessage &sig)
|
||||
{
|
||||
typedef DBus::Struct< DBus::String, DBus::Bool, DBus::Bool > HalProperty;
|
||||
typedef DBus::Struct< std::string, bool, bool > HalProperty;
|
||||
|
||||
DBus::MessageIter it = sig.reader();
|
||||
DBus::Int32 number;
|
||||
int32_t number;
|
||||
|
||||
it >> number;
|
||||
|
||||
|
@ -98,7 +98,7 @@ void HalDeviceProxy::PropertyModifiedCb( const DBus::SignalMessage& sig )
|
|||
void HalDeviceProxy::ConditionCb(const DBus::SignalMessage &sig)
|
||||
{
|
||||
DBus::MessageIter it = sig.reader();
|
||||
DBus::String condition;
|
||||
std::string condition;
|
||||
|
||||
it >> condition;
|
||||
|
||||
|
|
|
@ -15,7 +15,7 @@ public:
|
|||
|
||||
HalManagerProxy(DBus::Connection &connection);
|
||||
|
||||
std::vector< DBus::String > GetAllDevices();
|
||||
std::vector< std::string > GetAllDevices();
|
||||
|
||||
private:
|
||||
|
||||
|
@ -23,7 +23,7 @@ private:
|
|||
|
||||
void DeviceRemovedCb(const DBus::SignalMessage &sig);
|
||||
|
||||
std::map< DBus::String, DBus::RefPtr< HalDeviceProxy > > _devices;
|
||||
std::map< std::string, DBus::RefPtr< HalDeviceProxy > > _devices;
|
||||
};
|
||||
|
||||
class HalDeviceProxy
|
||||
|
|
|
@ -16,11 +16,11 @@ PropsServer::PropsServer( DBus::Connection& connection )
|
|||
}
|
||||
|
||||
void PropsServer::on_set_property
|
||||
( DBus::InterfaceAdaptor& interface, const DBus::String& property, const DBus::Variant& value )
|
||||
(DBus::InterfaceAdaptor &interface, const std::string &property, const DBus::Variant &value)
|
||||
{
|
||||
if (property == "Message")
|
||||
{
|
||||
DBus::String msg = value;
|
||||
std::string msg = value;
|
||||
this->MessageChanged(msg);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -15,7 +15,7 @@ public:
|
|||
PropsServer(DBus::Connection &connection);
|
||||
|
||||
void on_set_property
|
||||
( DBus::InterfaceAdaptor& interface, const DBus::String& property, const DBus::Variant& value );
|
||||
(DBus::InterfaceAdaptor &interface, const std::string &property, const DBus::Variant &value);
|
||||
};
|
||||
|
||||
#endif//__DEMO_PROPS_SERVER_H
|
||||
|
|
|
@ -41,7 +41,7 @@ class DXXAPI BusTimeout : public Timeout
|
|||
{
|
||||
private:
|
||||
|
||||
BusTimeout( Timeout::Internal*, GMainContext* );
|
||||
BusTimeout(Timeout::Internal *, GMainContext *, int);
|
||||
|
||||
~BusTimeout();
|
||||
|
||||
|
@ -57,6 +57,7 @@ private:
|
|||
|
||||
GSource *_source;
|
||||
GMainContext *_ctx;
|
||||
int _priority;
|
||||
|
||||
friend class BusDispatcher;
|
||||
};
|
||||
|
@ -65,7 +66,7 @@ class DXXAPI BusWatch : public Watch
|
|||
{
|
||||
private:
|
||||
|
||||
BusWatch( Watch::Internal*, GMainContext* );
|
||||
BusWatch(Watch::Internal *, GMainContext *, int);
|
||||
|
||||
~BusWatch();
|
||||
|
||||
|
@ -81,6 +82,7 @@ private:
|
|||
|
||||
GSource *_source;
|
||||
GMainContext *_ctx;
|
||||
int _priority;
|
||||
|
||||
friend class BusDispatcher;
|
||||
};
|
||||
|
@ -88,7 +90,8 @@ friend class BusDispatcher;
|
|||
class DXXAPI BusDispatcher : public Dispatcher
|
||||
{
|
||||
public:
|
||||
BusDispatcher() : _ctx(NULL) {}
|
||||
|
||||
BusDispatcher() : _ctx(NULL), _priority(G_PRIORITY_DEFAULT) {}
|
||||
|
||||
void attach(GMainContext *);
|
||||
|
||||
|
@ -104,9 +107,12 @@ public:
|
|||
|
||||
void rem_watch(Watch *);
|
||||
|
||||
void set_priority(int priority);
|
||||
|
||||
private:
|
||||
|
||||
GMainContext *_ctx;
|
||||
int _priority;
|
||||
};
|
||||
|
||||
} /* namespace Glib */
|
||||
|
|
|
@ -78,10 +78,10 @@ public:
|
|||
|
||||
protected:
|
||||
|
||||
virtual void on_get_property( InterfaceAdaptor& interface, const String& property, Variant& value )
|
||||
virtual void on_get_property(InterfaceAdaptor &interface, const std::string &property, Variant &value)
|
||||
{}
|
||||
|
||||
virtual void on_set_property( InterfaceAdaptor& interface, const String& property, const Variant& value )
|
||||
virtual void on_set_property(InterfaceAdaptor &interface, const std::string &property, const Variant &value)
|
||||
{}
|
||||
|
||||
IntrospectedInterface *const introspect() const;
|
||||
|
@ -93,9 +93,9 @@ public:
|
|||
|
||||
PropertiesProxy();
|
||||
|
||||
Variant Get( const String& interface, const String& property );
|
||||
Variant Get(const std::string &interface, const std::string &property);
|
||||
|
||||
void Set( const String& interface, const String& property, const Variant& value );
|
||||
void Set(const std::string &interface, const std::string &property, const Variant &value);
|
||||
};
|
||||
|
||||
} /* namespace DBus */
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
|
||||
#include "dbus-c++-config.h"
|
||||
|
||||
#include <stdint.h>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
|
@ -38,17 +39,6 @@
|
|||
|
||||
namespace DBus {
|
||||
|
||||
typedef unsigned char Byte;
|
||||
typedef bool Bool;
|
||||
typedef signed short Int16;
|
||||
typedef unsigned short UInt16;
|
||||
typedef signed int Int32;
|
||||
typedef unsigned int UInt32;
|
||||
typedef signed long long Int64;
|
||||
typedef unsigned long long UInt64;
|
||||
typedef double Double;
|
||||
typedef std::string String;
|
||||
|
||||
struct DXXAPI Path : public std::string
|
||||
{
|
||||
Path() {}
|
||||
|
@ -145,16 +135,16 @@ struct type
|
|||
};
|
||||
|
||||
template <> struct type<Variant> { static std::string sig(){ return "v"; } };
|
||||
template <> struct type<Byte> { static std::string sig(){ return "y"; } };
|
||||
template <> struct type<Bool> { static std::string sig(){ return "b"; } };
|
||||
template <> struct type<Int16> { static std::string sig(){ return "n"; } };
|
||||
template <> struct type<UInt16> { static std::string sig(){ return "q"; } };
|
||||
template <> struct type<Int32> { static std::string sig(){ return "i"; } };
|
||||
template <> struct type<UInt32> { static std::string sig(){ return "u"; } };
|
||||
template <> struct type<Int64> { static std::string sig(){ return "x"; } };
|
||||
template <> struct type<UInt64> { static std::string sig(){ return "t"; } };
|
||||
template <> struct type<Double> { static std::string sig(){ return "d"; } };
|
||||
template <> struct type<String> { static std::string sig(){ return "s"; } };
|
||||
template <> struct type<uint8_t> { static std::string sig(){ return "y"; } };
|
||||
template <> struct type<bool> { static std::string sig(){ return "b"; } };
|
||||
template <> struct type<int16_t> { static std::string sig(){ return "n"; } };
|
||||
template <> struct type<uint16_t> { static std::string sig(){ return "q"; } };
|
||||
template <> struct type<int32_t> { static std::string sig(){ return "i"; } };
|
||||
template <> struct type<uint32_t> { static std::string sig(){ return "u"; } };
|
||||
template <> struct type<int64_t> { static std::string sig(){ return "x"; } };
|
||||
template <> struct type<uint64_t> { static std::string sig(){ return "t"; } };
|
||||
template <> struct type<double> { static std::string sig(){ return "d"; } };
|
||||
template <> struct type<std::string> { static std::string sig(){ return "s"; } };
|
||||
template <> struct type<Path> { static std::string sig(){ return "o"; } };
|
||||
template <> struct type<Signature> { static std::string sig(){ return "g"; } };
|
||||
template <> struct type<Invalid> { static std::string sig(){ return ""; } };
|
||||
|
@ -201,61 +191,61 @@ inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Inv
|
|||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Byte& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint8_t &val)
|
||||
{
|
||||
iter.append_byte(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Bool& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const bool &val)
|
||||
{
|
||||
iter.append_bool(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Int16& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int16_t& val)
|
||||
{
|
||||
iter.append_int16(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::UInt16& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint16_t& val)
|
||||
{
|
||||
iter.append_uint16(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Int32& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int32_t& val)
|
||||
{
|
||||
iter.append_int32(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::UInt32& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint32_t& val)
|
||||
{
|
||||
iter.append_uint32(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Int64& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int64_t& val)
|
||||
{
|
||||
iter.append_int64(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::UInt64& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint64_t& val)
|
||||
{
|
||||
iter.append_uint64(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::Double& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const double &val)
|
||||
{
|
||||
iter.append_double(val);
|
||||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const DBus::String& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const std::string &val)
|
||||
{
|
||||
iter.append_string(val.c_str());
|
||||
return iter;
|
||||
|
@ -290,7 +280,7 @@ inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const std::vect
|
|||
}
|
||||
|
||||
template<>
|
||||
inline DBus::MessageIter& operator << ( DBus::MessageIter& iter, const std::vector<DBus::Byte>& val )
|
||||
inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const std::vector<uint8_t>& val)
|
||||
{
|
||||
DBus::MessageIter ait = iter.new_array("y");
|
||||
ait.append_array('y', &val.front(), val.size());
|
||||
|
@ -353,61 +343,61 @@ inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Invalid&
|
|||
return iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Byte& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, uint8_t &val)
|
||||
{
|
||||
val = iter.get_byte();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Bool& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, bool &val)
|
||||
{
|
||||
val = iter.get_bool();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Int16& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, int16_t& val)
|
||||
{
|
||||
val = iter.get_int16();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::UInt16& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, uint16_t& val)
|
||||
{
|
||||
val = iter.get_uint16();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Int32& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, int32_t& val)
|
||||
{
|
||||
val = iter.get_int32();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::UInt32& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, uint32_t& val)
|
||||
{
|
||||
val = iter.get_uint32();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Int64& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, int64_t& val)
|
||||
{
|
||||
val = iter.get_int64();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::UInt64& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, uint64_t& val)
|
||||
{
|
||||
val = iter.get_uint64();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::Double& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, double &val)
|
||||
{
|
||||
val = iter.get_double();
|
||||
return ++iter;
|
||||
}
|
||||
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, DBus::String& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, std::string &val)
|
||||
{
|
||||
val = iter.get_string();
|
||||
return ++iter;
|
||||
|
@ -445,7 +435,7 @@ inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, std::vector<E>&
|
|||
}
|
||||
|
||||
template<>
|
||||
inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, std::vector<DBus::Byte>& val )
|
||||
inline DBus::MessageIter &operator >> (DBus::MessageIter &iter, std::vector<uint8_t>& val)
|
||||
{
|
||||
if (!iter.is_array())
|
||||
throw DBus::ErrorInvalidArgs("array expected");
|
||||
|
@ -455,7 +445,7 @@ inline DBus::MessageIter& operator >> ( DBus::MessageIter& iter, std::vector<DBu
|
|||
|
||||
DBus::MessageIter ait = iter.recurse();
|
||||
|
||||
DBus::Byte* array;
|
||||
uint8_t *array;
|
||||
size_t length = ait.get_array(&array);
|
||||
|
||||
val.insert(val.end(), array, array+length);
|
||||
|
|
|
@ -31,8 +31,8 @@
|
|||
|
||||
using namespace DBus;
|
||||
|
||||
Glib::BusTimeout::BusTimeout( Timeout::Internal* ti, GMainContext* ctx )
|
||||
: Timeout(ti), _ctx(ctx)
|
||||
Glib::BusTimeout::BusTimeout(Timeout::Internal *ti, GMainContext *ctx, int priority)
|
||||
: Timeout(ti), _ctx(ctx), _priority(priority)
|
||||
{
|
||||
_enable();
|
||||
}
|
||||
|
@ -62,6 +62,7 @@ gboolean Glib::BusTimeout::timeout_handler( gpointer data )
|
|||
void Glib::BusTimeout::_enable()
|
||||
{
|
||||
_source = g_timeout_source_new(Timeout::interval());
|
||||
g_source_set_priority(_source, _priority);
|
||||
g_source_set_callback(_source, timeout_handler, this, NULL);
|
||||
g_source_attach(_source, _ctx);
|
||||
}
|
||||
|
@ -109,8 +110,8 @@ static GSourceFuncs watch_funcs = {
|
|||
NULL
|
||||
};
|
||||
|
||||
Glib::BusWatch::BusWatch( Watch::Internal* wi, GMainContext* ctx )
|
||||
: Watch(wi), _ctx(ctx)
|
||||
Glib::BusWatch::BusWatch(Watch::Internal *wi, GMainContext *ctx, int priority)
|
||||
: Watch(wi), _ctx(ctx), _priority(priority)
|
||||
{
|
||||
_enable();
|
||||
}
|
||||
|
@ -152,6 +153,7 @@ gboolean Glib::BusWatch::watch_handler( gpointer data )
|
|||
void Glib::BusWatch::_enable()
|
||||
{
|
||||
_source = g_source_new(&watch_funcs, sizeof(BusSource));
|
||||
g_source_set_priority(_source, _priority);
|
||||
g_source_set_callback(_source, watch_handler, this, NULL);
|
||||
|
||||
int flags = Watch::flags();
|
||||
|
@ -189,7 +191,7 @@ void Glib::BusDispatcher::attach( GMainContext* ctx )
|
|||
|
||||
Timeout *Glib::BusDispatcher::add_timeout(Timeout::Internal *wi)
|
||||
{
|
||||
Timeout* t = new Glib::BusTimeout(wi, _ctx);
|
||||
Timeout *t = new Glib::BusTimeout(wi, _ctx, _priority);
|
||||
|
||||
debug_log("glib: added timeout %p (%s)", t, t->enabled() ? "on":"off");
|
||||
|
||||
|
@ -205,7 +207,7 @@ void Glib::BusDispatcher::rem_timeout( Timeout* t )
|
|||
|
||||
Watch *Glib::BusDispatcher::add_watch(Watch::Internal *wi)
|
||||
{
|
||||
Watch* w = new Glib::BusWatch(wi, _ctx);
|
||||
Watch *w = new Glib::BusWatch(wi, _ctx, _priority);
|
||||
|
||||
debug_log("glib: added watch %p (%s) fd=%d flags=%d",
|
||||
w, w->enabled() ? "on":"off", w->descriptor(), w->flags()
|
||||
|
@ -219,3 +221,8 @@ void Glib::BusDispatcher::rem_watch( Watch* w )
|
|||
|
||||
delete w;
|
||||
}
|
||||
|
||||
void Glib::BusDispatcher::set_priority(int priority)
|
||||
{
|
||||
_priority = priority;
|
||||
}
|
||||
|
|
|
@ -46,8 +46,8 @@ Message PropertiesAdaptor::Get( const CallMessage& call )
|
|||
{
|
||||
MessageIter ri = call.reader();
|
||||
|
||||
String iface_name;
|
||||
String property_name;
|
||||
std::string iface_name;
|
||||
std::string property_name;
|
||||
|
||||
ri >> iface_name >> property_name;
|
||||
|
||||
|
@ -77,8 +77,8 @@ Message PropertiesAdaptor::Set( const CallMessage& call )
|
|||
{
|
||||
MessageIter ri = call.reader();
|
||||
|
||||
String iface_name;
|
||||
String property_name;
|
||||
std::string iface_name;
|
||||
std::string property_name;
|
||||
Variant value;
|
||||
|
||||
ri >> iface_name >> property_name >> value;
|
||||
|
@ -142,14 +142,14 @@ PropertiesProxy::PropertiesProxy()
|
|||
{
|
||||
}
|
||||
|
||||
Variant PropertiesProxy::Get( const String& iface, const String& property )
|
||||
Variant PropertiesProxy::Get(const std::string &iface, const std::string &property)
|
||||
{
|
||||
//todo
|
||||
Variant v;
|
||||
return v;
|
||||
}
|
||||
|
||||
void PropertiesProxy::Set( const String& iface, const String& property, const Variant& value )
|
||||
void PropertiesProxy::Set(const std::string &iface, const std::string &property, const Variant &value)
|
||||
{
|
||||
//todo
|
||||
}
|
||||
|
|
|
@ -87,16 +87,16 @@ const char* atomic_type_to_string( char t )
|
|||
{
|
||||
static struct { char type; const char *name; } atos[] =
|
||||
{
|
||||
{ 'y', "::DBus::Byte" },
|
||||
{ 'b', "::DBus::Bool" },
|
||||
{ 'n', "::DBus::Int16" },
|
||||
{ 'q', "::DBus::UInt16" },
|
||||
{ 'i', "::DBus::Int32" },
|
||||
{ 'u', "::DBus::UInt32" },
|
||||
{ 'x', "::DBus::Int64" },
|
||||
{ 't', "::DBus::UInt64" },
|
||||
{ 'd', "::DBus::Double" },
|
||||
{ 's', "::DBus::String" },
|
||||
{ 'y', "uint8_t" },
|
||||
{ 'b', "bool" },
|
||||
{ 'n', "int16_t" },
|
||||
{ 'q', "uint16_t" },
|
||||
{ 'i', "int32_t" },
|
||||
{ 'u', "uint32_t" },
|
||||
{ 'x', "int64_t" },
|
||||
{ 't', "uint64_t" },
|
||||
{ 'd', "double" },
|
||||
{ 's', "std::string" },
|
||||
{ 'o', "::DBus::Path" },
|
||||
{ 'g', "::DBus::Signature" },
|
||||
{ 'v', "::DBus::Variant" },
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue