|
Packit |
87b8d1 |
/* -*- Mode: C; indent-tabs-mode: nil; c-basic-offset: 8; tab-width: 8 -*- */
|
|
Packit |
87b8d1 |
/*
|
|
Packit |
87b8d1 |
* libgfbgraph - GObject library for Facebook Graph API
|
|
Packit |
87b8d1 |
* Copyright (C) 2013 Álvaro Peña <alvaropg@gmail.com>
|
|
Packit |
87b8d1 |
*
|
|
Packit |
87b8d1 |
* GFBGraph is free software; you can redistribute it and/or
|
|
Packit |
87b8d1 |
* modify it under the terms of the GNU Lesser General Public
|
|
Packit |
87b8d1 |
* License as published by the Free Software Foundation; either
|
|
Packit |
87b8d1 |
* version 2.1 of the License, or (at your option) any later version.
|
|
Packit |
87b8d1 |
*
|
|
Packit |
87b8d1 |
* GFBGraph is distributed in the hope that it will be useful,
|
|
Packit |
87b8d1 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit |
87b8d1 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
Packit |
87b8d1 |
* Lesser General Public License for more details.
|
|
Packit |
87b8d1 |
*
|
|
Packit |
87b8d1 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
87b8d1 |
* License along with GFBGraph. If not, see <http://www.gnu.org/licenses/>.
|
|
Packit |
87b8d1 |
*/
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
#ifndef __GFBGRAPH_NODE_H__
|
|
Packit |
87b8d1 |
#define __GFBGRAPH_NODE_H__
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
#include <glib-object.h>
|
|
Packit |
87b8d1 |
#include <gfbgraph/gfbgraph-authorizer.h>
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
G_BEGIN_DECLS
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
#define GFBGRAPH_TYPE_NODE (gfbgraph_node_get_type())
|
|
Packit |
87b8d1 |
#define GFBGRAPH_NODE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GFBGRAPH_TYPE_NODE,GFBGraphNode))
|
|
Packit |
87b8d1 |
#define GFBGRAPH_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GFBGRAPH_TYPE_NODE,GFBGraphNodeClass))
|
|
Packit |
87b8d1 |
#define GFBGRAPH_IS_NODE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GFBGRAPH_TYPE_NODE))
|
|
Packit |
87b8d1 |
#define GFBGRAPH_IS_NODE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GFBGRAPH_TYPE_NODE))
|
|
Packit |
87b8d1 |
#define GFBGRAPH_NODE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj),GFBGRAPH_TYPE_NODE,GFBGraphNodeClass))
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
#define GFBGRAPH_NODE_ERROR gfbgraph_node_error_quark ()
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
typedef struct _GFBGraphNode GFBGraphNode;
|
|
Packit |
87b8d1 |
typedef struct _GFBGraphNodeClass GFBGraphNodeClass;
|
|
Packit |
87b8d1 |
typedef struct _GFBGraphNodePrivate GFBGraphNodePrivate;
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
struct _GFBGraphNode {
|
|
Packit |
87b8d1 |
GObject parent;
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
/*< private >*/
|
|
Packit |
87b8d1 |
GFBGraphNodePrivate *priv;
|
|
Packit |
87b8d1 |
};
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
struct _GFBGraphNodeClass {
|
|
Packit |
87b8d1 |
GObjectClass parent_class;
|
|
Packit |
87b8d1 |
};
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
typedef enum {
|
|
Packit |
87b8d1 |
GFBGRAPH_NODE_ERROR_NO_CONNECTIONABLE = 1,
|
|
Packit |
87b8d1 |
GFBGRAPH_NODE_ERROR_NO_CONNECTABLE
|
|
Packit |
87b8d1 |
} GFBGraphNodeError;
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
GType gfbgraph_node_get_type (void) G_GNUC_CONST;
|
|
Packit |
87b8d1 |
GQuark gfbgraph_node_error_quark (void) G_GNUC_CONST;
|
|
Packit |
87b8d1 |
GFBGraphNode* gfbgraph_node_new (void);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
GFBGraphNode* gfbgraph_node_new_from_id (GFBGraphAuthorizer *authorizer, const gchar *id, GType node_type, GError **error);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
const gchar* gfbgraph_node_get_id (GFBGraphNode *node);
|
|
Packit |
87b8d1 |
const gchar* gfbgraph_node_get_link (GFBGraphNode *node);
|
|
Packit |
87b8d1 |
const gchar* gfbgraph_node_get_created_time (GFBGraphNode *node);
|
|
Packit |
87b8d1 |
const gchar* gfbgraph_node_get_updated_time (GFBGraphNode *node);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
void gfbgraph_node_set_id (GFBGraphNode *node, const gchar *id);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
GList* gfbgraph_node_get_connection_nodes (GFBGraphNode *node,
|
|
Packit |
87b8d1 |
GType node_type,
|
|
Packit |
87b8d1 |
GFBGraphAuthorizer *authorizer,
|
|
Packit |
87b8d1 |
GError **error);
|
|
Packit |
87b8d1 |
void gfbgraph_node_get_connection_nodes_async (GFBGraphNode *node,
|
|
Packit |
87b8d1 |
GType node_type,
|
|
Packit |
87b8d1 |
GFBGraphAuthorizer *authorizer,
|
|
Packit |
87b8d1 |
GCancellable *cancellable,
|
|
Packit |
87b8d1 |
GAsyncReadyCallback callback,
|
|
Packit |
87b8d1 |
gpointer user_data);
|
|
Packit |
87b8d1 |
GList* gfbgraph_node_get_connection_nodes_async_finish (GFBGraphNode *node,
|
|
Packit |
87b8d1 |
GAsyncResult *result,
|
|
Packit |
87b8d1 |
GError **error);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
gboolean gfbgraph_node_append_connection (GFBGraphNode *node, GFBGraphNode *connect_node, GFBGraphAuthorizer *authorizer, GError **error);
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
G_END_DECLS
|
|
Packit |
87b8d1 |
|
|
Packit |
87b8d1 |
#endif /* __GFBGRAPH_NODE_H__ */
|