easydbus-core.h File Reference

#include "config.h"
#include <easydbus-dbus.h>
#include <easydbus-macro.h>
#include <easydbus/easydbus.h>
#include <easydbus/easydbus-object.h>
#include <easydbus-object_internal.h>

Include dependency graph for easydbus-core.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  EasyDbus_conn
 EasyDbus_conn object Struct used for. More...
struct  EasyDbus_container
 EasyDbus_container object. Used for marshalled data as array, dict_entry, variant and structs. More...
struct  EasyDbus_core
 EasyDbus_core object EasyDbus_conn presented to user is included in this struct. Every connection is composed of one EasyDbus_core object. More...
struct  EasyDbus_elem
 Used for save an unique message param. More...
struct  EasyDbus_method
 EasyDbus_method object. More...
struct  EasyDbus_object_box
 EasyDbus_object_box object Box of visible EasyDbus_object. This struct is created when it is called easydbus_object_create_skeleton function and it is returned first field of this struct. More...
struct  EasyDbus_Pending
 struct for manage Pending message with notify handler or pending message called on service where there is a easydbus_object_main_loop or through watchers when a REPLY??? callback is set. More...
struct  EasyDbus_reply
 EasyDbus_reply object. More...
struct  EasyDbus_signal
 EasyDbus_signal object. More...
struct  easydbus_signature_elem_stack
 Struct used on easydbus_add_signature_to_empty_container function to manage marshalled data.
FIFO (first-in first-out) algorithm used. More...
struct  EasyDbus_watcher
 This struct is a list for manage watching, In this moment this list could be only an element for connection. More...

Defines

#define EASYDBUS_HIDDEN_F_ATTR   __attribute__ ((visibility("hidden")))
#define EASYDBUS_INTERNAL_F_ATTR   __attribute__ ((visibility("internal")))
#define EASYDBUS_MATCHRULE_FOR_COMMA   ","
#define EASYDBUS_MATCHRULE_FOR_DESTINATION   "destination='"
#define EASYDBUS_MATCHRULE_FOR_INTERFACE   "interface='"
#define EASYDBUS_MATCHRULE_FOR_MEMBER   "member='"
#define EASYDBUS_MATCHRULE_FOR_PATH   "path='"
#define EASYDBUS_MATCHRULE_FOR_SENDER   "sender='"
#define EASYDBUS_MATCHRULE_FOR_SINGLE_QUOTE   "'"
#define EASYDBUS_MATCHRULE_FOR_TYPE   "type='"

Enumerations

enum  signature_flags { EASYDBUS_SIGNATURE_NORMAL = 0, EASYDBUS_SIGNATURE_VARIANT = 1 }
 signature flags Used internally for manage signature creation More...

Functions

void close_dbus_connection (EasyDbus_conn *) __attribute__((visibility("internal")))
 Close DBus connection.
DBusMessage * create_method_msg (struct EasyDbus_core *, struct EasyDbus_method *) __attribute__((visibility("internal")))
 Create DBusMessage for method.
DBusMessage * create_signal_msg (struct EasyDbus_core *, struct EasyDbus_signal *) __attribute__((visibility("internal")))
 Create signal DBusMessage.
struct
easydbus_signature_elem_stack
easydbus_add_elem_to_stack (enum el_type, struct easydbus_signature_elem_stack *)
 Add element on signature stack.
int easydbus_build_skeleton_data (DBusMessage *, enum event_type, void *) __attribute__((visibility("internal")))
 Create skeleton object from DBusMessage.
DBusHandlerResult easydbus_core_filter_func (DBusConnection *, DBusMessage *, void *) __attribute__((visibility("internal")))
 This callback manage disconnection from dbus and try to do a new connection.
void easydbus_elem_add_to_skeleton (enum event_type, void *, EasyDbus_elem *) __attribute__((visibility("internal")))
 Add element on message object (skeleton).
void easydbus_free_elem_from_stack (struct easydbus_signature_elem_stack *)
 Free signature element.
void easydbus_free_elem_from_stack_list (struct easydbus_signature_elem_stack *)
 Free signature stack list.
struct EasyDbus_methodeasydbus_method_build_skeleton (DBusMessage *) __attribute__((visibility("internal")))
 Build EasyDbus_method object from DBusMessage.
struct EasyDbus_signaleasydbus_signal_build_skeleton (DBusMessage *) __attribute__((visibility("internal")))
 Create EasyDbus_signal object from DBusMessage.


Define Documentation

#define EASYDBUS_HIDDEN_F_ATTR   __attribute__ ((visibility("hidden")))

Definition at line 55 of file easydbus-core.h.

#define EASYDBUS_INTERNAL_F_ATTR   __attribute__ ((visibility("internal")))

Definition at line 54 of file easydbus-core.h.

#define EASYDBUS_MATCHRULE_FOR_COMMA   ","

Definition at line 43 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_DESTINATION   "destination='"

Definition at line 48 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_INTERFACE   "interface='"

Definition at line 45 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_MEMBER   "member='"

Definition at line 46 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_PATH   "path='"

Definition at line 47 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_SENDER   "sender='"

Definition at line 44 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_SINGLE_QUOTE   "'"

Definition at line 42 of file easydbus-core.h.

Referenced by prepare_match_string().

#define EASYDBUS_MATCHRULE_FOR_TYPE   "type='"

Definition at line 41 of file easydbus-core.h.

Referenced by prepare_match_string().


Function Documentation

void easydbus_free_elem_from_stack ( struct easydbus_signature_elem_stack el  ) 

Free signature element.

For internal use only.

Parameters:
el signature stack element to free.

Definition at line 934 of file array_internal.c.

References easydbus_signature_elem_stack::next, and easydbus_signature_elem_stack::prev.

Referenced by easydbus_container_add_signature_to_empty_container(), easydbus_create_arg_signature(), easydbus_free_elem_from_stack_list(), and easydbus_manage_list_signature().

00935 {
00936    if (!el)
00937       return;
00938 
00939    if (el->next)
00940       el->next->prev = el->prev;
00941    if (el->prev)
00942       el->prev->next = el->next;
00943    free (el);
00944 }

void easydbus_free_elem_from_stack_list ( struct easydbus_signature_elem_stack list  )  [inline]

Free signature stack list.

For internal use only.

Parameters:
list signature stack list to free.

Definition at line 952 of file array_internal.c.

References easydbus_free_elem_from_stack(), and easydbus_signature_elem_stack::next.

Referenced by easydbus_add_info_field_on_register_method(), and easydbus_add_info_field_on_register_signal().

00953 {
00954    struct easydbus_signature_elem_stack *tmp_elem = NULL;
00955 
00956    while (list) {
00957       tmp_elem = list;
00958       list = list->next;
00959       easydbus_free_elem_from_stack (tmp_elem);
00960    }
00961 }

Here is the call graph for this function:


Generated on Thu Apr 10 10:00:32 2008 for EasyDbus-0.2 by  doxygen 1.5.4