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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1, Fri Mar 8 02:45:00 2002 UTC revision 1.5, Thu Sep 5 21:20:51 2002 UTC
# Line 1  Line 1 
1  #ifndef _ENCORE_TIMER_H  /*****************************************************************************
2  #define _ENCORE_TIMER_H   *
3     *  XVID MPEG-4 VIDEO CODEC
4     *  - Simple profiling functions header file -
5     *
6     *  Copyright(C) 2002 Michael Militzer
7     *
8     *  This program is an implementation of a part of one or more MPEG-4
9     *  Video tools as specified in ISO/IEC 14496-2 standard.  Those intending
10     *  to use this software module in hardware or software products are
11     *  advised that its use may infringe existing patents or copyrights, and
12     *  any such use would be at such party's own risk.  The original
13     *  developer of this software module and his/her company, and subsequent
14     *  editors and their companies, will have no liability for use of this
15     *  software or modifications or derivatives thereof.
16     *
17     *  This program is free software; you can redistribute it and/or modify
18     *  it under the terms of the GNU General Public License as published by
19     *  the Free Software Foundation; either version 2 of the License, or
20     *  (at your option) any later version.
21     *
22     *  This program is distributed in the hope that it will be useful,
23     *  but WITHOUT ANY WARRANTY; without even the implied warranty of
24     *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
25     *  GNU General Public License for more details.
26     *
27     *  You should have received a copy of the GNU General Public License
28     *  along with this program; if not, write to the Free Software
29     *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
30     *
31     * $Id$
32     *
33     ****************************************************************************/
34    
35    #ifndef _TIMER_H
36    #define _TIMER_H
37    
38    /*****************************************************************************
39     * Prototypes
40     ****************************************************************************/
41    
42  #if defined(_PROFILING_)  #ifdef _PROFILING_
43    
44  #include "../portab.h"  #include "../portab.h"
45    
46  uint64_t count_frames;  uint64_t count_frames;
47    
48    /* Here we declare external symbols defined in timer.h */
49  extern void start_timer();  extern void start_timer();
50  extern void start_global_timer();  extern void start_global_timer();
51  extern void stop_dct_timer();  extern void stop_dct_timer();
# Line 21  Line 60 
60  extern void stop_transfer_timer();  extern void stop_transfer_timer();
61  extern void stop_coding_timer();  extern void stop_coding_timer();
62  extern void stop_prediction_timer();  extern void stop_prediction_timer();
63    extern void stop_interlacing_timer();
64  extern void stop_global_timer();  extern void stop_global_timer();
65  extern void init_timer();  extern void init_timer();
66  extern void write_timer();  extern void write_timer();
67    
68  #else  #else
69    
70  static __inline void start_timer() {}  /*
71  static __inline void start_global_timer() {}   * We define dummy inline functions, a good compiler should just
72  static __inline void stop_dct_timer() {}   *  remove the function call
73  static __inline void stop_idct_timer() {}   */
74  static __inline void stop_motion_timer() {}  
75  static __inline void stop_comp_timer() {}  static __inline void
76  static __inline void stop_edges_timer() {}  start_timer()
77  static __inline void stop_inter_timer() {}  {
78  static __inline void stop_quant_timer() {}  }
79  static __inline void stop_iquant_timer() {}  static __inline void
80  static __inline void stop_conv_timer() {}  start_global_timer()
81  static __inline void stop_transfer_timer() {}  {
82  static __inline void init_timer() {}  }
83  static __inline void write_timer() {}  static __inline void
84  static __inline void stop_coding_timer() {}  stop_dct_timer()
85  static __inline void stop_prediction_timer() {}  {
86  static __inline void stop_global_timer() {}  }
87    static __inline void
88    stop_idct_timer()
89    {
90    }
91    static __inline void
92    stop_motion_timer()
93    {
94    }
95    static __inline void
96    stop_comp_timer()
97    {
98    }
99    static __inline void
100    stop_edges_timer()
101    {
102    }
103    static __inline void
104    stop_inter_timer()
105    {
106    }
107    static __inline void
108    stop_quant_timer()
109    {
110    }
111    static __inline void
112    stop_iquant_timer()
113    {
114    }
115    static __inline void
116    stop_conv_timer()
117    {
118    }
119    static __inline void
120    stop_transfer_timer()
121    {
122    }
123    static __inline void
124    init_timer()
125    {
126    }
127    static __inline void
128    write_timer()
129    {
130    }
131    static __inline void
132    stop_coding_timer()
133    {
134    }
135    static __inline void
136    stop_interlacing_timer()
137    {
138    }
139    static __inline void
140    stop_prediction_timer()
141    {
142    }
143    static __inline void
144    stop_global_timer()
145    {
146    }
147    
148  #endif  #endif /* _PROFILING_ */
149    
150  #endif /* _TIMER_H_ */  #endif /* _TIMER_H_ */

Legend:
Removed from v.1.1  
changed lines
  Added in v.1.5

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