From 69f57959d50cf08d063484551f15f6990582953d Mon Sep 17 00:00:00 2001 From: Timo Dritschler Date: Tue, 27 May 2014 15:30:08 +0200 Subject: Changed build system to CMake --- src/kiro-client.h | 90 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 src/kiro-client.h (limited to 'src/kiro-client.h') diff --git a/src/kiro-client.h b/src/kiro-client.h new file mode 100644 index 0000000..e3e60de --- /dev/null +++ b/src/kiro-client.h @@ -0,0 +1,90 @@ +/* Copyright (C) 2014 Timo Dritschler + (Karlsruhe Institute of Technology) + + This library is free software; you can redistribute it and/or modify it + under the terms of the GNU Lesser General Public License as published by the + Free Software Foundation; either version 2.1 of the License, or (at your + option) any later version. + + This library is distributed in the hope that it will be useful, but WITHOUT + ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + details. + + You should have received a copy of the GNU Lesser General Public License along + with this library; if not, write to the Free Software Foundation, Inc., 51 + Franklin St, Fifth Floor, Boston, MA 02110, USA +*/ + +/** + * SECTION: kiro-client + * @Short_description: KIRO RDMA Client / Consumer + * @Title: KiroClient + * + * KiroClient implements the client / active / consumer side of the the RDMA + * Communication Channel. It uses a KIRO-CLIENT to manage data read from the Server. + */ + +#ifndef __KIRO_CLIENT_H +#define __KIRO_CLIENT_H + +#include +#include + +G_BEGIN_DECLS + +#define KIRO_TYPE_CLIENT (kiro_client_get_type()) +#define KIRO_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), KIRO_TYPE_CLIENT, KiroClient)) +#define KIRO_IS_CLIENT(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), KIRO_TYPE_CLIENT)) +#define KIRO_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), KIRO_TYPE_CLIENT, KiroClientClass)) +#define KIRO_IS_CLIENT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), KIRO_TYPE_CLIENT)) +#define KIRO_CLIENT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), KIRO_TYPE_CLIENT, KiroClientClass)) + + +typedef struct _KiroClient KiroClient; +typedef struct _KiroClientClass KiroClientClass; +typedef struct _KiroClientPrivate KiroClientPrivate; + + +struct _KiroClient { + + GObject parent; + + /*< private >*/ + KiroClientPrivate *priv; +}; + + +/** + * IbvConnectorInterface: + * + * Base interface for IbvConnectors. + */ + +struct _KiroClientClass { + + GObjectClass parent_class; + +}; + + + +/* GObject and GType functions */ +GType kiro_client_get_type (void); + +GObject kiro_client_new (void); + +/* client functions */ + + +int kiro_client_connect (KiroClient* client, char* dest_addr, char* dest_port); + +int kiro_client_sync (KiroClient* client); + +void* kiro_client_get_memory (KiroClient* client); + +size_t kior_client_get_memory_size (KiroClient* client); + +G_END_DECLS + +#endif //__KIRO_CLIENT_H \ No newline at end of file -- cgit v1.2.3