~ubuntu-branches/ubuntu/raring/freerdp/raring-proposed

« back to all changes in this revision

Viewing changes to include/freerdp/utils/profiler.h

  • Committer: Package Import Robot
  • Author(s): Martin Pitt, Jeremy Bicha, Jean-Louis Dupond, Martin Pitt
  • Date: 2012-01-31 10:02:14 UTC
  • mfrom: (1.1.6)
  • Revision ID: package-import@ubuntu.com-20120131100214-jaok3uwvni7sqxth
Tags: 1.0.0-0git1
Upload current Debian packaging git to get this rolling for precise.

[ Jeremy Bicha ]
* New upstream release. Closes: #647498.
* Updated symbols and bumped soname
* debian/control:
  - Added new build dependencies
  - Bump Standards-Version to 3.9.2
* debian/source/format: Set to 3.0 (quilt)
* debian/rules: Turn on strict symbols checking
* debian/watch: Watch github

[ Jean-Louis Dupond ]
* debian/control: Updated homepage
* debian/copyright: Reflect upstream switch to the Apache license

[ Martin Pitt ]
* debian/libfreerdp0.symbols: Fix version number, should
  be 1.0~beta5, not 1.0-beta5.
* debian/control: Add libavcodec-dev build dependency, upstream build system
  checks for that. Thanks Jean-Louis Dupond!

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/**
 
2
 * FreeRDP: A Remote Desktop Protocol Client
 
3
 * Profiler Utils
 
4
 *
 
5
 * Copyright 2011 Stephen Erisman
 
6
 *
 
7
 * Licensed under the Apache License, Version 2.0 (the "License");
 
8
 * you may not use this file except in compliance with the License.
 
9
 * You may obtain a copy of the License at
 
10
 *
 
11
 *     http://www.apache.org/licenses/LICENSE-2.0
 
12
 *
 
13
 * Unless required by applicable law or agreed to in writing, software
 
14
 * distributed under the License is distributed on an "AS IS" BASIS,
 
15
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 
16
 * See the License for the specific language governing permissions and
 
17
 * limitations under the License.
 
18
 */
 
19
 
 
20
#ifndef __UTILS_PROFILER_H
 
21
#define __UTILS_PROFILER_H
 
22
 
 
23
#include <freerdp/api.h>
 
24
 
 
25
#include "config.h"
 
26
 
 
27
#include <stdio.h>
 
28
 
 
29
#include <freerdp/utils/memory.h>
 
30
#include <freerdp/utils/stopwatch.h>
 
31
 
 
32
struct _PROFILER
 
33
{
 
34
        char* name;
 
35
        STOPWATCH* stopwatch;
 
36
};
 
37
typedef struct _PROFILER PROFILER;
 
38
 
 
39
FREERDP_API PROFILER* profiler_create(char* name);
 
40
FREERDP_API void profiler_free(PROFILER* profiler);
 
41
 
 
42
FREERDP_API void profiler_enter(PROFILER* profiler);
 
43
FREERDP_API void profiler_exit(PROFILER* profiler);
 
44
 
 
45
FREERDP_API void profiler_print_header();
 
46
FREERDP_API void profiler_print(PROFILER* profiler);
 
47
FREERDP_API void profiler_print_footer();
 
48
 
 
49
#ifdef WITH_PROFILER
 
50
#define IF_PROFILER(then)                       then
 
51
#define PROFILER_DEFINE(prof)           PROFILER* prof
 
52
#define PROFILER_CREATE(prof,name)      prof = profiler_create(name)
 
53
#define PROFILER_FREE(prof)                     profiler_free(prof)
 
54
#define PROFILER_ENTER(prof)            profiler_enter(prof)
 
55
#define PROFILER_EXIT(prof)                     profiler_exit(prof)
 
56
#define PROFILER_PRINT_HEADER           profiler_print_header()
 
57
#define PROFILER_PRINT(prof)            profiler_print(prof)
 
58
#define PROFILER_PRINT_FOOTER           profiler_print_footer()
 
59
#else
 
60
#define IF_PROFILER(then)               do { } while (0)
 
61
#define PROFILER_DEFINE(prof)           void* prof
 
62
#define PROFILER_CREATE(prof,name)      do { } while (0)
 
63
#define PROFILER_FREE(prof)             do { } while (0)
 
64
#define PROFILER_ENTER(prof)            do { } while (0)
 
65
#define PROFILER_EXIT(prof)             do { } while (0)
 
66
#define PROFILER_PRINT_HEADER           do { } while (0)
 
67
#define PROFILER_PRINT(prof)            do { } while (0)
 
68
#define PROFILER_PRINT_FOOTER           do { } while (0)
 
69
#endif
 
70
 
 
71
#endif /* __UTILS_PROFILER_H */