~ubuntu-branches/ubuntu/lucid/lastfm/lucid

« back to all changes in this revision

Viewing changes to src/output/portAudio/PortAudio/common/pa_cpuload.h

  • Committer: Bazaar Package Importer
  • Author(s): Pedro Fragoso
  • Date: 2007-12-31 09:49:54 UTC
  • mfrom: (1.1.5 upstream)
  • Revision ID: james.westby@ubuntu.com-20071231094954-ix1amvcsj9pk61ya
Tags: 1:1.4.1.57486.dfsg-1ubuntu1
* Merge from Debian unstable (LP: #180254), remaining changes:
  - debian/rules;
    - Added dh_icons
  - Modify Maintainer value to match Debian-Maintainer-Field Spec

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#ifndef PA_CPULOAD_H
2
 
#define PA_CPULOAD_H
3
 
/*
4
 
 * $Id: pa_cpuload.h 1097 2006-08-26 08:27:53Z rossb $
5
 
 * Portable Audio I/O Library CPU Load measurement functions
6
 
 * Portable CPU load measurement facility.
7
 
 *
8
 
 * Based on the Open Source API proposed by Ross Bencina
9
 
 * Copyright (c) 2002 Ross Bencina
10
 
 *
11
 
 * Permission is hereby granted, free of charge, to any person obtaining
12
 
 * a copy of this software and associated documentation files
13
 
 * (the "Software"), to deal in the Software without restriction,
14
 
 * including without limitation the rights to use, copy, modify, merge,
15
 
 * publish, distribute, sublicense, and/or sell copies of the Software,
16
 
 * and to permit persons to whom the Software is furnished to do so,
17
 
 * subject to the following conditions:
18
 
 *
19
 
 * The above copyright notice and this permission notice shall be
20
 
 * included in all copies or substantial portions of the Software.
21
 
 *
22
 
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
23
 
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
24
 
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
25
 
 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
26
 
 * ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
27
 
 * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28
 
 * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29
 
 */
30
 
 
31
 
/*
32
 
 * The text above constitutes the entire PortAudio license; however, 
33
 
 * the PortAudio community also makes the following non-binding requests:
34
 
 *
35
 
 * Any person wishing to distribute modifications to the Software is
36
 
 * requested to send the modifications to the original developer so that
37
 
 * they can be incorporated into the canonical version. It is also 
38
 
 * requested that these non-binding requests be included along with the 
39
 
 * license above.
40
 
 */
41
 
 
42
 
/** @file
43
 
 @ingroup common_src
44
 
 
45
 
 @brief Functions to assist in measuring the CPU utilization of a callback
46
 
 stream. Used to implement the Pa_GetStreamCpuLoad() function.
47
 
*/
48
 
 
49
 
 
50
 
#ifdef __cplusplus
51
 
extern "C"
52
 
{
53
 
#endif /* __cplusplus */
54
 
 
55
 
 
56
 
typedef struct {
57
 
    double samplingPeriod;
58
 
    double measurementStartTime;
59
 
    double averageLoad;
60
 
} PaUtilCpuLoadMeasurer; /**< @todo need better name than measurer */
61
 
 
62
 
void PaUtil_InitializeCpuLoadMeasurer( PaUtilCpuLoadMeasurer* measurer, double sampleRate );
63
 
void PaUtil_BeginCpuLoadMeasurement( PaUtilCpuLoadMeasurer* measurer );
64
 
void PaUtil_EndCpuLoadMeasurement( PaUtilCpuLoadMeasurer* measurer, unsigned long framesProcessed );
65
 
void PaUtil_ResetCpuLoadMeasurer( PaUtilCpuLoadMeasurer* measurer );
66
 
double PaUtil_GetCpuLoad( PaUtilCpuLoadMeasurer* measurer );
67
 
 
68
 
 
69
 
#ifdef __cplusplus
70
 
}
71
 
#endif /* __cplusplus */     
72
 
#endif /* PA_CPULOAD_H */