home
about
news
download
doc
source
systems
tests
bugs
contact
IMP Reference Guide
2.16.0
The Integrative Modeling Platform
IMP Manual
Reference Guide
Tutorial Index
Modules
Classes
Examples
include
IMP
version 2.16.0
NonCopyable.h
Go to the documentation of this file.
1
/**
2
* \file IMP/NonCopyable.h
3
* \brief Base class for all objects that cannot be copied.
4
*
5
* Copyright 2007-2021 IMP Inventors. All rights reserved.
6
*
7
*/
8
9
#ifndef IMPKERNEL_NON_COPYABLE_H
10
#define IMPKERNEL_NON_COPYABLE_H
11
12
#include <IMP/kernel_config.h>
13
#include "
utility_macros.h
"
14
15
IMPKERNEL_BEGIN_NAMESPACE
16
17
//! Base class for all objects that cannot be copied.
18
/** Non-copyable classes cannot be copied, as the name implies. If you need
19
to do delayed initialization, either use an initialize method on them or
20
use a boost::scoped_ptr to allocate them on the heap.
21
*/
22
class
NonCopyable
{
23
protected
:
24
NonCopyable
() {}
25
};
26
27
IMPKERNEL_END_NAMESPACE
28
29
#endif
/* IMPKERNEL_NON_COPYABLE_H */
IMP::NonCopyable
Base class for all objects that cannot be copied.
Definition:
NonCopyable.h:22
utility_macros.h
Various general useful macros for IMP.