diff options
author | Timo Dritschler <timo.dritschler@kit.edu> | 2014-04-24 19:49:56 +0200 |
---|---|---|
committer | Timo Dritschler <timo.dritschler@kit.edu> | 2014-04-24 19:55:17 +0200 |
commit | f79f1449d9a89dba93dd1415fb9e8300c57cb086 (patch) | |
tree | 4f0de52d819af21e15855188b4233e7e5021ed39 /kiro-client.h | |
parent | 8ff681b06c89dcac1c309092ff18dbac07991367 (diff) | |
download | kiro-f79f1449d9a89dba93dd1415fb9e8300c57cb086.tar.gz kiro-f79f1449d9a89dba93dd1415fb9e8300c57cb086.tar.bz2 kiro-f79f1449d9a89dba93dd1415fb9e8300c57cb086.tar.xz kiro-f79f1449d9a89dba93dd1415fb9e8300c57cb086.zip |
Added first draft of a KIRO Client class
Updated Makefile
Diffstat (limited to 'kiro-client.h')
-rw-r--r-- | kiro-client.h | 87 |
1 files changed, 87 insertions, 0 deletions
diff --git a/kiro-client.h b/kiro-client.h new file mode 100644 index 0000000..fb1dccb --- /dev/null +++ b/kiro-client.h @@ -0,0 +1,87 @@ +/* Copyright (C) 2014 Timo Dritschler <timo.dritschler@kit.edu> + (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 <stdint.h> +#include <glib-object.h> + +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 *, char *, char*, size_t); + +int kiro_client_sync (KiroClient *); + + +G_END_DECLS + +#endif //__KIRO_CLIENT_H
\ No newline at end of file |