1
0
mirror of https://github.com/VDR4Arch/vdr.git synced 2023-10-10 13:36:52 +02:00

Removed the macros __STL_CONFIG_H, _STL_ALGOBASE_H and _MOVE_H from tools.h

This commit is contained in:
Klaus Schmidinger 2021-05-19 11:50:24 +02:00
parent 31b87544f1
commit 54c4e69299
2 changed files with 7 additions and 8 deletions

View File

@ -9679,3 +9679,6 @@ Video Disk Recorder Revision History
+ Spawned timers that shall avoid recording reruns only store the recording's name in
the donerecs,data file if there were no errors during recording, and if the timer has
actually finished.
- Removed the macros __STL_CONFIG_H, _STL_ALGOBASE_H and _MOVE_H from tools.h. If your
plugin insists in using "using namespace std;" you can still define
DISABLE_TEMPLATES_COLLIDING_WITH_STL before including any VDR header files.

12
tools.h
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: tools.h 5.3 2021/01/19 20:38:28 kls Exp $
* $Id: tools.h 5.4 2021/05/19 11:50:24 kls Exp $
*/
#ifndef __TOOLS_H
@ -53,17 +53,13 @@ template<class T> inline void DELETENULL(T *&p) { T *q = p; p = NULL; delete q;
// In case some plugin needs to use the STL and gets an error message regarding one
// of these functions, you can #define DISABLE_TEMPLATES_COLLIDING_WITH_STL before
// including tools.h.
#if !defined(__STL_CONFIG_H) // for old versions of the STL
#if !defined(DISABLE_TEMPLATES_COLLIDING_WITH_STL) && !defined(_STL_ALGOBASE_H)
// including any VDR header files.
#if !defined(DISABLE_TEMPLATES_COLLIDING_WITH_STL)
template<class T> inline T min(T a, T b) { return a <= b ? a : b; }
template<class T> inline T max(T a, T b) { return a >= b ? a : b; }
#endif
template<class T> inline int sgn(T a) { return a < 0 ? -1 : a > 0 ? 1 : 0; }
#if !defined(DISABLE_TEMPLATES_COLLIDING_WITH_STL) && !defined(_MOVE_H)
template<class T> inline void swap(T &a, T &b) { T t = a; a = b; b = t; }
#endif
#endif
template<class T> inline int sgn(T a) { return a < 0 ? -1 : a > 0 ? 1 : 0; }
template<class T> inline T constrain(T v, T l, T h) { return v < l ? l : v > h ? h : v; }