IMP
2.0.1
The Integrative Modeling Platform
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
Transform.h
Go to the documentation of this file.
1
/**
2
* \file IMP/core/Transform.h \brief Transform a particle
3
*
4
* Copyright 2007-2013 IMP Inventors. All rights reserved.
5
*
6
*/
7
8
#ifndef IMPCORE_TRANSFORM_H
9
#define IMPCORE_TRANSFORM_H
10
#include <IMP/core/core_config.h>
11
#include <
IMP/algebra/Transformation3D.h
>
12
#include <
IMP/SingletonModifier.h
>
13
#include <
IMP/singleton_macros.h
>
14
IMPCORE_BEGIN_NAMESPACE
15
16
17
//! Apply a transformation to a passed particle
18
/**
19
\see algebra::Transformation3D
20
See IMP::SingletonFunctor for an example of how to transform a set of
21
particles.
22
*/
23
class
IMPCOREEXPORT
Transform
:
public
SingletonModifier
24
{
25
public
:
26
//! Initialize
27
/**
28
/param[in] t a 3d transformation to be applied on a particle
29
/param[in] ignore_non_xyz if false then appling the tranformation
30
on a non XYZ particle will result in an exception.
31
*/
32
Transform
(
const
algebra::Transformation3D
&t,
33
bool
ignore_non_xyz=
false
);
34
35
IMP_SINGLETON_MODIFIER
(
Transform
);
36
private
:
37
algebra::Transformation3D
t_;
38
bool
ignore_non_xyz_;
39
};
40
41
42
IMPCORE_END_NAMESPACE
43
#endif
/* IMPCORE_TRANSFORM_H */