move over to gobject
This commit is contained in:
parent
8578dbf77f
commit
f8c5a33d36
@ -6,8 +6,8 @@ PKG_CHECK_MODULES(JANSSON REQUIRED jansson)
|
||||
PKG_CHECK_MODULES(GLIB2 REQUIRED glib-2.0)
|
||||
|
||||
SET(SOURCES
|
||||
"src/journalfile.c"
|
||||
"include/edapi/journalfile.h"
|
||||
"src/journal/file.c"
|
||||
"include/edapi/journal/file.h"
|
||||
)
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
|
17
lib/include/edapi/journal/file.h
Normal file
17
lib/include/edapi/journal/file.h
Normal file
@ -0,0 +1,17 @@
|
||||
#ifndef EDAPI_JOURNAL_FILE_H
|
||||
#define EDAPI_JOURNAL_FILE_H
|
||||
|
||||
#include <glib.h>
|
||||
#include <glib-object.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
G_DECLARE_FINAL_TYPE(EDJournalFile, ed_journal_file, ED, JOURNALFILE, GObject);
|
||||
|
||||
#define ED_TYPE_JOURNALFILE ed_journal_file_get_type()
|
||||
|
||||
EDJournalFile *ed_journal_file_new(void);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif
|
@ -1,9 +0,0 @@
|
||||
#ifndef EDAPI_JOURNAL_FILE_H
|
||||
#define EDAPI_JOURNAL_FILE_H
|
||||
|
||||
struct edapi_journalfile_;
|
||||
typedef struct edapi_journal_file *edapi_journalfile_t;
|
||||
|
||||
edapi_journalfile_t edapi_journalfile_new(void);
|
||||
|
||||
#endif
|
49
lib/src/journal/file.c
Normal file
49
lib/src/journal/file.c
Normal file
@ -0,0 +1,49 @@
|
||||
#include <edapi/journal/file.h>
|
||||
|
||||
typedef struct {
|
||||
char *filename;
|
||||
char *timestamp;
|
||||
} EDJournalFilePrivate;
|
||||
|
||||
struct _EDJournalFile {
|
||||
GObject parent;
|
||||
};
|
||||
|
||||
struct _EDJournalFileClass {
|
||||
GObjectClass parent_class;
|
||||
};
|
||||
|
||||
G_DEFINE_TYPE_EXTENDED(EDJournalFile,
|
||||
ed_journal_file,
|
||||
G_TYPE_OBJECT,
|
||||
0,
|
||||
G_ADD_PRIVATE(EDJournalFile)
|
||||
);
|
||||
|
||||
static void ed_journal_file_finalize(GObject *obj)
|
||||
{
|
||||
EDJournalFile *self = ED_JOURNALFILE(obj);
|
||||
EDJournalFilePrivate *p = ed_journal_file_get_instance_private(self);
|
||||
|
||||
free(p->filename);
|
||||
p->filename = NULL;
|
||||
|
||||
free(p->timestamp);
|
||||
p->timestamp = NULL;
|
||||
|
||||
G_OBJECT_CLASS(ed_journal_file_parent_class)->finalize(obj);
|
||||
}
|
||||
|
||||
static void ed_journal_file_class_init(EDJournalFileClass *klass)
|
||||
{
|
||||
G_OBJECT_CLASS(klass)->finalize = ed_journal_file_finalize;
|
||||
}
|
||||
|
||||
static void ed_journal_file_init(EDJournalFile *self)
|
||||
{
|
||||
}
|
||||
|
||||
EDJournalFile *ed_journal_file_new(void)
|
||||
{
|
||||
return g_object_new(ED_TYPE_JOURNALFILE, NULL);
|
||||
}
|
@ -1,12 +0,0 @@
|
||||
#include <edapi/journalfile.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
struct edapi_journalfile_ {
|
||||
void *tag;
|
||||
};
|
||||
|
||||
edapi_journalfile_t edapi_journalfile_new(void)
|
||||
{
|
||||
return calloc(1, sizeof(struct edapi_journalfile_));
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user