KJB
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
l_legacy.h
Go to the documentation of this file.
1 /* $Id: l_legacy.h 18159 2014-11-10 17:48:28Z ksimek $ */
2 /* {{{=========================================================================== *
3  |
4  | Copyright (c) 1994-2011 by Kobus Barnard (author)
5  |
6  | Personal and educational use of this code is granted, provided that this
7  | header is kept intact, and that the authorship is not misrepresented, that
8  | its use is acknowledged in publications, and relevant papers are cited.
9  |
10  | For other use contact the author (kobus AT cs DOT arizona DOT edu).
11  |
12  | Please note that the code in this file has not necessarily been adequately
13  | tested. Naturally, there is no guarantee of performance, support, or fitness
14  | for any particular task. Nonetheless, I am interested in hearing about
15  | problems that you encounter.
16  |
17  | Author: Kyle Simek
18  * =========================================================================== }}}*/
19 
20 /* {{{
21  * The KJB_LEGACY* macros and comments are modified versions of those in the Visualization Toolkit library, and fall under the copyright below:
22  *
23  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
24  All rights reserved.
25  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
26 
27  This software is distributed WITHOUT ANY WARRANTY; without even
28  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
29  PURPOSE. See the above copyright notice for more information.
30  *
31  }}} */
32 
33 // vim: tabstop=4 shiftwidth=4 foldmethod=marker
34 
35 #ifndef KJB_CPP_LEGACY_H
36 #define KJB_CPP_LEGACY_H
37 
38 // I never really got this working well, and the benefit didn't justify
39 // the effort. Should delete this file once we're sure it isnt used elsewhere
40 //
46 //#if defined(KJB_LEGACY_REMOVE)
47 // // Remove legacy methods completely. Put a bogus declaration in
48 // // place to avoid stray semicolons because this is an error for some
49 // // compilers. Using a class forward declaration allows any number
50 // // of repeats in any context without generating unique names.
51 //# define KJB_LEGACY(method) class vtkLegacyMethodRemoved
52 //#elif defined(KJB_LEGACY_SILENT) || defined(KJB_WRAPPING_CXX)
53 // // Provide legacy methods with no warnings.
54 //# define KJB_LEGACY(method) method
55 //#else
56 // // Setup compile-time warnings for uses of deprecated methods if
57 // // possible on this compiler.
58 //# if defined(__GNUC__) && !defined(__INTEL_COMPILER) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
59 //# define KJB_LEGACY(method) method __attribute__((deprecated))
60 //# elif defined(_MSC_VER) && _MSC_VER >= 1300
61 //# define KJB_LEGACY(method) __declspec(deprecated) method
62 //# else
63 //# define KJB_LEGACY(method) method
64 //# endif
65 //#endif
66 //
84 //#if defined(KJB_LEGACY_REMOVE) || defined(VTK_LEGACY_SILENT)
85 //# define KJB_LEGACY_BODY(method, version)
86 //# define KJB_LEGACY_REPLACED_BODY(method, version, replace)
87 //#else
88 //# define KJB_LEGACY_BODY(method, version) \
89 // vtkGenericWarningMacro(#method " was deprecated for " version " and will be removed in a future version.")
90 //# define KJB_LEGACY_REPLACED_BODY(method, version, replace) \
91 // vtkGenericWarningMacro(#method " was deprecated for " version " and will be removed in a future version. Use " #replace " instead.")
92 //#endif
93 //
94 
95 #endif