[cvs] / xvidcore / src / utils / timer.h Repository:
ViewVC logotype

Annotation of /xvidcore/src/utils/timer.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.8 - (view) (download)

1 : edgomez 1.5 /*****************************************************************************
2 :     *
3 :     * XVID MPEG-4 VIDEO CODEC
4 :     * - Simple profiling functions header file -
5 :     *
6 : edgomez 1.6 * Copyright(C) 2002 Michael Militzer <isibaar@xvid.org>
7 : edgomez 1.5 *
8 : edgomez 1.7 * This file is part of XviD, a free MPEG-4 video encoder/decoder
9 : edgomez 1.5 *
10 : edgomez 1.7 * XviD is free software; you can redistribute it and/or modify it
11 :     * under the terms of the GNU General Public License as published by
12 : edgomez 1.5 * the Free Software Foundation; either version 2 of the License, or
13 :     * (at your option) any later version.
14 :     *
15 :     * This program is distributed in the hope that it will be useful,
16 :     * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 :     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 :     * GNU General Public License for more details.
19 :     *
20 :     * You should have received a copy of the GNU General Public License
21 :     * along with this program; if not, write to the Free Software
22 :     * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
23 :     *
24 : edgomez 1.7 * Under section 8 of the GNU General Public License, the copyright
25 :     * holders of XVID explicitly forbid distribution in the following
26 :     * countries:
27 :     *
28 :     * - Japan
29 :     * - United States of America
30 :     *
31 :     * Linking XviD statically or dynamically with other modules is making a
32 :     * combined work based on XviD. Thus, the terms and conditions of the
33 :     * GNU General Public License cover the whole combination.
34 :     *
35 :     * As a special exception, the copyright holders of XviD give you
36 :     * permission to link XviD with independent modules that communicate with
37 :     * XviD solely through the VFW1.1 and DShow interfaces, regardless of the
38 :     * license terms of these independent modules, and to copy and distribute
39 :     * the resulting combined work under terms of your choice, provided that
40 :     * every copy of the combined work is accompanied by a complete copy of
41 :     * the source code of XviD (the version of XviD used to produce the
42 :     * combined work), being distributed under the terms of the GNU General
43 :     * Public License plus this exception. An independent module is a module
44 :     * which is not derived from or based on XviD.
45 :     *
46 :     * Note that people who make modified versions of XviD are not obligated
47 :     * to grant this special exception for their modified versions; it is
48 :     * their choice whether to do so. The GNU General Public License gives
49 :     * permission to release a modified version without this exception; this
50 :     * exception also makes it possible to release a modified version which
51 :     * carries forward this exception.
52 :     *
53 : edgomez 1.8 * $Id: timer.h,v 1.7 2002/11/17 00:51:11 edgomez Exp $
54 : edgomez 1.5 *
55 :     ****************************************************************************/
56 :    
57 :     #ifndef _TIMER_H
58 :     #define _TIMER_H
59 :    
60 :     /*****************************************************************************
61 :     * Prototypes
62 :     ****************************************************************************/
63 : Isibaar 1.1
64 : edgomez 1.5 #ifdef _PROFILING_
65 : Isibaar 1.1
66 :     #include "../portab.h"
67 :    
68 :     uint64_t count_frames;
69 :    
70 : edgomez 1.5 /* Here we declare external symbols defined in timer.h */
71 : Isibaar 1.1 extern void start_timer();
72 :     extern void start_global_timer();
73 :     extern void stop_dct_timer();
74 :     extern void stop_idct_timer();
75 :     extern void stop_motion_timer();
76 :     extern void stop_comp_timer();
77 :     extern void stop_edges_timer();
78 :     extern void stop_inter_timer();
79 :     extern void stop_quant_timer();
80 :     extern void stop_iquant_timer();
81 :     extern void stop_conv_timer();
82 :     extern void stop_transfer_timer();
83 :     extern void stop_coding_timer();
84 :     extern void stop_prediction_timer();
85 : h 1.2 extern void stop_interlacing_timer();
86 : Isibaar 1.1 extern void stop_global_timer();
87 :     extern void init_timer();
88 :     extern void write_timer();
89 :    
90 :     #else
91 :    
92 : edgomez 1.5 /*
93 :     * We define dummy inline functions, a good compiler should just
94 :     * remove the function call
95 :     */
96 :    
97 : edgomez 1.4 static __inline void
98 : edgomez 1.8 start_timer(void)
99 : edgomez 1.4 {
100 :     }
101 :     static __inline void
102 : edgomez 1.8 start_global_timer(void)
103 : edgomez 1.4 {
104 :     }
105 :     static __inline void
106 : edgomez 1.8 stop_dct_timer(void)
107 : edgomez 1.4 {
108 :     }
109 :     static __inline void
110 : edgomez 1.8 stop_idct_timer(void)
111 : edgomez 1.4 {
112 :     }
113 :     static __inline void
114 : edgomez 1.8 stop_motion_timer(void)
115 : edgomez 1.4 {
116 :     }
117 :     static __inline void
118 : edgomez 1.8 stop_comp_timer(void)
119 : edgomez 1.4 {
120 :     }
121 :     static __inline void
122 : edgomez 1.8 stop_edges_timer(void)
123 : edgomez 1.4 {
124 :     }
125 :     static __inline void
126 : edgomez 1.8 stop_inter_timer(void)
127 : edgomez 1.4 {
128 :     }
129 :     static __inline void
130 : edgomez 1.8 stop_quant_timer(void)
131 : edgomez 1.4 {
132 :     }
133 :     static __inline void
134 : edgomez 1.8 stop_iquant_timer(void)
135 : edgomez 1.4 {
136 :     }
137 :     static __inline void
138 : edgomez 1.8 stop_conv_timer(void)
139 : edgomez 1.4 {
140 :     }
141 :     static __inline void
142 : edgomez 1.8 stop_transfer_timer(void)
143 : edgomez 1.4 {
144 :     }
145 :     static __inline void
146 : edgomez 1.8 init_timer(void)
147 : edgomez 1.4 {
148 :     }
149 :     static __inline void
150 : edgomez 1.8 write_timer(void)
151 : edgomez 1.4 {
152 :     }
153 :     static __inline void
154 : edgomez 1.8 stop_coding_timer(void)
155 : edgomez 1.4 {
156 :     }
157 :     static __inline void
158 : edgomez 1.8 stop_interlacing_timer(void)
159 : edgomez 1.4 {
160 :     }
161 :     static __inline void
162 : edgomez 1.8 stop_prediction_timer(void)
163 : edgomez 1.4 {
164 :     }
165 :     static __inline void
166 : edgomez 1.8 stop_global_timer(void)
167 : edgomez 1.4 {
168 :     }
169 : Isibaar 1.1
170 : edgomez 1.5 #endif /* _PROFILING_ */
171 : Isibaar 1.1
172 : edgomez 1.5 #endif /* _TIMER_H_ */

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4