From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: [PATCH kvm-unit-tests 2/4] Introduce a C++ wrapper for the kvm APIs Date: Wed, 24 Nov 2010 16:53:15 +0200 Message-ID: <4CED26DB.1060305@redhat.com> References: <1290595933-13122-1-git-send-email-avi@redhat.com> <1290595933-13122-3-git-send-email-avi@redhat.com> <4CED1CC6.20603@codemonkey.ws> <4CED2148.60005@redhat.com> <4CED24F4.6060300@codemonkey.ws> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Marcelo Tosatti , kvm@vger.kernel.org To: Anthony Liguori Return-path: Received: from mx1.redhat.com ([209.132.183.28]:33065 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753125Ab0KXOxT (ORCPT ); Wed, 24 Nov 2010 09:53:19 -0500 In-Reply-To: <4CED24F4.6060300@codemonkey.ws> Sender: kvm-owner@vger.kernel.org List-ID: On 11/24/2010 04:45 PM, Anthony Liguori wrote: >> What would the object do besides adding tons of accessors? > > > I would think that you'd have a single object that represented the > full CPU state and then you'd have methods that allowed individual > groups to be refreshed. > > Something like: > > struct x86_vcpu : public vcpu > { > uint64_t eax; > uint64_t ebx; > uint64_t ecx; > //... > > void get_gps(void); > void put_gps(void); > void get_sregs(void); > void put_sregs(void); > > std::string repr(void); > }; > > I'm not of the opinion that all members need getters and setters. I > think it's perfectly fine to have public variables if the reads and > writes don't have side effects. I see. Well that belongs elsewhere, this is intended as a thin wrapper that doesn't allows you to exercise the API directly. I don't want things to happen automatically here, this is for a test framework. -- error compiling committee.c: too many arguments to function