]> code.delx.au - pulseaudio/blobdiff - src/pulsecore/msgobject.h
remap: Change remapping function argument type from void to int16_t / float as approp...
[pulseaudio] / src / pulsecore / msgobject.h
index 65761aea56a528c65c9babf6be1dfa646cfeded7..163c7d71c7f361f291b08674e725c5b53b63148e 100644 (file)
@@ -1,8 +1,6 @@
 #ifndef foopulsemsgobjecthfoo
 #define foopulsemsgobjecthfoo
 
-/* $Id$ */
-
 /***
   This file is part of PulseAudio.
 
@@ -11,7 +9,7 @@
 
   PulseAudio 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 of the License,
+  by the Free Software Foundation; either version 2.1 of the License,
   or (at your option) any later version.
 
   PulseAudio is distributed in the hope that it will be useful, but
@@ -27,8 +25,6 @@
 
 #include <sys/types.h>
 
-#include <pulse/xmalloc.h>
-#include <pulsecore/refcnt.h>
 #include <pulsecore/macro.h>
 #include <pulsecore/object.h>
 #include <pulsecore/memchunk.h>
@@ -37,18 +33,16 @@ typedef struct pa_msgobject pa_msgobject;
 
 struct pa_msgobject {
     pa_object parent;
-    int (*process_msg)(pa_msgobject *o, int code, void *userdata, pa_memchunk *chunk);
+    int (*process_msg)(pa_msgobject *o, int code, void *userdata, int64_t offset, pa_memchunk *chunk);
 };
 
-pa_msgobject *pa_msgobject_new_internal(size_t size, const char *type_name, int (*check_type)(pa_object *o, const char *type_name));
-
-int pa_msgobject_check_type(pa_object *o, const char *type);
+pa_msgobject *pa_msgobject_new_internal(size_t size, const char *type_id, bool (*check_type)(const char *type_name));
 
-#define pa_msgobject_new(type, check_type) ((type*) pa_msgobject_new_internal(sizeof(type), #type, check_type))
+#define pa_msgobject_new(type) ((type*) pa_msgobject_new_internal(sizeof(type), type##_type_id, type##_check_type))
 #define pa_msgobject_free ((void (*) (pa_msgobject* o)) pa_object_free)
 
 #define PA_MSGOBJECT(o) pa_msgobject_cast(o)
 
-PA_DECLARE_CLASS(pa_msgobject);
+PA_DECLARE_PUBLIC_CLASS(pa_msgobject);
 
 #endif