qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: Wenchao Xia <wenchaoqemu@gmail.com>
Cc: mdroth@linux.vnet.ibm.com, lcapitulino@redhat.com,
	qemu-devel@nongnu.org, armbru@redhat.com
Subject: Re: [Qemu-devel] [RFC PATCH V3 2/5] qapi: add event helper functions
Date: Mon, 24 Mar 2014 07:11:48 -0600	[thread overview]
Message-ID: <53302F14.2030108@redhat.com> (raw)
In-Reply-To: <532F81ED.7010309@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1406 bytes --]

On 03/23/2014 06:53 PM, Wenchao Xia wrote:
> 于 2014/3/21 6:53, Eric Blake 写道:
>> On 03/18/2014 11:16 PM, Wenchao Xia wrote:
>>> This file hold some functions that do not need to be generated.
>> s/hold/holds/
>>

>>> +
>>> +typedef struct QMPEventFunctions {
>>> +    QMPEventFuncEmit emit;
>>> +} QMPEventFunctions;
>>> +
>>> +QMPEventFunctions qmp_event_functions;
>>> +
>>> +void qmp_event_set_func_emit(QMPEventFuncEmit emit)
>>> +{
>>> +    qmp_event_functions.emit = emit;
>>> +}
>>> +
>>> +QMPEventFuncEmit qmp_event_get_func_emit(void)
>>> +{
>>> +    return qmp_event_functions.emit;
>>> +}
>> Is this struct a bit overkill, or do you extend it to include other
>> fields later?
>   No other fields will be added in this series, it allow different emit
> function hooked.
> Do you mean remove it and put it into generated qapi-event.c?

Keeping accessor functions is still a bit nicer than directly making a
global variable; but my point is that your accessors can just directly
access a static variable instead of wrapping things in a pointless struct:

static QMPEventFuncEmit qmp_emit;
void qmp_event_set_func_emit(QMPEventFuncEmit emit)
{
    qmp_emit = emit;
}
QMPEventFuncEmit qmp_event_get_func_emit(void)
{
    return qmp_emit;
}

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]

  reply	other threads:[~2014-03-24 13:19 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-19  5:16 [Qemu-devel] [RFC PATCH V3 0/5] add direct support of event in qapi schema Wenchao Xia
2014-03-19  5:16 ` [Qemu-devel] [RFC PATCH V3 1/5] os-posix: include sys/time.h Wenchao Xia
2014-03-19  5:16 ` [Qemu-devel] [RFC PATCH V3 2/5] qapi: add event helper functions Wenchao Xia
2014-03-20 22:53   ` Eric Blake
2014-03-24  0:53     ` Wenchao Xia
2014-03-24 13:11       ` Eric Blake [this message]
2014-03-19  5:16 ` [Qemu-devel] [RFC PATCH V3 3/5] qapi script: add event support Wenchao Xia
2014-03-20 23:06   ` Eric Blake
2014-03-24  0:59     ` Wenchao Xia
2014-03-19  5:16 ` [Qemu-devel] [RFC PATCH V3 4/5] test: add test cases for qapi event Wenchao Xia
2014-03-21  0:23   ` Eric Blake
2014-03-24  1:01     ` Wenchao Xia
2014-03-19  5:16 ` [Qemu-devel] [RFC PATCH V3 5/5] qapi event: convert RTC_CHANGE Wenchao Xia
2014-03-21  0:25   ` Eric Blake

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=53302F14.2030108@redhat.com \
    --to=eblake@redhat.com \
    --cc=armbru@redhat.com \
    --cc=lcapitulino@redhat.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=wenchaoqemu@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).