plugins: setup new helper macros to define plugins

We also remove the plugin headers completely as they are not really
required anywhere.
This commit is contained in:
Aleksander Morgado
2023-01-03 13:56:25 +00:00
committed by Aleksander Morgado
parent d30ba8414a
commit f0a9f09558
83 changed files with 274 additions and 1997 deletions
+5 -7
View File
@@ -22,14 +22,12 @@
#include <libmm-glib.h>
#include "mm-private-boxed-types.h"
#include "mm-plugin-hso.h"
#include "mm-plugin-common.h"
#include "mm-broadband-modem-hso.h"
#include "mm-log-object.h"
G_DEFINE_TYPE (MMPluginHso, mm_plugin_hso, MM_TYPE_PLUGIN)
MM_PLUGIN_DEFINE_MAJOR_VERSION
MM_PLUGIN_DEFINE_MINOR_VERSION
#define MM_TYPE_PLUGIN_HSO mm_plugin_hso_get_type ()
MM_DEFINE_PLUGIN (HSO, hso, Hso)
/*****************************************************************************/
/* Custom init */
@@ -165,8 +163,8 @@ grab_port (MMPlugin *self,
/*****************************************************************************/
G_MODULE_EXPORT MMPlugin *
mm_plugin_create (void)
MM_PLUGIN_NAMED_CREATOR_SCOPE MMPlugin *
mm_plugin_create_hso (void)
{
static const gchar *subsystems[] = { "tty", "net", NULL };
static const gchar *drivers[] = { "hso", NULL };
-42
View File
@@ -1,42 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your hso) any later version.
*
* This program 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 General Public License for more details:
*
* Copyright (C) 2008 - 2009 Novell, Inc.
* Copyright (C) 2009 - 2012 Red Hat, Inc.
* Copyright (C) 2012 Aleksander Morgado <aleksander@gnu.org>
*/
#ifndef MM_PLUGIN_HSO_H
#define MM_PLUGIN_HSO_H
#include "mm-plugin.h"
#define MM_TYPE_PLUGIN_HSO (mm_plugin_hso_get_type ())
#define MM_PLUGIN_HSO(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_PLUGIN_HSO, MMPluginHso))
#define MM_PLUGIN_HSO_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_PLUGIN_HSO, MMPluginHsoClass))
#define MM_IS_PLUGIN_HSO(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_PLUGIN_HSO))
#define MM_IS_PLUGIN_HSO_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MM_TYPE_PLUGIN_HSO))
#define MM_PLUGIN_HSO_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_PLUGIN_HSO, MMPluginHsoClass))
typedef struct {
MMPlugin parent;
} MMPluginHso;
typedef struct {
MMPluginClass parent;
} MMPluginHsoClass;
GType mm_plugin_hso_get_type (void);
G_MODULE_EXPORT MMPlugin *mm_plugin_create (void);
#endif /* MM_PLUGIN_HSO_H */
+5 -7
View File
@@ -22,13 +22,11 @@
#include <libmm-glib.h>
#include "mm-private-boxed-types.h"
#include "mm-plugin-option.h"
#include "mm-plugin-common.h"
#include "mm-broadband-modem-option.h"
G_DEFINE_TYPE (MMPluginOption, mm_plugin_option, MM_TYPE_PLUGIN)
MM_PLUGIN_DEFINE_MAJOR_VERSION
MM_PLUGIN_DEFINE_MINOR_VERSION
#define MM_TYPE_PLUGIN_OPTION mm_plugin_option_get_type ()
MM_DEFINE_PLUGIN (OPTION, option, Option)
/*****************************************************************************/
@@ -87,8 +85,8 @@ grab_port (MMPlugin *self,
/*****************************************************************************/
G_MODULE_EXPORT MMPlugin *
mm_plugin_create (void)
MM_PLUGIN_NAMED_CREATOR_SCOPE MMPlugin *
mm_plugin_create_option (void)
{
static const gchar *subsystems[] = { "tty", NULL };
static const guint16 vendor_ids[] = { 0x0af0, /* Option USB devices */
-42
View File
@@ -1,42 +0,0 @@
/* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program 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 General Public License for more details:
*
* Copyright (C) 2008 - 2009 Novell, Inc.
* Copyright (C) 2009 - 2012 Red Hat, Inc.
* Copyright (C) 2012 Aleksander Morgado <aleksander@gnu.org>
*/
#ifndef MM_PLUGIN_OPTION_H
#define MM_PLUGIN_OPTION_H
#include "mm-plugin.h"
#define MM_TYPE_PLUGIN_OPTION (mm_plugin_option_get_type ())
#define MM_PLUGIN_OPTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_PLUGIN_OPTION, MMPluginOption))
#define MM_PLUGIN_OPTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), MM_TYPE_PLUGIN_OPTION, MMPluginOptionClass))
#define MM_IS_PLUGIN_OPTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_PLUGIN_OPTION))
#define MM_IS_PLUGIN_OPTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), MM_TYPE_PLUGIN_OPTION))
#define MM_PLUGIN_OPTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), MM_TYPE_PLUGIN_OPTION, MMPluginOptionClass))
typedef struct {
MMPlugin parent;
} MMPluginOption;
typedef struct {
MMPluginClass parent;
} MMPluginOptionClass;
GType mm_plugin_option_get_type (void);
G_MODULE_EXPORT MMPlugin *mm_plugin_create (void);
#endif /* MM_PLUGIN_OPTION_H */