IMP  2.0.1
The Integrative Modeling Platform
deprecation_macros.h File Reference

Control display of deprecation information. More...

#include <IMP/base/base_config.h>
#include "deprecation.h"
#include "log.h"
#include "log_macros.h"
#include "enums.h"
+ Include dependency graph for deprecation_macros.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define IMP_DEPRECATED_CLASS(classname, replacement_classname)
 
#define IMP_DEPRECATED_FUNCTION(replacement)
 
#define IMP_DEPRECATED_IGNORE(call)   call
 
#define IMP_DEPRECATED_OBJECT(replacement_classname)
 Mark the functionality as deprecated. It will print out a message. More...
 
#define IMP_DEPRECATED_WARN
 

Detailed Description

Copyright 2007-2013 IMP Inventors. All rights reserved.

Definition in file deprecation_macros.h.

Macro Definition Documentation

#define IMP_DEPRECATED_CLASS (   classname,
  replacement_classname 
)
See Also
IMP_DEPRECATED_OBJECT()

Definition at line 52 of file deprecation_macros.h.

#define IMP_DEPRECATED_FUNCTION (   replacement)
See Also
IMP_DEPRECATED_OBJECT()

Definition at line 63 of file deprecation_macros.h.

#define IMP_DEPRECATED_IGNORE (   call)    call

Suppress compiler warnings about a call to a deprecated function.

Definition at line 83 of file deprecation_macros.h.

#define IMP_DEPRECATED_OBJECT (   replacement_classname)

From time to time, IMP is updated in ways that break backward compatibility. In certain cases we will leave the old functionality in so as not to break existing code which uses IMP. Such code is said to be "deprecated". See the deprecated class list for a list of such classes.

Deprecated classes are marked in a variety of ways:

  • They are listed in the "Deprecated List" in the "Related Pages" tab.
  • They are noted as deprecated in their documentation.
  • They print a warning when an instance is constructed or the function is called.

The warnings can be turned off using the IMP::base::set_print_deprecation_messages function.

Parameters
[in]replacement_classnameThe class which replaces it.

Further, IMP can be built without deprecated code by defining using the deprecated=False scons argument.

You should also use the

Deprecated:
command in the doxygen documentation.

Definition at line 41 of file deprecation_macros.h.

#define IMP_DEPRECATED_WARN

Produce compiler warnings when the function is called.

Definition at line 78 of file deprecation_macros.h.