PerformanceImpl.h revision c7a378ed2fbad681c0b674351d698ef20a368935
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * VBox Performance COM class implementation.
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * Copyright (C) 2008-2009 Oracle Corporation
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * available from http://www.virtualbox.org. This file is free software;
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * you can redistribute it and/or modify it under the terms of the GNU
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * General Public License (GPL) as published by the Free Software
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync//#ifdef VBOX_WITH_RESOURCE_USAGE_API
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync//#endif /* VBOX_WITH_RESOURCE_USAGE_API */
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync/* Each second we obtain new CPU load stats. */
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(PerformanceMetric, IPerformanceMetric)
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync VBOX_DEFAULT_INTERFACE_ENTRIES (IPerformanceMetric)
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // public initializer/uninitializer for internal purposes only
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // IPerformanceMetric properties
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync STDMETHOD(COMGETTER(MetricName)) (BSTR *aMetricName);
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync STDMETHOD(COMGETTER(Object)) (IUnknown **anObject);
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync STDMETHOD(COMGETTER(Description)) (BSTR *aDescription);
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync STDMETHOD(COMGETTER(MinimumValue)) (LONG *aMinValue);
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync STDMETHOD(COMGETTER(MaximumValue)) (LONG *aMaxValue);
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // IPerformanceMetric methods
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // public methods only for internal purposes
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // public methods for internal purposes only
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync // (ensure there is a caller and a read lock before calling them!)
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync /* Constructor. */
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync VIRTUALBOXBASE_ADD_ERRORINFO_SUPPORT(PerformanceCollector, IPerformanceCollector)
1b33c96954667ba382fa595baf7b31290bfdd517vboxsync VBOX_DEFAULT_INTERFACE_ENTRIES(IPerformanceCollector)
void FinalRelease();
// public initializers/uninitializers only for internal purposes
void uninit();
outMetrics));
outMetrics));
outMetrics));
void suspendSampling();
void resumeSampling();
unsigned int mMagic;
struct Data
Data m;