IMP logo
IMP Reference Guide  develop.db85651e41,2025/02/01
The Integrative Modeling Platform
__init__.py
1 # This file was automatically generated by SWIG (https://www.swig.org).
2 # Version 4.3.0
3 #
4 # Do not make changes to this file unless you know what you are doing - modify
5 # the SWIG interface file instead.
6 
7 
8 # This wrapper is part of IMP,
9 # Copyright 2007-2025 IMP Inventors. All rights reserved.
10 
11 
12 
13 
14 from sys import version_info as _swig_python_version_info
15 import _IMP_kernel
16 
17 try:
18  import builtins as __builtin__
19 except ImportError:
20  import __builtin__
21 
22 def _swig_repr(self):
23  try:
24  strthis = "proxy of " + self.this.__repr__()
25  except __builtin__.Exception:
26  strthis = ""
27  return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
28 
29 
30 def _swig_setattr_nondynamic_instance_variable(set):
31  def set_instance_attr(self, name, value):
32  if name == "this":
33  set(self, name, value)
34  elif name == "thisown":
35  self.this.own(value)
36  elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
37  set(self, name, value)
38  else:
39  raise AttributeError("You cannot add instance attributes to %s" % self)
40  return set_instance_attr
41 
42 
43 def _swig_setattr_nondynamic_class_variable(set):
44  def set_class_attr(cls, name, value):
45  if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
46  set(cls, name, value)
47  else:
48  raise AttributeError("You cannot add class attributes to %s" % cls)
49  return set_class_attr
50 
51 
52 def _swig_add_metaclass(metaclass):
53  """Class decorator for adding a metaclass to a SWIG wrapped class - a slimmed down version of six.add_metaclass"""
54  def wrapper(cls):
55  return metaclass(cls.__name__, cls.__bases__, cls.__dict__.copy())
56  return wrapper
57 
58 
59 class _SwigNonDynamicMeta(type):
60  """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
61  __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
62 
63 
64 import weakref
65 
66 class IMP_KERNEL_SwigPyIterator(object):
67  r"""Proxy of C++ swig::IMP_KERNEL_SwigPyIterator class."""
68 
69  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
70 
71  def __init__(self, *args, **kwargs):
72  raise AttributeError("No constructor defined - class is abstract")
73  __repr__ = _swig_repr
74  __swig_destroy__ = _IMP_kernel.delete_IMP_KERNEL_SwigPyIterator
75 
76  def value(self):
77  r"""value(IMP_KERNEL_SwigPyIterator self) -> PyObject *"""
78  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_value(self)
79 
80  def incr(self, n=1):
81  r"""incr(IMP_KERNEL_SwigPyIterator self, size_t n=1) -> IMP_KERNEL_SwigPyIterator"""
82  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_incr(self, n)
83 
84  def decr(self, n=1):
85  r"""decr(IMP_KERNEL_SwigPyIterator self, size_t n=1) -> IMP_KERNEL_SwigPyIterator"""
86  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_decr(self, n)
87 
88  def distance(self, x):
89  r"""distance(IMP_KERNEL_SwigPyIterator self, IMP_KERNEL_SwigPyIterator x) -> ptrdiff_t"""
90  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_distance(self, x)
91 
92  def equal(self, x):
93  r"""equal(IMP_KERNEL_SwigPyIterator self, IMP_KERNEL_SwigPyIterator x) -> bool"""
94  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_equal(self, x)
95 
96  def copy(self):
97  r"""copy(IMP_KERNEL_SwigPyIterator self) -> IMP_KERNEL_SwigPyIterator"""
98  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_copy(self)
99 
100  def next(self):
101  r"""next(IMP_KERNEL_SwigPyIterator self) -> PyObject *"""
102  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_next(self)
103 
104  def __next__(self):
105  r"""__next__(IMP_KERNEL_SwigPyIterator self) -> PyObject *"""
106  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___next__(self)
107 
108  def previous(self):
109  r"""previous(IMP_KERNEL_SwigPyIterator self) -> PyObject *"""
110  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_previous(self)
111 
112  def advance(self, n):
113  r"""advance(IMP_KERNEL_SwigPyIterator self, ptrdiff_t n) -> IMP_KERNEL_SwigPyIterator"""
114  return _IMP_kernel.IMP_KERNEL_SwigPyIterator_advance(self, n)
115 
116  def __eq__(self, x):
117  r"""__eq__(IMP_KERNEL_SwigPyIterator self, IMP_KERNEL_SwigPyIterator x) -> bool"""
118  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___eq__(self, x)
119 
120  def __ne__(self, x):
121  r"""__ne__(IMP_KERNEL_SwigPyIterator self, IMP_KERNEL_SwigPyIterator x) -> bool"""
122  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___ne__(self, x)
123 
124  def __iadd__(self, n):
125  r"""__iadd__(IMP_KERNEL_SwigPyIterator self, ptrdiff_t n) -> IMP_KERNEL_SwigPyIterator"""
126  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___iadd__(self, n)
127 
128  def __isub__(self, n):
129  r"""__isub__(IMP_KERNEL_SwigPyIterator self, ptrdiff_t n) -> IMP_KERNEL_SwigPyIterator"""
130  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___isub__(self, n)
131 
132  def __add__(self, n):
133  r"""__add__(IMP_KERNEL_SwigPyIterator self, ptrdiff_t n) -> IMP_KERNEL_SwigPyIterator"""
134  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___add__(self, n)
135 
136  def __sub__(self, *args):
137  r"""
138  __sub__(IMP_KERNEL_SwigPyIterator self, ptrdiff_t n) -> IMP_KERNEL_SwigPyIterator
139  __sub__(IMP_KERNEL_SwigPyIterator self, IMP_KERNEL_SwigPyIterator x) -> ptrdiff_t
140  """
141  return _IMP_kernel.IMP_KERNEL_SwigPyIterator___sub__(self, *args)
142  def __iter__(self):
143  return self
144 
145 # Register IMP_KERNEL_SwigPyIterator in _IMP_kernel:
146 _IMP_kernel.IMP_KERNEL_SwigPyIterator_swigregister(IMP_KERNEL_SwigPyIterator)
147 
148 _value_types=[]
149 _object_types=[]
150 _raii_types=[]
151 _plural_types=[]
152 
153 IMP_DEBUG = _IMP_kernel.IMP_DEBUG
154 
155 IMP_RELEASE = _IMP_kernel.IMP_RELEASE
156 
157 IMP_SILENT = _IMP_kernel.IMP_SILENT
158 
159 IMP_PROGRESS = _IMP_kernel.IMP_PROGRESS
160 
161 IMP_TERSE = _IMP_kernel.IMP_TERSE
162 
163 IMP_VERBOSE = _IMP_kernel.IMP_VERBOSE
164 
165 IMP_MEMORY = _IMP_kernel.IMP_MEMORY
166 
167 IMP_NONE = _IMP_kernel.IMP_NONE
168 
169 IMP_USAGE = _IMP_kernel.IMP_USAGE
170 
171 IMP_INTERNAL = _IMP_kernel.IMP_INTERNAL
172 
173 IMP_KERNEL_HAS_LOG4CXX = _IMP_kernel.IMP_KERNEL_HAS_LOG4CXX
174 
175 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_kernel.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
176 
177 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_kernel.IMP_COMPILER_HAS_DEBUG_VECTOR
178 
179 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_kernel.IMP_COMPILER_HAS_RANDOM_SHUFFLE
180 
181 IMP_COMPILER_HAS_THREE_WAY = _IMP_kernel.IMP_COMPILER_HAS_THREE_WAY
182 
183 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_kernel.IMP_KERNEL_HAS_BOOST_RANDOM
184 
185 IMP_KERNEL_HAS_NUMPY = _IMP_kernel.IMP_KERNEL_HAS_NUMPY
186 
187 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_kernel.IMP_KERNEL_HAS_GPERFTOOLS
188 
189 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_kernel.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
190 
191 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_kernel.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
192 
193 IMPKERNEL_SHOW_WARNINGS = _IMP_kernel.IMPKERNEL_SHOW_WARNINGS
194 
195 
196 import sys
197 class _DirectorObjects:
198  """@internal Simple class to keep references to director objects
199  to prevent premature deletion."""
200  def __init__(self):
201  self._objects = []
202  def register(self, obj):
203  """Take a reference to a director object; will only work for
204  refcounted C++ classes"""
205  if hasattr(obj, 'get_ref_count'):
206  self._objects.append(obj)
207  def cleanup(self):
208  """Only drop our reference and allow cleanup by Python if no other
209  Python references exist (we hold 3 references: one in self._objects,
210  one in x, and one in the argument list for getrefcount) *and* no
211  other C++ references exist (the Python object always holds one)"""
212  objs = [x for x in self._objects if sys.getrefcount(x) > 3 \
213  or x.get_ref_count() > 1]
214 # Do in two steps so the references are kept until the end of the
215 # function (deleting references may trigger a fresh call to this method)
216  self._objects = objs
217  def get_object_count(self):
218  """Get number of director objects (useful for testing only)"""
219  return len(self._objects)
220 _director_objects = _DirectorObjects()
221 
222 DEFAULT_CHECK = _IMP_kernel.DEFAULT_CHECK
223 
224 NONE = _IMP_kernel.NONE
225 
226 USAGE = _IMP_kernel.USAGE
227 
228 USAGE_AND_INTERNAL = _IMP_kernel.USAGE_AND_INTERNAL
229 
230 
231 def set_check_level(tf):
232  r"""set_check_level(IMP::CheckLevel tf)"""
233  return _IMP_kernel.set_check_level(tf)
234 
235 def get_check_level():
236  r"""get_check_level() -> IMP::CheckLevel"""
237  return _IMP_kernel.get_check_level()
238 
239 from _IMP_kernel import Exception, InternalException, ModelException, EventException
240 from _IMP_kernel import UsageException, IndexException, IOException, ValueException
241 from _IMP_kernel import TypeException
242 
243 class _ostream(object):
244  r"""Proxy of C++ std::ostream class."""
245 
246  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
247 
248  def __init__(self, *args, **kwargs):
249  raise AttributeError("No constructor defined")
250  __repr__ = _swig_repr
251 
252  def write(self, osa_buf):
253  r"""write(_ostream self, char const * osa_buf)"""
254  return _IMP_kernel._ostream_write(self, osa_buf)
255 
256 # Register _ostream in _IMP_kernel:
257 _IMP_kernel._ostream_swigregister(_ostream)
258 IMP_C_OPEN_BINARY = _IMP_kernel.IMP_C_OPEN_BINARY
259 
260 
261 from . import _list_util
262 
263 
264 _models_set = weakref.WeakSet()
265 
266 def _models_set_get(m):
267  for x in _models_set:
268  if x == m:
269  return x
270 
271 
272 _raii_types.append("SetLogState")
273 
274 
275 _raii_types.append("SetNumberOfThreads")
276 
277 
278 _raii_types.append("SetCheckState")
279 
280 
281 _object_types.append("Object")
282 
283 
284 def _object_cast_to_Object(o):
285  r"""_object_cast_to_Object(Object * o) -> Object"""
286  return _IMP_kernel._object_cast_to_Object(o)
287 
288 _object_types.append("_TestObject")
289 
290 
291 def _object_cast_to__TestObject(o):
292  r"""_object_cast_to__TestObject(Object * o) -> _TestObject"""
293  return _IMP_kernel._object_cast_to__TestObject(o)
294 
295 VersionInfos=list
296 _plural_types.append("VersionInfos")
297 _value_types.append("VersionInfo")
298 
299 
300 _raii_types.append("CreateLogContext")
301 
302 
303 _raii_types.append("WarningContext")
304 
305 
306 _raii_types.append("SetLogTarget")
307 
308 
309 _TestValues=list
310 _plural_types.append("_TestValues")
311 _value_types.append("_TestValue")
312 
313 
314 Floats=list
315 _plural_types.append("Floats")
316 _value_types.append("Float")
317 
318 
319 Ints=list
320 _plural_types.append("Ints")
321 _value_types.append("Int")
322 
323 
324 Strings=list
325 _plural_types.append("Strings")
326 _value_types.append("String")
327 
328 
329 _Protections=list
330 _plural_types.append("_Protections")
331 _value_types.append("_Protection")
332 
333 class _InputAdaptor(object):
334  r"""Proxy of C++ IMP::InputAdaptor class."""
335 
336  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
337 
338  def __init__(self, *args, **kwargs):
339  raise AttributeError("No constructor defined")
340  __repr__ = _swig_repr
341 
342  def __getstate__(self):
343  raise NotImplementedError(str(self.__class__)
344  + " does not support serialization")
345 
346  __swig_destroy__ = _IMP_kernel.delete__InputAdaptor
347 
348 # Register _InputAdaptor in _IMP_kernel:
349 _IMP_kernel._InputAdaptor_swigregister(_InputAdaptor)
350 class _NonCopyable(object):
351  r"""Proxy of C++ IMP::NonCopyable class."""
352 
353  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
354 
355  def __init__(self, *args, **kwargs):
356  raise AttributeError("No constructor defined")
357  __repr__ = _swig_repr
358  __swig_destroy__ = _IMP_kernel.delete__NonCopyable
359 
360 # Register _NonCopyable in _IMP_kernel:
361 _IMP_kernel._NonCopyable_swigregister(_NonCopyable)
362 class _RAII(_NonCopyable):
363  r"""Proxy of C++ IMP::RAII class."""
364 
365  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
366 
367  def __init__(self, *args, **kwargs):
368  raise AttributeError("No constructor defined")
369  __repr__ = _swig_repr
370  __swig_destroy__ = _IMP_kernel.delete__RAII
371 
372 # Register _RAII in _IMP_kernel:
373 _IMP_kernel._RAII_swigregister(_RAII)
374 class _Value(object):
375  r"""Proxy of C++ IMP::Value class."""
376 
377  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
378 
379  def __init__(self, *args, **kwargs):
380  raise AttributeError("No constructor defined")
381  __repr__ = _swig_repr
382 
383  def __getstate__(self):
384  raise NotImplementedError(str(self.__class__)
385  + " does not support serialization")
386 
387  __swig_destroy__ = _IMP_kernel.delete__Value
388 
389 # Register _Value in _IMP_kernel:
390 _IMP_kernel._Value_swigregister(_Value)
391 
392 def get_executable_name():
393  r"""get_executable_name() -> std::string"""
394  return _IMP_kernel.get_executable_name()
395 
396 def setup_from_argv(*args):
397  r"""
398  setup_from_argv(IMP::Strings const & argv, std::string description)
399  setup_from_argv(IMP::Strings const & argv, std::string description, std::string positional_description, int num_positional) -> IMP::Strings
400  """
401  return _IMP_kernel.setup_from_argv(*args)
402 
403 def add_string_flag(name, default_value, description):
404  r"""add_string_flag(std::string name, std::string default_value, std::string description)"""
405  return _IMP_kernel.add_string_flag(name, default_value, description)
406 
407 def get_string_flag(name):
408  r"""get_string_flag(std::string name) -> std::string"""
409  return _IMP_kernel.get_string_flag(name)
410 
411 def add_int_flag(name, default_value, description):
412  r"""add_int_flag(std::string name, size_t default_value, std::string description)"""
413  return _IMP_kernel.add_int_flag(name, default_value, description)
414 
415 def get_int_flag(name):
416  r"""get_int_flag(std::string name) -> size_t"""
417  return _IMP_kernel.get_int_flag(name)
418 
419 def add_bool_flag(name, description):
420  r"""add_bool_flag(std::string name, std::string description)"""
421  return _IMP_kernel.add_bool_flag(name, description)
422 
423 def get_bool_flag(name):
424  r"""get_bool_flag(std::string name) -> bool"""
425  return _IMP_kernel.get_bool_flag(name)
426 
427 def add_float_flag(name, default_value, description):
428  r"""add_float_flag(std::string name, double default_value, std::string description)"""
429  return _IMP_kernel.add_float_flag(name, default_value, description)
430 
431 def get_float_flag(name):
432  r"""get_float_flag(std::string name) -> double"""
433  return _IMP_kernel.get_float_flag(name)
434 
435 def write_help(*args):
436  r"""write_help(_ostream out=std::cerr)"""
437  return _IMP_kernel.write_help(*args)
438 
439 def get_is_quick_test():
440  r"""get_is_quick_test() -> bool"""
441  return _IMP_kernel.get_is_quick_test()
442 DEFAULT = _IMP_kernel.DEFAULT
443 
444 SILENT = _IMP_kernel.SILENT
445 
446 WARNING = _IMP_kernel.WARNING
447 
448 PROGRESS = _IMP_kernel.PROGRESS
449 
450 TERSE = _IMP_kernel.TERSE
451 
452 VERBOSE = _IMP_kernel.VERBOSE
453 
454 MEMORY = _IMP_kernel.MEMORY
455 
456 ALL_LOG = _IMP_kernel.ALL_LOG
457 
458 class VersionInfo(_Value):
459  r"""Proxy of C++ IMP::VersionInfo class."""
460 
461  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
462 
463  def __init__(self, *args):
464  r"""
465  __init__(VersionInfo self, std::string module, std::string version) -> VersionInfo
466  __init__(VersionInfo self) -> VersionInfo
467  """
468  _IMP_kernel.VersionInfo_swiginit(self, _IMP_kernel.new_VersionInfo(*args))
469 
470  def get_module(self):
471  r"""get_module(VersionInfo self) -> std::string"""
472  return _IMP_kernel.VersionInfo_get_module(self)
473 
474  def get_version(self):
475  r"""get_version(VersionInfo self) -> std::string"""
476  return _IMP_kernel.VersionInfo_get_version(self)
477 
478  def show(self, *args):
479  r"""show(VersionInfo self, _ostream out=std::cout)"""
480  return _IMP_kernel.VersionInfo_show(self, *args)
481 
482  def __cmp__(self, o):
483  r"""__cmp__(VersionInfo self, VersionInfo o) -> int"""
484  return _IMP_kernel.VersionInfo___cmp__(self, o)
485 
486  def __eq__(self, o):
487  r"""__eq__(VersionInfo self, VersionInfo o) -> bool"""
488  return _IMP_kernel.VersionInfo___eq__(self, o)
489 
490  def __ne__(self, o):
491  r"""__ne__(VersionInfo self, VersionInfo o) -> bool"""
492  return _IMP_kernel.VersionInfo___ne__(self, o)
493 
494  def __lt__(self, o):
495  r"""__lt__(VersionInfo self, VersionInfo o) -> bool"""
496  return _IMP_kernel.VersionInfo___lt__(self, o)
497 
498  def __gt__(self, o):
499  r"""__gt__(VersionInfo self, VersionInfo o) -> bool"""
500  return _IMP_kernel.VersionInfo___gt__(self, o)
501 
502  def __ge__(self, o):
503  r"""__ge__(VersionInfo self, VersionInfo o) -> bool"""
504  return _IMP_kernel.VersionInfo___ge__(self, o)
505 
506  def __le__(self, o):
507  r"""__le__(VersionInfo self, VersionInfo o) -> bool"""
508  return _IMP_kernel.VersionInfo___le__(self, o)
509 
510  def __str__(self):
511  r"""__str__(VersionInfo self) -> std::string"""
512  return _IMP_kernel.VersionInfo___str__(self)
513 
514  def __repr__(self):
515  r"""__repr__(VersionInfo self) -> std::string"""
516  return _IMP_kernel.VersionInfo___repr__(self)
517 
518  def _get_as_binary(self):
519  r"""_get_as_binary(VersionInfo self) -> PyObject *"""
520  return _IMP_kernel.VersionInfo__get_as_binary(self)
521 
522  def _set_from_binary(self, p):
523  r"""_set_from_binary(VersionInfo self, PyObject * p)"""
524  return _IMP_kernel.VersionInfo__set_from_binary(self, p)
525 
526  def __getstate__(self):
527  p = self._get_as_binary()
528  if len(self.__dict__) > 1:
529  d = self.__dict__.copy()
530  del d['this']
531  p = (d, p)
532  return p
533 
534  def __setstate__(self, p):
535  if not hasattr(self, 'this'):
536  self.__init__()
537  if isinstance(p, tuple):
538  d, p = p
539  self.__dict__.update(d)
540  return self._set_from_binary(p)
541 
542  __swig_destroy__ = _IMP_kernel.delete_VersionInfo
543 
544 # Register VersionInfo in _IMP_kernel:
545 _IMP_kernel.VersionInfo_swigregister(VersionInfo)
546 class TextOutput(_InputAdaptor):
547  r"""Proxy of C++ IMP::TextOutput class."""
548 
549  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
550  __repr__ = _swig_repr
551 
552  def __init__(self, *args):
553  r"""
554  __init__(TextOutput self, int arg2) -> TextOutput
555  __init__(TextOutput self, double arg2) -> TextOutput
556  __init__(TextOutput self, char const * c, bool append=False) -> TextOutput
557  __init__(TextOutput self, IMP::TextProxy< std::ostream > p) -> TextOutput
558  __init__(TextOutput self) -> TextOutput
559  __init__(TextOutput self, std::string file_name, bool append=False) -> TextOutput
560  """
561  _IMP_kernel.TextOutput_swiginit(self, _IMP_kernel.new_TextOutput(*args))
562 
563  def show(self, *args):
564  r"""show(TextOutput self, _ostream out=std::cout)"""
565  return _IMP_kernel.TextOutput_show(self, *args)
566 
567  def get_name(self):
568  r"""get_name(TextOutput self) -> std::string"""
569  return _IMP_kernel.TextOutput_get_name(self)
570  __swig_destroy__ = _IMP_kernel.delete_TextOutput
571 
572 # Register TextOutput in _IMP_kernel:
573 _IMP_kernel.TextOutput_swigregister(TextOutput)
574 class TextInput(_InputAdaptor):
575  r"""Proxy of C++ IMP::TextInput class."""
576 
577  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
578  __repr__ = _swig_repr
579 
580  def __init__(self, *args):
581  r"""
582  __init__(TextInput self, int arg2) -> TextInput
583  __init__(TextInput self, double arg2) -> TextInput
584  __init__(TextInput self, char const * c) -> TextInput
585  __init__(TextInput self, IMP::TextProxy< std::istream > p) -> TextInput
586  __init__(TextInput self) -> TextInput
587  __init__(TextInput self, std::string file_name) -> TextInput
588  """
589  _IMP_kernel.TextInput_swiginit(self, _IMP_kernel.new_TextInput(*args))
590 
591  def show(self, *args):
592  r"""show(TextInput self, _ostream out=std::cout)"""
593  return _IMP_kernel.TextInput_show(self, *args)
594 
595  def get_name(self):
596  r"""get_name(TextInput self) -> std::string"""
597  return _IMP_kernel.TextInput_get_name(self)
598 
599  def set_binary_open_mode(self, binary):
600  r"""set_binary_open_mode(TextInput self, bool binary)"""
601  return _IMP_kernel.TextInput_set_binary_open_mode(self, binary)
602  __swig_destroy__ = _IMP_kernel.delete_TextInput
603 
604 # Register TextInput in _IMP_kernel:
605 _IMP_kernel.TextInput_swigregister(TextInput)
606 class SetLogTarget(_RAII):
607  r"""Proxy of C++ IMP::SetLogTarget class."""
608 
609  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
610 
611  def __init__(self, *args):
612  r"""
613  __init__(SetLogTarget self) -> SetLogTarget
614  __init__(SetLogTarget self, TextOutput to) -> SetLogTarget
615  """
616  _IMP_kernel.SetLogTarget_swiginit(self, _IMP_kernel.new_SetLogTarget(*args))
617 
618  def set(self, to):
619  r"""set(SetLogTarget self, TextOutput to)"""
620  return _IMP_kernel.SetLogTarget_set(self, to)
621 
622  def reset(self):
623  r"""reset(SetLogTarget self)"""
624  return _IMP_kernel.SetLogTarget_reset(self)
625  __swig_destroy__ = _IMP_kernel.delete_SetLogTarget
626 
627  def show(self, *args):
628  r"""show(SetLogTarget self, _ostream out=std::cout)"""
629  return _IMP_kernel.SetLogTarget_show(self, *args)
630 
631  def __enter__(self):
632  return self
633  def __exit__(self, exc_type, exc_val, exc_tb):
634  self.reset()
635  return False
636 
637 
638  def __str__(self):
639  r"""__str__(SetLogTarget self) -> std::string"""
640  return _IMP_kernel.SetLogTarget___str__(self)
641 
642  def __repr__(self):
643  r"""__repr__(SetLogTarget self) -> std::string"""
644  return _IMP_kernel.SetLogTarget___repr__(self)
645 
646 # Register SetLogTarget in _IMP_kernel:
647 _IMP_kernel.SetLogTarget_swigregister(SetLogTarget)
648 
649 def create_temporary_file(*args):
650  r"""create_temporary_file(std::string prefix="imp_temp", std::string suffix="") -> TextOutput"""
651  return _IMP_kernel.create_temporary_file(*args)
652 
653 def create_temporary_file_name(*args):
654  r"""create_temporary_file_name(std::string prefix="imp_temp", std::string suffix="") -> std::string"""
655  return _IMP_kernel.create_temporary_file_name(*args)
656 
657 def get_relative_path(base, relative):
658  r"""get_relative_path(std::string base, std::string relative) -> std::string"""
659  return _IMP_kernel.get_relative_path(base, relative)
660 
661 def get_absolute_path(file):
662  r"""get_absolute_path(std::string file) -> std::string"""
663  return _IMP_kernel.get_absolute_path(file)
664 
665 def push_log_context(functionname, object):
666  r"""push_log_context(char const * functionname, void const * object)"""
667  return _IMP_kernel.push_log_context(functionname, object)
668 
669 def pop_log_context():
670  r"""pop_log_context()"""
671  return _IMP_kernel.pop_log_context()
672 
673 def add_to_log(*args):
674  r"""
675  add_to_log(std::string to_write)
676  add_to_log(IMP::LogLevel level, std::string to_write)
677  """
678  return _IMP_kernel.add_to_log(*args)
679 
680 def set_log_level(l):
681  r"""set_log_level(IMP::LogLevel l)"""
682  return _IMP_kernel.set_log_level(l)
683 
684 def set_log_timer(tb):
685  r"""set_log_timer(bool tb)"""
686  return _IMP_kernel.set_log_timer(tb)
687 
688 def reset_log_timer():
689  r"""reset_log_timer()"""
690  return _IMP_kernel.reset_log_timer()
691 
692 def get_log_level():
693  r"""get_log_level() -> IMP::LogLevel"""
694  return _IMP_kernel.get_log_level()
695 
696 def set_progress_display(description, steps):
697  r"""set_progress_display(std::string description, unsigned int steps)"""
698  return _IMP_kernel.set_progress_display(description, steps)
699 
700 def add_to_progress_display(step=1):
701  r"""add_to_progress_display(unsigned int step=1)"""
702  return _IMP_kernel.add_to_progress_display(step)
703 class Object(_NonCopyable):
704  r"""Proxy of C++ IMP::Object class."""
705 
706  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
707 
708  def __init__(self, name):
709  r"""__init__(Object self, std::string name) -> Object"""
710  if self.__class__ == Object:
711  _self = None
712  else:
713  _self = self
714  _IMP_kernel.Object_swiginit(self, _IMP_kernel.new_Object(_self, name))
715 
716  if self.__class__ != Object:
717  _director_objects.register(self)
718 
719 
720 
721  __swig_destroy__ = _IMP_kernel.delete_Object
722 
723  def __hash__(self):
724  r"""__hash__(Object self) -> std::size_t"""
725  return _IMP_kernel.Object___hash__(self)
726 
727  def set_log_level(self, l):
728  r"""set_log_level(Object self, IMP::LogLevel l)"""
729  return _IMP_kernel.Object_set_log_level(self, l)
730 
731  def set_check_level(self, l):
732  r"""set_check_level(Object self, IMP::CheckLevel l)"""
733  return _IMP_kernel.Object_set_check_level(self, l)
734 
735  def get_log_level(self):
736  r"""get_log_level(Object self) -> IMP::LogLevel"""
737  return _IMP_kernel.Object_get_log_level(self)
738 
739  def get_check_level(self):
740  r"""get_check_level(Object self) -> IMP::CheckLevel"""
741  return _IMP_kernel.Object_get_check_level(self)
742 
743  def get_version_info(self):
744  r"""get_version_info(Object self) -> VersionInfo"""
745  return _IMP_kernel.Object_get_version_info(self)
746 
747  def get_name(self):
748  r"""get_name(Object self) -> std::string const &"""
749  return _IMP_kernel.Object_get_name(self)
750 
751  def set_name(self, name):
752  r"""set_name(Object self, std::string name)"""
753  return _IMP_kernel.Object_set_name(self, name)
754 
755  def get_type_name(self):
756  r"""get_type_name(Object self) -> std::string"""
757  return _IMP_kernel.Object_get_type_name(self)
758 
759  def set_was_used(self, tf):
760  r"""set_was_used(Object self, bool tf)"""
761  return _IMP_kernel.Object_set_was_used(self, tf)
762 
763  def show(self, *args):
764  r"""show(Object self, _ostream out=std::cout)"""
765  return _IMP_kernel.Object_show(self, *args)
766 
767  def get_string(self):
768  r"""get_string(Object self) -> std::string"""
769  return _IMP_kernel.Object_get_string(self)
770 
771  def _on_destruction(self):
772  r"""_on_destruction(Object self)"""
773  return _IMP_kernel.Object__on_destruction(self)
774 
775  def get_is_valid(self):
776  r"""get_is_valid(Object self) -> bool"""
777  return _IMP_kernel.Object_get_is_valid(self)
778 
779  def get_ref_count(self):
780  r"""get_ref_count(Object self) -> unsigned int"""
781  return _IMP_kernel.Object_get_ref_count(self)
782 
783  @staticmethod
784  def get_number_of_live_objects():
785  r"""get_number_of_live_objects() -> unsigned int"""
786  return _IMP_kernel.Object_get_number_of_live_objects()
787 
788  def get_is_shared(self):
789  r"""get_is_shared(Object self) -> bool"""
790  return _IMP_kernel.Object_get_is_shared(self)
791 
792  def clear_caches(self):
793  r"""clear_caches(Object self)"""
794  return _IMP_kernel.Object_clear_caches(self)
795 
796  def do_destroy(self):
797  r"""do_destroy(Object self)"""
798  return _IMP_kernel.Object_do_destroy(self)
799 
800  def __getstate__(self):
801  raise NotImplementedError(str(self.__class__)
802  + " does not support serialization")
803 
804 
805  def __eq__(self, o):
806  r"""__eq__(Object self, Object o) -> bool"""
807  return _IMP_kernel.Object___eq__(self, o)
808 
809  def __ne__(self, o):
810  r"""__ne__(Object self, Object o) -> bool"""
811  return _IMP_kernel.Object___ne__(self, o)
812 
813  def __le__(self, o):
814  r"""__le__(Object self, Object o) -> bool"""
815  return _IMP_kernel.Object___le__(self, o)
816 
817  def __lt__(self, o):
818  r"""__lt__(Object self, Object o) -> bool"""
819  return _IMP_kernel.Object___lt__(self, o)
820 
821  def __ge__(self, o):
822  r"""__ge__(Object self, Object o) -> bool"""
823  return _IMP_kernel.Object___ge__(self, o)
824 
825  def __gt__(self, o):
826  r"""__gt__(Object self, Object o) -> bool"""
827  return _IMP_kernel.Object___gt__(self, o)
828 
829  def __str__(self):
830  r"""__str__(Object self) -> std::string"""
831  return _IMP_kernel.Object___str__(self)
832 
833  def __repr__(self):
834  r"""__repr__(Object self) -> std::string"""
835  return _IMP_kernel.Object___repr__(self)
836 
837  @staticmethod
838  def get_from(o):
839  return _object_cast_to_Object(o)
840 
841  def __disown__(self):
842  self.this.disown()
843  _IMP_kernel.disown_Object(self)
844  return weakref.proxy(self)
845 
846 # Register Object in _IMP_kernel:
847 _IMP_kernel.Object_swigregister(Object)
848 class SetLogState(_RAII):
849  r"""Proxy of C++ IMP::SetLogState class."""
850 
851  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
852 
853  def reset(self):
854  r"""reset(SetLogState self)"""
855  return _IMP_kernel.SetLogState_reset(self)
856  __swig_destroy__ = _IMP_kernel.delete_SetLogState
857 
858  def show(self, *args):
859  r"""show(SetLogState self, _ostream out=std::cout)"""
860  return _IMP_kernel.SetLogState_show(self, *args)
861 
862  def __init__(self, *args):
863  r"""
864  __init__(SetLogState self) -> SetLogState
865  __init__(SetLogState self, Object o, IMP::LogLevel l) -> SetLogState
866  __init__(SetLogState self, IMP::LogLevel l) -> SetLogState
867  """
868  _IMP_kernel.SetLogState_swiginit(self, _IMP_kernel.new_SetLogState(*args))
869 
870  def set(self, *args):
871  r"""
872  set(SetLogState self, Object o, IMP::LogLevel l)
873  set(SetLogState self, IMP::LogLevel l)
874  """
875  return _IMP_kernel.SetLogState_set(self, *args)
876 
877  def __enter__(self):
878  return self
879  def __exit__(self, exc_type, exc_val, exc_tb):
880  self.reset()
881  return False
882 
883 
884  def __str__(self):
885  r"""__str__(SetLogState self) -> std::string"""
886  return _IMP_kernel.SetLogState___str__(self)
887 
888  def __repr__(self):
889  r"""__repr__(SetLogState self) -> std::string"""
890  return _IMP_kernel.SetLogState___repr__(self)
891 
892 # Register SetLogState in _IMP_kernel:
893 _IMP_kernel.SetLogState_swigregister(SetLogState)
894 class WarningContext(object):
895  r"""Proxy of C++ IMP::WarningContext class."""
896 
897  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
898  data_ = property(_IMP_kernel.WarningContext_data__get, _IMP_kernel.WarningContext_data__set, doc=r"""data_ : boost::unordered_set<(std::string)>""")
899 
900  def add_warning(self, key, warning):
901  r"""add_warning(WarningContext self, std::string key, std::string warning)"""
902  return _IMP_kernel.WarningContext_add_warning(self, key, warning)
903 
904  def clear_warnings(self):
905  r"""clear_warnings(WarningContext self)"""
906  return _IMP_kernel.WarningContext_clear_warnings(self)
907 
908  def dump_warnings(self):
909  r"""dump_warnings(WarningContext self)"""
910  return _IMP_kernel.WarningContext_dump_warnings(self)
911  __swig_destroy__ = _IMP_kernel.delete_WarningContext
912 
913  def show(self, *args):
914  r"""show(WarningContext self, _ostream out=std::cout)"""
915  return _IMP_kernel.WarningContext_show(self, *args)
916 
917  def __enter__(self):
918  return self
919  def __exit__(self, exc_type, exc_val, exc_tb):
920  self.reset()
921  return False
922 
923 
924  def __str__(self):
925  r"""__str__(WarningContext self) -> std::string"""
926  return _IMP_kernel.WarningContext___str__(self)
927 
928  def __repr__(self):
929  r"""__repr__(WarningContext self) -> std::string"""
930  return _IMP_kernel.WarningContext___repr__(self)
931 
932  def __init__(self):
933  r"""__init__(WarningContext self) -> WarningContext"""
934  _IMP_kernel.WarningContext_swiginit(self, _IMP_kernel.new_WarningContext())
935 
936 # Register WarningContext in _IMP_kernel:
937 _IMP_kernel.WarningContext_swigregister(WarningContext)
938 class CreateLogContext(_RAII):
939  r"""Proxy of C++ IMP::CreateLogContext class."""
940 
941  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
942 
943  def __init__(self, *args):
944  r"""
945  __init__(CreateLogContext self, std::string fname, Object object=None) -> CreateLogContext
946  __init__(CreateLogContext self) -> CreateLogContext
947  __init__(CreateLogContext self, char const * fname, Object object=None) -> CreateLogContext
948  """
949  _IMP_kernel.CreateLogContext_swiginit(self, _IMP_kernel.new_CreateLogContext(*args))
950 
951  def set(self, fname, object=None):
952  r"""set(CreateLogContext self, char const * fname, Object object=None)"""
953  return _IMP_kernel.CreateLogContext_set(self, fname, object)
954 
955  def reset(self):
956  r"""reset(CreateLogContext self)"""
957  return _IMP_kernel.CreateLogContext_reset(self)
958  __swig_destroy__ = _IMP_kernel.delete_CreateLogContext
959 
960  def show(self, *args):
961  r"""show(CreateLogContext self, _ostream out=std::cout)"""
962  return _IMP_kernel.CreateLogContext_show(self, *args)
963 
964  def __enter__(self):
965  return self
966  def __exit__(self, exc_type, exc_val, exc_tb):
967  self.reset()
968  return False
969 
970 
971  def __str__(self):
972  r"""__str__(CreateLogContext self) -> std::string"""
973  return _IMP_kernel.CreateLogContext___str__(self)
974 
975  def __repr__(self):
976  r"""__repr__(CreateLogContext self) -> std::string"""
977  return _IMP_kernel.CreateLogContext___repr__(self)
978 
979 # Register CreateLogContext in _IMP_kernel:
980 _IMP_kernel.CreateLogContext_swigregister(CreateLogContext)
981 class SetCheckState(_RAII):
982  r"""Proxy of C++ IMP::SetCheckState class."""
983 
984  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
985 
986  def reset(self):
987  r"""reset(SetCheckState self)"""
988  return _IMP_kernel.SetCheckState_reset(self)
989  __swig_destroy__ = _IMP_kernel.delete_SetCheckState
990 
991  def show(self, *args):
992  r"""show(SetCheckState self, _ostream out=std::cout)"""
993  return _IMP_kernel.SetCheckState_show(self, *args)
994 
995  def __init__(self, *args):
996  r"""
997  __init__(SetCheckState self) -> SetCheckState
998  __init__(SetCheckState self, Object o, IMP::CheckLevel l) -> SetCheckState
999  __init__(SetCheckState self, IMP::CheckLevel l) -> SetCheckState
1000  """
1001  _IMP_kernel.SetCheckState_swiginit(self, _IMP_kernel.new_SetCheckState(*args))
1002 
1003  def set(self, *args):
1004  r"""
1005  set(SetCheckState self, Object o, IMP::CheckLevel l)
1006  set(SetCheckState self, IMP::CheckLevel l)
1007  """
1008  return _IMP_kernel.SetCheckState_set(self, *args)
1009 
1010  def __enter__(self):
1011  return self
1012  def __exit__(self, exc_type, exc_val, exc_tb):
1013  self.reset()
1014  return False
1015 
1016 
1017  def __str__(self):
1018  r"""__str__(SetCheckState self) -> std::string"""
1019  return _IMP_kernel.SetCheckState___str__(self)
1020 
1021  def __repr__(self):
1022  r"""__repr__(SetCheckState self) -> std::string"""
1023  return _IMP_kernel.SetCheckState___repr__(self)
1024 
1025 # Register SetCheckState in _IMP_kernel:
1026 _IMP_kernel.SetCheckState_swigregister(SetCheckState)
1027 
1028 def get_unique_name(templ):
1029  r"""get_unique_name(std::string templ) -> std::string"""
1030  return _IMP_kernel.get_unique_name(templ)
1031 
1032 def get_copyright():
1033  r"""get_copyright() -> std::string"""
1034  return _IMP_kernel.get_copyright()
1035 class _Protection(object):
1036  r"""Proxy of C++ IMP::internal::_Protection class."""
1037 
1038  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1039 
1040  def __init__(self, *args, **kwargs):
1041  raise AttributeError("No constructor defined")
1042 
1043  def show(self, *args):
1044  r"""show(_Protection self, _ostream out=std::cout)"""
1045  return _IMP_kernel._Protection_show(self, *args)
1046 
1047  def __str__(self):
1048  r"""__str__(_Protection self) -> std::string"""
1049  return _IMP_kernel._Protection___str__(self)
1050 
1051  def __repr__(self):
1052  r"""__repr__(_Protection self) -> std::string"""
1053  return _IMP_kernel._Protection___repr__(self)
1054  __swig_destroy__ = _IMP_kernel.delete__Protection
1055 
1056 # Register _Protection in _IMP_kernel:
1057 _IMP_kernel._Protection_swigregister(_Protection)
1058 
1059 def _test_log():
1060  r"""_test_log()"""
1061  return _IMP_kernel._test_log()
1062 
1063 def _test_intranges(ips):
1064  r"""_test_intranges(IMP::IntRanges const & ips) -> int"""
1065  return _IMP_kernel._test_intranges(ips)
1066 
1067 def _test_intrange(*args):
1068  r"""
1069  _test_intrange(IMP::IntRange const & ips) -> IMP::IntRange
1070  _test_intrange() -> IMP::IntRange
1071  """
1072  return _IMP_kernel._test_intrange(*args)
1073 
1074 def _test_ifile(a):
1075  r"""_test_ifile(TextInput a) -> std::string"""
1076  return _IMP_kernel._test_ifile(a)
1077 
1078 def _test_ofile(a):
1079  r"""_test_ofile(TextOutput a) -> std::string"""
1080  return _IMP_kernel._test_ofile(a)
1081 
1082 def _test_ifile_overloaded(*args):
1083  r"""
1084  _test_ifile_overloaded(TextInput a, int i) -> std::string
1085  _test_ifile_overloaded(TextInput a, std::string st) -> std::string
1086  """
1087  return _IMP_kernel._test_ifile_overloaded(*args)
1088 
1089 def _test_ofile_overloaded(*args):
1090  r"""
1091  _test_ofile_overloaded(TextOutput a, int i) -> std::string
1092  _test_ofile_overloaded(TextOutput a, std::string st) -> std::string
1093  """
1094  return _IMP_kernel._test_ofile_overloaded(*args)
1095 class _TestValue(object):
1096  r"""Proxy of C++ IMP::internal::_TestValue class."""
1097 
1098  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1099 
1100  def __init__(self, i):
1101  r"""__init__(_TestValue self, int i) -> _TestValue"""
1102  _IMP_kernel._TestValue_swiginit(self, _IMP_kernel.new__TestValue(i))
1103 
1104  def show(self, *args):
1105  r"""show(_TestValue self, _ostream out=std::cout)"""
1106  return _IMP_kernel._TestValue_show(self, *args)
1107 
1108  def __cmp__(self, o):
1109  r"""__cmp__(_TestValue self, _TestValue o) -> int"""
1110  return _IMP_kernel._TestValue___cmp__(self, o)
1111 
1112  def __eq__(self, o):
1113  r"""__eq__(_TestValue self, _TestValue o) -> bool"""
1114  return _IMP_kernel._TestValue___eq__(self, o)
1115 
1116  def __ne__(self, o):
1117  r"""__ne__(_TestValue self, _TestValue o) -> bool"""
1118  return _IMP_kernel._TestValue___ne__(self, o)
1119 
1120  def __lt__(self, o):
1121  r"""__lt__(_TestValue self, _TestValue o) -> bool"""
1122  return _IMP_kernel._TestValue___lt__(self, o)
1123 
1124  def __gt__(self, o):
1125  r"""__gt__(_TestValue self, _TestValue o) -> bool"""
1126  return _IMP_kernel._TestValue___gt__(self, o)
1127 
1128  def __ge__(self, o):
1129  r"""__ge__(_TestValue self, _TestValue o) -> bool"""
1130  return _IMP_kernel._TestValue___ge__(self, o)
1131 
1132  def __le__(self, o):
1133  r"""__le__(_TestValue self, _TestValue o) -> bool"""
1134  return _IMP_kernel._TestValue___le__(self, o)
1135 
1136  def get(self):
1137  r"""get(_TestValue self) -> int"""
1138  return _IMP_kernel._TestValue_get(self)
1139 
1140  def get_float(self):
1141  r"""get_float(_TestValue self) -> float const &"""
1142  return _IMP_kernel._TestValue_get_float(self)
1143 
1144  def get_double(self):
1145  r"""get_double(_TestValue self) -> double const &"""
1146  return _IMP_kernel._TestValue_get_double(self)
1147 
1148  def get_Float(self):
1149  r"""get_Float(_TestValue self) -> IMP::Float const &"""
1150  return _IMP_kernel._TestValue_get_Float(self)
1151 
1152  def get_int(self):
1153  r"""get_int(_TestValue self) -> int const &"""
1154  return _IMP_kernel._TestValue_get_int(self)
1155 
1156  def get_Int(self):
1157  r"""get_Int(_TestValue self) -> IMP::Int const &"""
1158  return _IMP_kernel._TestValue_get_Int(self)
1159 
1160  def get_string(self):
1161  r"""get_string(_TestValue self) -> std::string const &"""
1162  return _IMP_kernel._TestValue_get_string(self)
1163 
1164  def get_String(self):
1165  r"""get_String(_TestValue self) -> IMP::String const &"""
1166  return _IMP_kernel._TestValue_get_String(self)
1167 
1168  def __str__(self):
1169  r"""__str__(_TestValue self) -> std::string"""
1170  return _IMP_kernel._TestValue___str__(self)
1171 
1172  def __repr__(self):
1173  r"""__repr__(_TestValue self) -> std::string"""
1174  return _IMP_kernel._TestValue___repr__(self)
1175  __swig_destroy__ = _IMP_kernel.delete__TestValue
1176 
1177 # Register _TestValue in _IMP_kernel:
1178 _IMP_kernel._TestValue_swigregister(_TestValue)
1179 
1180 def _pass_plain_pair(p):
1181  r"""_pass_plain_pair(IMP::FloatPair p) -> IMP::FloatPair"""
1182  return _IMP_kernel._pass_plain_pair(p)
1183 
1184 def _pass_overloaded_strings(*args):
1185  r"""
1186  _pass_overloaded_strings(IMP::Strings const & a, int arg2) -> IMP::Strings
1187  _pass_overloaded_strings(IMP::Strings const & a) -> IMP::Strings
1188  """
1189  return _IMP_kernel._pass_overloaded_strings(*args)
1190 
1191 def _pass_pair(p):
1192  r"""_pass_pair(IMP::DerivativePair const & p) -> IMP::DerivativePair"""
1193  return _IMP_kernel._pass_pair(p)
1194 
1195 def _pass_floats(input):
1196  r"""_pass_floats(IMP::Floats const & input) -> IMP::Floats"""
1197  return _IMP_kernel._pass_floats(input)
1198 
1199 def _pass_ints(input):
1200  r"""_pass_ints(IMP::Ints input) -> IMP::Ints"""
1201  return _IMP_kernel._pass_ints(input)
1202 
1203 def _pass_ints_list(input):
1204  r"""_pass_ints_list(IMP::IntsList const & input) -> IMP::IntsList"""
1205  return _IMP_kernel._pass_ints_list(input)
1206 
1207 def _pass_ints_lists(input):
1208  r"""_pass_ints_lists(IMP::IntsLists const & input) -> IMP::IntsLists"""
1209  return _IMP_kernel._pass_ints_lists(input)
1210 
1211 def _pass_strings(input):
1212  r"""_pass_strings(IMP::Strings const & input) -> IMP::Strings const &"""
1213  return _IMP_kernel._pass_strings(input)
1214 class _TestObject(Object):
1215  r"""Proxy of C++ IMP::internal::_TestObject class."""
1216 
1217  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1218 
1219  def __init__(self):
1220  r"""__init__(_TestObject self) -> _TestObject"""
1221  _IMP_kernel._TestObject_swiginit(self, _IMP_kernel.new__TestObject())
1222 
1223  def get_version_info(self):
1224  r"""get_version_info(_TestObject self) -> VersionInfo"""
1225  return _IMP_kernel._TestObject_get_version_info(self)
1226  __swig_destroy__ = _IMP_kernel.delete__TestObject
1227 
1228  def __str__(self):
1229  r"""__str__(_TestObject self) -> std::string"""
1230  return _IMP_kernel._TestObject___str__(self)
1231 
1232  def __repr__(self):
1233  r"""__repr__(_TestObject self) -> std::string"""
1234  return _IMP_kernel._TestObject___repr__(self)
1235 
1236  @staticmethod
1237  def get_from(o):
1238  return _object_cast_to__TestObject(o)
1239 
1240 
1241 # Register _TestObject in _IMP_kernel:
1242 _IMP_kernel._TestObject_swigregister(_TestObject)
1243 
1244 def get_live_object_names():
1245  r"""get_live_object_names() -> IMP::Strings"""
1246  return _IMP_kernel.get_live_object_names()
1247 
1248 def get_live_objects():
1249  r"""get_live_objects() -> IMP::Objects"""
1250  return _IMP_kernel.get_live_objects()
1251 
1252 def set_show_leaked_objects(tf):
1253  r"""set_show_leaked_objects(bool tf)"""
1254  return _IMP_kernel.set_show_leaked_objects(tf)
1255 
1256 def set_deprecation_warnings(tf):
1257  r"""set_deprecation_warnings(bool tf)"""
1258  return _IMP_kernel.set_deprecation_warnings(tf)
1259 
1261  r"""set_deprecation_exceptions(bool tf)"""
1262  return _IMP_kernel.set_deprecation_exceptions(tf)
1263 
1265  r"""get_deprecation_exceptions() -> bool"""
1266  return _IMP_kernel.get_deprecation_exceptions()
1267 
1268 def handle_use_deprecated(message):
1269  r"""handle_use_deprecated(std::string message)"""
1270  return _IMP_kernel.handle_use_deprecated(message)
1271 
1272 def get_number_of_threads():
1273  r"""get_number_of_threads() -> unsigned int"""
1274  return _IMP_kernel.get_number_of_threads()
1275 
1276 def set_number_of_threads(n):
1277  r"""set_number_of_threads(unsigned int n)"""
1278  return _IMP_kernel.set_number_of_threads(n)
1279 class SetNumberOfThreads(_RAII):
1280  r"""Proxy of C++ IMP::SetNumberOfThreads class."""
1281 
1282  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1283 
1284  def __init__(self, *args):
1285  r"""
1286  __init__(SetNumberOfThreads self) -> SetNumberOfThreads
1287  __init__(SetNumberOfThreads self, unsigned int n) -> SetNumberOfThreads
1288  """
1289  _IMP_kernel.SetNumberOfThreads_swiginit(self, _IMP_kernel.new_SetNumberOfThreads(*args))
1290 
1291  def set(self, n):
1292  r"""set(SetNumberOfThreads self, unsigned int n)"""
1293  return _IMP_kernel.SetNumberOfThreads_set(self, n)
1294 
1295  def reset(self):
1296  r"""reset(SetNumberOfThreads self)"""
1297  return _IMP_kernel.SetNumberOfThreads_reset(self)
1298  __swig_destroy__ = _IMP_kernel.delete_SetNumberOfThreads
1299 
1300  def show(self, *args):
1301  r"""show(SetNumberOfThreads self, _ostream out=std::cout)"""
1302  return _IMP_kernel.SetNumberOfThreads_show(self, *args)
1303 
1304  def __enter__(self):
1305  return self
1306  def __exit__(self, exc_type, exc_val, exc_tb):
1307  self.reset()
1308  return False
1309 
1310 
1311  def __str__(self):
1312  r"""__str__(SetNumberOfThreads self) -> std::string"""
1313  return _IMP_kernel.SetNumberOfThreads___str__(self)
1314 
1315  def __repr__(self):
1316  r"""__repr__(SetNumberOfThreads self) -> std::string"""
1317  return _IMP_kernel.SetNumberOfThreads___repr__(self)
1318 
1319 # Register SetNumberOfThreads in _IMP_kernel:
1320 _IMP_kernel.SetNumberOfThreads_swigregister(SetNumberOfThreads)
1321 
1322 import os
1323 i_m_p="IMP_MODULE_PATH"
1324 if i_m_p in os.environ.keys():
1325  __path__.insert(0, os.environ[i_m_p])
1326 
1327 def _forward_add_attribute(self, name, value, opt=None):
1328  if opt is not None:
1329  self.get_particle().add_attribute(name, value, opt)
1330  else:
1331  self.get_particle().add_attribute(name, value)
1332 def _forward_get_value(self, name):
1333  self.get_particle().get_value(name)
1334 def _forward_set_value(self, name, value):
1335  self.get_particle().set_value(name, value)
1336 
1337 
1338 build="release"
1339 
1340 
1341 _object_types.append("Constraint")
1342 
1343 
1344 def _object_cast_to_Constraint(o):
1345  r"""_object_cast_to_Constraint(Object o) -> Constraint"""
1346  return _IMP_kernel._object_cast_to_Constraint(o)
1347 
1348 _object_types.append("Undecorator")
1349 
1350 
1351 def _object_cast_to_Undecorator(o):
1352  r"""_object_cast_to_Undecorator(Object o) -> Undecorator"""
1353  return _IMP_kernel._object_cast_to_Undecorator(o)
1354 
1355 _object_types.append("Container")
1356 
1357 
1358 def _object_cast_to_Container(o):
1359  r"""_object_cast_to_Container(Object o) -> Container"""
1360  return _IMP_kernel._object_cast_to_Container(o)
1361 
1362 _object_types.append("Optimizer")
1363 
1364 
1365 def _object_cast_to_Optimizer(o):
1366  r"""_object_cast_to_Optimizer(Object o) -> Optimizer"""
1367  return _IMP_kernel._object_cast_to_Optimizer(o)
1368 
1369 _object_types.append("AttributeOptimizer")
1370 
1371 
1372 def _object_cast_to_AttributeOptimizer(o):
1373  r"""_object_cast_to_AttributeOptimizer(Object o) -> AttributeOptimizer"""
1374  return _IMP_kernel._object_cast_to_AttributeOptimizer(o)
1375 
1376 _object_types.append("OptimizerState")
1377 
1378 
1379 def _object_cast_to_OptimizerState(o):
1380  r"""_object_cast_to_OptimizerState(Object o) -> OptimizerState"""
1381  return _IMP_kernel._object_cast_to_OptimizerState(o)
1382 
1383 _object_types.append("PairContainer")
1384 
1385 
1386 def _object_cast_to_PairContainer(o):
1387  r"""_object_cast_to_PairContainer(Object o) -> PairContainer"""
1388  return _IMP_kernel._object_cast_to_PairContainer(o)
1389 
1390 _object_types.append("PairModifier")
1391 
1392 
1393 def _object_cast_to_PairModifier(o):
1394  r"""_object_cast_to_PairModifier(Object o) -> PairModifier"""
1395  return _IMP_kernel._object_cast_to_PairModifier(o)
1396 
1397 _object_types.append("PairScore")
1398 
1399 
1400 def _object_cast_to_PairScore(o):
1401  r"""_object_cast_to_PairScore(Object o) -> PairScore"""
1402  return _IMP_kernel._object_cast_to_PairScore(o)
1403 
1404 _object_types.append("QuadContainer")
1405 
1406 
1407 def _object_cast_to_QuadContainer(o):
1408  r"""_object_cast_to_QuadContainer(Object o) -> QuadContainer"""
1409  return _IMP_kernel._object_cast_to_QuadContainer(o)
1410 
1411 _object_types.append("QuadModifier")
1412 
1413 
1414 def _object_cast_to_QuadModifier(o):
1415  r"""_object_cast_to_QuadModifier(Object o) -> QuadModifier"""
1416  return _IMP_kernel._object_cast_to_QuadModifier(o)
1417 
1418 _object_types.append("QuadScore")
1419 
1420 
1421 def _object_cast_to_QuadScore(o):
1422  r"""_object_cast_to_QuadScore(Object o) -> QuadScore"""
1423  return _IMP_kernel._object_cast_to_QuadScore(o)
1424 
1425 _object_types.append("Refiner")
1426 
1427 
1428 def _object_cast_to_Refiner(o):
1429  r"""_object_cast_to_Refiner(Object o) -> Refiner"""
1430  return _IMP_kernel._object_cast_to_Refiner(o)
1431 
1432 _object_types.append("Restraint")
1433 
1434 
1435 def _object_cast_to_Restraint(o):
1436  r"""_object_cast_to_Restraint(Object o) -> Restraint"""
1437  return _IMP_kernel._object_cast_to_Restraint(o)
1438 
1439 _object_types.append("Sampler")
1440 
1441 
1442 def _object_cast_to_Sampler(o):
1443  r"""_object_cast_to_Sampler(Object o) -> Sampler"""
1444  return _IMP_kernel._object_cast_to_Sampler(o)
1445 
1446 _object_types.append("ScoreState")
1447 
1448 
1449 def _object_cast_to_ScoreState(o):
1450  r"""_object_cast_to_ScoreState(Object o) -> ScoreState"""
1451  return _IMP_kernel._object_cast_to_ScoreState(o)
1452 
1453 _object_types.append("SingletonContainer")
1454 
1455 
1456 def _object_cast_to_SingletonContainer(o):
1457  r"""_object_cast_to_SingletonContainer(Object o) -> SingletonContainer"""
1458  return _IMP_kernel._object_cast_to_SingletonContainer(o)
1459 
1460 _object_types.append("SingletonModifier")
1461 
1462 
1463 def _object_cast_to_SingletonModifier(o):
1464  r"""_object_cast_to_SingletonModifier(Object o) -> SingletonModifier"""
1465  return _IMP_kernel._object_cast_to_SingletonModifier(o)
1466 
1467 _object_types.append("SingletonScore")
1468 
1469 
1470 def _object_cast_to_SingletonScore(o):
1471  r"""_object_cast_to_SingletonScore(Object o) -> SingletonScore"""
1472  return _IMP_kernel._object_cast_to_SingletonScore(o)
1473 
1474 _object_types.append("TripletContainer")
1475 
1476 
1477 def _object_cast_to_TripletContainer(o):
1478  r"""_object_cast_to_TripletContainer(Object o) -> TripletContainer"""
1479  return _IMP_kernel._object_cast_to_TripletContainer(o)
1480 
1481 _object_types.append("TripletModifier")
1482 
1483 
1484 def _object_cast_to_TripletModifier(o):
1485  r"""_object_cast_to_TripletModifier(Object o) -> TripletModifier"""
1486  return _IMP_kernel._object_cast_to_TripletModifier(o)
1487 
1488 _object_types.append("TripletScore")
1489 
1490 
1491 def _object_cast_to_TripletScore(o):
1492  r"""_object_cast_to_TripletScore(Object o) -> TripletScore"""
1493  return _IMP_kernel._object_cast_to_TripletScore(o)
1494 
1495 _object_types.append("UnaryFunction")
1496 
1497 
1498 def _object_cast_to_UnaryFunction(o):
1499  r"""_object_cast_to_UnaryFunction(Object o) -> UnaryFunction"""
1500  return _IMP_kernel._object_cast_to_UnaryFunction(o)
1501 
1502 _object_types.append("RestraintInfo")
1503 
1504 
1505 def _object_cast_to_RestraintInfo(o):
1506  r"""_object_cast_to_RestraintInfo(Object o) -> RestraintInfo"""
1507  return _IMP_kernel._object_cast_to_RestraintInfo(o)
1508 
1509 _object_types.append("ConfigurationSet")
1510 
1511 
1512 def _object_cast_to_ConfigurationSet(o):
1513  r"""_object_cast_to_ConfigurationSet(Object o) -> ConfigurationSet"""
1514  return _IMP_kernel._object_cast_to_ConfigurationSet(o)
1515 
1516 _object_types.append("Configuration")
1517 
1518 
1519 def _object_cast_to_Configuration(o):
1520  r"""_object_cast_to_Configuration(Object o) -> Configuration"""
1521  return _IMP_kernel._object_cast_to_Configuration(o)
1522 
1523 _object_types.append("Model")
1524 
1525 
1526 def _object_cast_to_Model(o):
1527  r"""_object_cast_to_Model(Object o) -> Model"""
1528  return _IMP_kernel._object_cast_to_Model(o)
1529 
1530 _object_types.append("Particle")
1531 
1532 
1533 def _object_cast_to_Particle(o):
1534  r"""_object_cast_to_Particle(Object o) -> Particle"""
1535  return _IMP_kernel._object_cast_to_Particle(o)
1536 
1537 _object_types.append("RestraintSet")
1538 
1539 
1540 def _object_cast_to_RestraintSet(o):
1541  r"""_object_cast_to_RestraintSet(Object o) -> RestraintSet"""
1542  return _IMP_kernel._object_cast_to_RestraintSet(o)
1543 
1544 ParticlePairsTemp=list
1545 _plural_types.append("ParticlePairsTemp")
1546 _value_types.append("ParticlePair")
1547 
1548 
1549 ParticleTripletsTemp=list
1550 _plural_types.append("ParticleTripletsTemp")
1551 _value_types.append("ParticleTriplet")
1552 
1553 
1554 ParticleQuadsTemp=list
1555 _plural_types.append("ParticleQuadsTemp")
1556 _value_types.append("ParticleQuad")
1557 
1558 
1559 ParticleIndexPairs=list
1560 _plural_types.append("ParticleIndexPairs")
1561 _value_types.append("ParticleIndexPair")
1562 
1563 
1564 ParticleIndexTriplets=list
1565 _plural_types.append("ParticleIndexTriplets")
1566 _value_types.append("ParticleIndexTriplet")
1567 
1568 
1569 ParticleIndexQuads=list
1570 _plural_types.append("ParticleIndexQuads")
1571 _value_types.append("ParticleIndexQuad")
1572 
1573 
1574 _object_types.append("SingletonPredicate")
1575 
1576 
1577 def _object_cast_to_SingletonPredicate(o):
1578  r"""_object_cast_to_SingletonPredicate(Object o) -> SingletonPredicate"""
1579  return _IMP_kernel._object_cast_to_SingletonPredicate(o)
1580 
1581 _object_types.append("PairPredicate")
1582 
1583 
1584 def _object_cast_to_PairPredicate(o):
1585  r"""_object_cast_to_PairPredicate(Object o) -> PairPredicate"""
1586  return _IMP_kernel._object_cast_to_PairPredicate(o)
1587 
1588 _object_types.append("TripletPredicate")
1589 
1590 
1591 def _object_cast_to_TripletPredicate(o):
1592  r"""_object_cast_to_TripletPredicate(Object o) -> TripletPredicate"""
1593  return _IMP_kernel._object_cast_to_TripletPredicate(o)
1594 
1595 _object_types.append("QuadPredicate")
1596 
1597 
1598 def _object_cast_to_QuadPredicate(o):
1599  r"""_object_cast_to_QuadPredicate(Object o) -> QuadPredicate"""
1600  return _IMP_kernel._object_cast_to_QuadPredicate(o)
1601 
1602 _object_types.append("SaveToConfigurationSetOptimizerState")
1603 
1604 
1605 def _object_cast_to_SaveToConfigurationSetOptimizerState(o):
1606  r"""_object_cast_to_SaveToConfigurationSetOptimizerState(Object o) -> SaveToConfigurationSetOptimizerState"""
1607  return _IMP_kernel._object_cast_to_SaveToConfigurationSetOptimizerState(o)
1608 
1609 EvaluationStates=list
1610 _plural_types.append("EvaluationStates")
1611 _value_types.append("EvaluationState")
1612 
1613 
1614 ScoreAccumulators=list
1615 _plural_types.append("ScoreAccumulators")
1616 _value_types.append("ScoreAccumulator")
1617 
1618 
1619 ParticleIndexes=list
1620 _plural_types.append("ParticleIndexes")
1621 _value_types.append("ParticleIndex")
1622 
1623 
1624 FloatIndexes=list
1625 _plural_types.append("FloatIndexes")
1626 _value_types.append("FloatIndex")
1627 
1628 
1629 FloatKeys=list
1630 _plural_types.append("FloatKeys")
1631 _value_types.append("FloatKey")
1632 
1633 
1634 FloatsKeys=list
1635 _plural_types.append("FloatsKeys")
1636 _value_types.append("FloatsKey")
1637 
1638 
1639 IntKeys=list
1640 _plural_types.append("IntKeys")
1641 _value_types.append("IntKey")
1642 
1643 
1644 IntsKeys=list
1645 _plural_types.append("IntsKeys")
1646 _value_types.append("IntsKey")
1647 
1648 
1649 StringKeys=list
1650 _plural_types.append("StringKeys")
1651 _value_types.append("StringKey")
1652 
1653 
1654 ParticleIndexKeys=list
1655 _plural_types.append("ParticleIndexKeys")
1656 _value_types.append("ParticleIndexKey")
1657 
1658 
1659 ParticleIndexesKeys=list
1660 _plural_types.append("ParticleIndexesKeys")
1661 _value_types.append("ParticleIndexesKey")
1662 
1663 
1664 ObjectKeys=list
1665 _plural_types.append("ObjectKeys")
1666 _value_types.append("ObjectKey")
1667 
1668 
1669 ModelKeys=list
1670 _plural_types.append("ModelKeys")
1671 _value_types.append("ModelKey")
1672 
1673 
1674 TriggerKeys=list
1675 _plural_types.append("TriggerKeys")
1676 _value_types.append("TriggerKey")
1677 
1678 
1679 SparseFloatKeys=list
1680 _plural_types.append("SparseFloatKeys")
1681 _value_types.append("SparseFloatKey")
1682 
1683 
1684 SparseIntKeys=list
1685 _plural_types.append("SparseIntKeys")
1686 _value_types.append("SparseIntKey")
1687 
1688 
1689 SparseStringKeys=list
1690 _plural_types.append("SparseStringKeys")
1691 _value_types.append("SparseStringKey")
1692 
1693 
1694 SparseParticleIndexKeys=list
1695 _plural_types.append("SparseParticleIndexKeys")
1696 _value_types.append("SparseParticleIndexKey")
1697 
1698 
1699 _raii_types.append("ScopedSetFloatAttribute")
1700 
1701 
1702 _object_types.append("ScoringFunction")
1703 
1704 
1705 def _object_cast_to_ScoringFunction(o):
1706  r"""_object_cast_to_ScoringFunction(Object o) -> ScoringFunction"""
1707  return _IMP_kernel._object_cast_to_ScoringFunction(o)
1708 
1709 _object_types.append("ModelObject")
1710 
1711 
1712 def _object_cast_to_ModelObject(o):
1713  r"""_object_cast_to_ModelObject(Object o) -> ModelObject"""
1714  return _IMP_kernel._object_cast_to_ModelObject(o)
1715 
1716 def _TrivialDecorators(l=[]):
1717  return [_TrivialDecorator(x) for x in l]
1718 _plural_types.append("_TrivialDecorators")
1719 
1720 
1721 _value_types.append("_TrivialDecorator")
1722 
1723 
1724 def _TrivialDerivedDecorators(l=[]):
1725  return [_TrivialDerivedDecorator(x) for x in l]
1726 _plural_types.append("_TrivialDerivedDecorators")
1727 
1728 
1729 _value_types.append("_TrivialDerivedDecorator")
1730 
1731 
1732 def _TrivialTraitsDecorators(l=[]):
1733  return [_TrivialTraitsDecorator(x) for x in l]
1734 _plural_types.append("_TrivialTraitsDecorators")
1735 
1736 
1737 _value_types.append("_TrivialTraitsDecorator")
1738 
1739 
1740 _object_types.append("_ConstRestraint")
1741 
1742 
1743 def _object_cast_to__ConstRestraint(o):
1744  r"""_object_cast_to__ConstRestraint(Object o) -> _ConstRestraint"""
1745  return _IMP_kernel._object_cast_to__ConstRestraint(o)
1746 
1747 _object_types.append("_ConstOptimizer")
1748 
1749 
1750 def _object_cast_to__ConstOptimizer(o):
1751  r"""_object_cast_to__ConstOptimizer(Object o) -> _ConstOptimizer"""
1752  return _IMP_kernel._object_cast_to__ConstOptimizer(o)
1753 
1754 _object_types.append("_ConstSingletonScore")
1755 
1756 
1757 def _object_cast_to__ConstSingletonScore(o):
1758  r"""_object_cast_to__ConstSingletonScore(Object o) -> _ConstSingletonScore"""
1759  return _IMP_kernel._object_cast_to__ConstSingletonScore(o)
1760 
1761 _object_types.append("_ConstPairScore")
1762 
1763 
1764 def _object_cast_to__ConstPairScore(o):
1765  r"""_object_cast_to__ConstPairScore(Object o) -> _ConstPairScore"""
1766  return _IMP_kernel._object_cast_to__ConstPairScore(o)
1767 class DependencyGraph(Object):
1768  r"""Proxy of C++ IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex > class."""
1769 
1770  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1771  __repr__ = _swig_repr
1772 
1773  def __init__(self):
1774  r"""__init__(DependencyGraph self) -> DependencyGraph"""
1775  _IMP_kernel.DependencyGraph_swiginit(self, _IMP_kernel.new_DependencyGraph())
1776 
1777  def get_graph(self):
1778  r"""get_graph(DependencyGraph self) -> IMP::DependencyGraph const &"""
1779  return _IMP_kernel.DependencyGraph_get_graph(self)
1780 
1781  def get_vertices(self):
1782  r"""get_vertices(DependencyGraph self) -> IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptors"""
1783  return _IMP_kernel.DependencyGraph_get_vertices(self)
1784 
1785  def get_vertex_name(self, i):
1786  r"""get_vertex_name(DependencyGraph self, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor i) -> ModelObject"""
1787  return _IMP_kernel.DependencyGraph_get_vertex_name(self, i)
1788 
1789  def get_in_neighbors(self, v):
1790  r"""get_in_neighbors(DependencyGraph self, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor v) -> IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptors"""
1791  return _IMP_kernel.DependencyGraph_get_in_neighbors(self, v)
1792 
1793  def get_out_neighbors(self, v):
1794  r"""get_out_neighbors(DependencyGraph self, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor v) -> IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptors"""
1795  return _IMP_kernel.DependencyGraph_get_out_neighbors(self, v)
1796 
1797  def show_graphviz(self, *args):
1798  r"""show_graphviz(DependencyGraph self, _ostream out=std::cout)"""
1799  return _IMP_kernel.DependencyGraph_show_graphviz(self, *args)
1800 
1801  def get_graphviz_string(self):
1802  r"""get_graphviz_string(DependencyGraph self) -> std::string"""
1803  return _IMP_kernel.DependencyGraph_get_graphviz_string(self)
1804 
1805  def add_edge(self, v0, v1):
1806  r"""add_edge(DependencyGraph self, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor v0, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor v1)"""
1807  return _IMP_kernel.DependencyGraph_add_edge(self, v0, v1)
1808 
1809  def add_vertex(self, l):
1810  r"""add_vertex(DependencyGraph self, ModelObject l) -> IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor"""
1811  return _IMP_kernel.DependencyGraph_add_vertex(self, l)
1812 
1813  def remove_vertex(self, l):
1814  r"""remove_vertex(DependencyGraph self, IMP::internal::BoostDigraph< IMP::DependencyGraph,IMP::ModelObject *,IMP::ShowDependencyGraphVertex >::VertexDescriptor l)"""
1815  return _IMP_kernel.DependencyGraph_remove_vertex(self, l)
1816  __swig_destroy__ = _IMP_kernel.delete_DependencyGraph
1817 
1818 # Register DependencyGraph in _IMP_kernel:
1819 _IMP_kernel.DependencyGraph_swigregister(DependencyGraph)
1820 
1821 _value_types.append("DependencyGraph")
1822 
1823 class FloatKey(_Value):
1824  r"""Proxy of C++ IMP::Key< 0 > class."""
1825 
1826  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1827 
1828  def __init__(self, *args):
1829  r"""
1830  __init__(FloatKey self) -> FloatKey
1831  __init__(FloatKey self, std::string const & c, bool is_implicit_add_permitted=True) -> FloatKey
1832  __init__(FloatKey self, unsigned int i) -> FloatKey
1833  """
1834  _IMP_kernel.FloatKey_swiginit(self, _IMP_kernel.new_FloatKey(*args))
1835 
1836  @staticmethod
1837  def add_key(sc):
1838  r"""add_key(std::string sc) -> unsigned int"""
1839  return _IMP_kernel.FloatKey_add_key(sc)
1840 
1841  @staticmethod
1842  def get_key_exists(sc):
1843  r"""get_key_exists(std::string sc) -> bool"""
1844  return _IMP_kernel.FloatKey_get_key_exists(sc)
1845 
1846  def get_string(self):
1847  r"""get_string(FloatKey self) -> std::string const"""
1848  return _IMP_kernel.FloatKey_get_string(self)
1849 
1850  def __cmp__(self, o):
1851  r"""__cmp__(FloatKey self, FloatKey o) -> int"""
1852  return _IMP_kernel.FloatKey___cmp__(self, o)
1853 
1854  def __eq__(self, o):
1855  r"""__eq__(FloatKey self, FloatKey o) -> bool"""
1856  return _IMP_kernel.FloatKey___eq__(self, o)
1857 
1858  def __ne__(self, o):
1859  r"""__ne__(FloatKey self, FloatKey o) -> bool"""
1860  return _IMP_kernel.FloatKey___ne__(self, o)
1861 
1862  def __lt__(self, o):
1863  r"""__lt__(FloatKey self, FloatKey o) -> bool"""
1864  return _IMP_kernel.FloatKey___lt__(self, o)
1865 
1866  def __gt__(self, o):
1867  r"""__gt__(FloatKey self, FloatKey o) -> bool"""
1868  return _IMP_kernel.FloatKey___gt__(self, o)
1869 
1870  def __ge__(self, o):
1871  r"""__ge__(FloatKey self, FloatKey o) -> bool"""
1872  return _IMP_kernel.FloatKey___ge__(self, o)
1873 
1874  def __le__(self, o):
1875  r"""__le__(FloatKey self, FloatKey o) -> bool"""
1876  return _IMP_kernel.FloatKey___le__(self, o)
1877 
1878  def __hash__(self):
1879  r"""__hash__(FloatKey self) -> std::size_t"""
1880  return _IMP_kernel.FloatKey___hash__(self)
1881 
1882  def show(self, *args):
1883  r"""show(FloatKey self, _ostream out=std::cout)"""
1884  return _IMP_kernel.FloatKey_show(self, *args)
1885 
1886  @staticmethod
1887  def add_alias(old_key, new_name):
1888  r"""add_alias(FloatKey old_key, std::string new_name) -> FloatKey"""
1889  return _IMP_kernel.FloatKey_add_alias(old_key, new_name)
1890 
1891  @staticmethod
1892  def get_number_of_keys():
1893  r"""get_number_of_keys() -> unsigned int"""
1894  return _IMP_kernel.FloatKey_get_number_of_keys()
1895 
1896  def get_index(self):
1897  r"""get_index(FloatKey self) -> unsigned int"""
1898  return _IMP_kernel.FloatKey_get_index(self)
1899 
1900  @staticmethod
1901  def show_all(out):
1902  r"""show_all(_ostream out)"""
1903  return _IMP_kernel.FloatKey_show_all(out)
1904 
1905  @staticmethod
1906  def get_all_strings():
1907  r"""get_all_strings() -> IMP::Vector< std::string >"""
1908  return _IMP_kernel.FloatKey_get_all_strings()
1909 
1910  @staticmethod
1911  def get_number_unique():
1912  r"""get_number_unique() -> unsigned int"""
1913  return _IMP_kernel.FloatKey_get_number_unique()
1914 
1915  def __str__(self):
1916  r"""__str__(FloatKey self) -> std::string"""
1917  return _IMP_kernel.FloatKey___str__(self)
1918 
1919  def __repr__(self):
1920  r"""__repr__(FloatKey self) -> std::string"""
1921  return _IMP_kernel.FloatKey___repr__(self)
1922  __swig_destroy__ = _IMP_kernel.delete_FloatKey
1923 
1924 # Register FloatKey in _IMP_kernel:
1925 _IMP_kernel.FloatKey_swigregister(FloatKey)
1926 class IntKey(_Value):
1927  r"""Proxy of C++ IMP::Key< 1 > class."""
1928 
1929  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1930 
1931  def __init__(self, *args):
1932  r"""
1933  __init__(IntKey self) -> IntKey
1934  __init__(IntKey self, std::string const & c, bool is_implicit_add_permitted=True) -> IntKey
1935  __init__(IntKey self, unsigned int i) -> IntKey
1936  """
1937  _IMP_kernel.IntKey_swiginit(self, _IMP_kernel.new_IntKey(*args))
1938 
1939  @staticmethod
1940  def add_key(sc):
1941  r"""add_key(std::string sc) -> unsigned int"""
1942  return _IMP_kernel.IntKey_add_key(sc)
1943 
1944  @staticmethod
1945  def get_key_exists(sc):
1946  r"""get_key_exists(std::string sc) -> bool"""
1947  return _IMP_kernel.IntKey_get_key_exists(sc)
1948 
1949  def get_string(self):
1950  r"""get_string(IntKey self) -> std::string const"""
1951  return _IMP_kernel.IntKey_get_string(self)
1952 
1953  def __cmp__(self, o):
1954  r"""__cmp__(IntKey self, IntKey o) -> int"""
1955  return _IMP_kernel.IntKey___cmp__(self, o)
1956 
1957  def __eq__(self, o):
1958  r"""__eq__(IntKey self, IntKey o) -> bool"""
1959  return _IMP_kernel.IntKey___eq__(self, o)
1960 
1961  def __ne__(self, o):
1962  r"""__ne__(IntKey self, IntKey o) -> bool"""
1963  return _IMP_kernel.IntKey___ne__(self, o)
1964 
1965  def __lt__(self, o):
1966  r"""__lt__(IntKey self, IntKey o) -> bool"""
1967  return _IMP_kernel.IntKey___lt__(self, o)
1968 
1969  def __gt__(self, o):
1970  r"""__gt__(IntKey self, IntKey o) -> bool"""
1971  return _IMP_kernel.IntKey___gt__(self, o)
1972 
1973  def __ge__(self, o):
1974  r"""__ge__(IntKey self, IntKey o) -> bool"""
1975  return _IMP_kernel.IntKey___ge__(self, o)
1976 
1977  def __le__(self, o):
1978  r"""__le__(IntKey self, IntKey o) -> bool"""
1979  return _IMP_kernel.IntKey___le__(self, o)
1980 
1981  def __hash__(self):
1982  r"""__hash__(IntKey self) -> std::size_t"""
1983  return _IMP_kernel.IntKey___hash__(self)
1984 
1985  def show(self, *args):
1986  r"""show(IntKey self, _ostream out=std::cout)"""
1987  return _IMP_kernel.IntKey_show(self, *args)
1988 
1989  @staticmethod
1990  def add_alias(old_key, new_name):
1991  r"""add_alias(IntKey old_key, std::string new_name) -> IntKey"""
1992  return _IMP_kernel.IntKey_add_alias(old_key, new_name)
1993 
1994  @staticmethod
1995  def get_number_of_keys():
1996  r"""get_number_of_keys() -> unsigned int"""
1997  return _IMP_kernel.IntKey_get_number_of_keys()
1998 
1999  def get_index(self):
2000  r"""get_index(IntKey self) -> unsigned int"""
2001  return _IMP_kernel.IntKey_get_index(self)
2002 
2003  @staticmethod
2004  def show_all(out):
2005  r"""show_all(_ostream out)"""
2006  return _IMP_kernel.IntKey_show_all(out)
2007 
2008  @staticmethod
2009  def get_all_strings():
2010  r"""get_all_strings() -> IMP::Vector< std::string >"""
2011  return _IMP_kernel.IntKey_get_all_strings()
2012 
2013  @staticmethod
2014  def get_number_unique():
2015  r"""get_number_unique() -> unsigned int"""
2016  return _IMP_kernel.IntKey_get_number_unique()
2017 
2018  def __str__(self):
2019  r"""__str__(IntKey self) -> std::string"""
2020  return _IMP_kernel.IntKey___str__(self)
2021 
2022  def __repr__(self):
2023  r"""__repr__(IntKey self) -> std::string"""
2024  return _IMP_kernel.IntKey___repr__(self)
2025  __swig_destroy__ = _IMP_kernel.delete_IntKey
2026 
2027 # Register IntKey in _IMP_kernel:
2028 _IMP_kernel.IntKey_swigregister(IntKey)
2029 class StringKey(_Value):
2030  r"""Proxy of C++ IMP::Key< 2 > class."""
2031 
2032  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2033 
2034  def __init__(self, *args):
2035  r"""
2036  __init__(StringKey self) -> StringKey
2037  __init__(StringKey self, std::string const & c, bool is_implicit_add_permitted=True) -> StringKey
2038  __init__(StringKey self, unsigned int i) -> StringKey
2039  """
2040  _IMP_kernel.StringKey_swiginit(self, _IMP_kernel.new_StringKey(*args))
2041 
2042  @staticmethod
2043  def add_key(sc):
2044  r"""add_key(std::string sc) -> unsigned int"""
2045  return _IMP_kernel.StringKey_add_key(sc)
2046 
2047  @staticmethod
2048  def get_key_exists(sc):
2049  r"""get_key_exists(std::string sc) -> bool"""
2050  return _IMP_kernel.StringKey_get_key_exists(sc)
2051 
2052  def get_string(self):
2053  r"""get_string(StringKey self) -> std::string const"""
2054  return _IMP_kernel.StringKey_get_string(self)
2055 
2056  def __cmp__(self, o):
2057  r"""__cmp__(StringKey self, StringKey o) -> int"""
2058  return _IMP_kernel.StringKey___cmp__(self, o)
2059 
2060  def __eq__(self, o):
2061  r"""__eq__(StringKey self, StringKey o) -> bool"""
2062  return _IMP_kernel.StringKey___eq__(self, o)
2063 
2064  def __ne__(self, o):
2065  r"""__ne__(StringKey self, StringKey o) -> bool"""
2066  return _IMP_kernel.StringKey___ne__(self, o)
2067 
2068  def __lt__(self, o):
2069  r"""__lt__(StringKey self, StringKey o) -> bool"""
2070  return _IMP_kernel.StringKey___lt__(self, o)
2071 
2072  def __gt__(self, o):
2073  r"""__gt__(StringKey self, StringKey o) -> bool"""
2074  return _IMP_kernel.StringKey___gt__(self, o)
2075 
2076  def __ge__(self, o):
2077  r"""__ge__(StringKey self, StringKey o) -> bool"""
2078  return _IMP_kernel.StringKey___ge__(self, o)
2079 
2080  def __le__(self, o):
2081  r"""__le__(StringKey self, StringKey o) -> bool"""
2082  return _IMP_kernel.StringKey___le__(self, o)
2083 
2084  def __hash__(self):
2085  r"""__hash__(StringKey self) -> std::size_t"""
2086  return _IMP_kernel.StringKey___hash__(self)
2087 
2088  def show(self, *args):
2089  r"""show(StringKey self, _ostream out=std::cout)"""
2090  return _IMP_kernel.StringKey_show(self, *args)
2091 
2092  @staticmethod
2093  def add_alias(old_key, new_name):
2094  r"""add_alias(StringKey old_key, std::string new_name) -> StringKey"""
2095  return _IMP_kernel.StringKey_add_alias(old_key, new_name)
2096 
2097  @staticmethod
2098  def get_number_of_keys():
2099  r"""get_number_of_keys() -> unsigned int"""
2100  return _IMP_kernel.StringKey_get_number_of_keys()
2101 
2102  def get_index(self):
2103  r"""get_index(StringKey self) -> unsigned int"""
2104  return _IMP_kernel.StringKey_get_index(self)
2105 
2106  @staticmethod
2107  def show_all(out):
2108  r"""show_all(_ostream out)"""
2109  return _IMP_kernel.StringKey_show_all(out)
2110 
2111  @staticmethod
2112  def get_all_strings():
2113  r"""get_all_strings() -> IMP::Vector< std::string >"""
2114  return _IMP_kernel.StringKey_get_all_strings()
2115 
2116  @staticmethod
2117  def get_number_unique():
2118  r"""get_number_unique() -> unsigned int"""
2119  return _IMP_kernel.StringKey_get_number_unique()
2120 
2121  def __str__(self):
2122  r"""__str__(StringKey self) -> std::string"""
2123  return _IMP_kernel.StringKey___str__(self)
2124 
2125  def __repr__(self):
2126  r"""__repr__(StringKey self) -> std::string"""
2127  return _IMP_kernel.StringKey___repr__(self)
2128  __swig_destroy__ = _IMP_kernel.delete_StringKey
2129 
2130 # Register StringKey in _IMP_kernel:
2131 _IMP_kernel.StringKey_swigregister(StringKey)
2132 class ParticleIndexKey(_Value):
2133  r"""Proxy of C++ IMP::Key< 3 > class."""
2134 
2135  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2136 
2137  def __init__(self, *args):
2138  r"""
2139  __init__(ParticleIndexKey self) -> ParticleIndexKey
2140  __init__(ParticleIndexKey self, std::string const & c, bool is_implicit_add_permitted=True) -> ParticleIndexKey
2141  __init__(ParticleIndexKey self, unsigned int i) -> ParticleIndexKey
2142  """
2143  _IMP_kernel.ParticleIndexKey_swiginit(self, _IMP_kernel.new_ParticleIndexKey(*args))
2144 
2145  @staticmethod
2146  def add_key(sc):
2147  r"""add_key(std::string sc) -> unsigned int"""
2148  return _IMP_kernel.ParticleIndexKey_add_key(sc)
2149 
2150  @staticmethod
2151  def get_key_exists(sc):
2152  r"""get_key_exists(std::string sc) -> bool"""
2153  return _IMP_kernel.ParticleIndexKey_get_key_exists(sc)
2154 
2155  def get_string(self):
2156  r"""get_string(ParticleIndexKey self) -> std::string const"""
2157  return _IMP_kernel.ParticleIndexKey_get_string(self)
2158 
2159  def __cmp__(self, o):
2160  r"""__cmp__(ParticleIndexKey self, ParticleIndexKey o) -> int"""
2161  return _IMP_kernel.ParticleIndexKey___cmp__(self, o)
2162 
2163  def __eq__(self, o):
2164  r"""__eq__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2165  return _IMP_kernel.ParticleIndexKey___eq__(self, o)
2166 
2167  def __ne__(self, o):
2168  r"""__ne__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2169  return _IMP_kernel.ParticleIndexKey___ne__(self, o)
2170 
2171  def __lt__(self, o):
2172  r"""__lt__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2173  return _IMP_kernel.ParticleIndexKey___lt__(self, o)
2174 
2175  def __gt__(self, o):
2176  r"""__gt__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2177  return _IMP_kernel.ParticleIndexKey___gt__(self, o)
2178 
2179  def __ge__(self, o):
2180  r"""__ge__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2181  return _IMP_kernel.ParticleIndexKey___ge__(self, o)
2182 
2183  def __le__(self, o):
2184  r"""__le__(ParticleIndexKey self, ParticleIndexKey o) -> bool"""
2185  return _IMP_kernel.ParticleIndexKey___le__(self, o)
2186 
2187  def __hash__(self):
2188  r"""__hash__(ParticleIndexKey self) -> std::size_t"""
2189  return _IMP_kernel.ParticleIndexKey___hash__(self)
2190 
2191  def show(self, *args):
2192  r"""show(ParticleIndexKey self, _ostream out=std::cout)"""
2193  return _IMP_kernel.ParticleIndexKey_show(self, *args)
2194 
2195  @staticmethod
2196  def add_alias(old_key, new_name):
2197  r"""add_alias(ParticleIndexKey old_key, std::string new_name) -> ParticleIndexKey"""
2198  return _IMP_kernel.ParticleIndexKey_add_alias(old_key, new_name)
2199 
2200  @staticmethod
2201  def get_number_of_keys():
2202  r"""get_number_of_keys() -> unsigned int"""
2203  return _IMP_kernel.ParticleIndexKey_get_number_of_keys()
2204 
2205  def get_index(self):
2206  r"""get_index(ParticleIndexKey self) -> unsigned int"""
2207  return _IMP_kernel.ParticleIndexKey_get_index(self)
2208 
2209  @staticmethod
2210  def show_all(out):
2211  r"""show_all(_ostream out)"""
2212  return _IMP_kernel.ParticleIndexKey_show_all(out)
2213 
2214  @staticmethod
2215  def get_all_strings():
2216  r"""get_all_strings() -> IMP::Vector< std::string >"""
2217  return _IMP_kernel.ParticleIndexKey_get_all_strings()
2218 
2219  @staticmethod
2220  def get_number_unique():
2221  r"""get_number_unique() -> unsigned int"""
2222  return _IMP_kernel.ParticleIndexKey_get_number_unique()
2223 
2224  def __str__(self):
2225  r"""__str__(ParticleIndexKey self) -> std::string"""
2226  return _IMP_kernel.ParticleIndexKey___str__(self)
2227 
2228  def __repr__(self):
2229  r"""__repr__(ParticleIndexKey self) -> std::string"""
2230  return _IMP_kernel.ParticleIndexKey___repr__(self)
2231  __swig_destroy__ = _IMP_kernel.delete_ParticleIndexKey
2232 
2233 # Register ParticleIndexKey in _IMP_kernel:
2234 _IMP_kernel.ParticleIndexKey_swigregister(ParticleIndexKey)
2235 class ObjectKey(_Value):
2236  r"""Proxy of C++ IMP::Key< 4 > class."""
2237 
2238  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2239 
2240  def __init__(self, *args):
2241  r"""
2242  __init__(ObjectKey self) -> ObjectKey
2243  __init__(ObjectKey self, std::string const & c, bool is_implicit_add_permitted=True) -> ObjectKey
2244  __init__(ObjectKey self, unsigned int i) -> ObjectKey
2245  """
2246  _IMP_kernel.ObjectKey_swiginit(self, _IMP_kernel.new_ObjectKey(*args))
2247 
2248  @staticmethod
2249  def add_key(sc):
2250  r"""add_key(std::string sc) -> unsigned int"""
2251  return _IMP_kernel.ObjectKey_add_key(sc)
2252 
2253  @staticmethod
2254  def get_key_exists(sc):
2255  r"""get_key_exists(std::string sc) -> bool"""
2256  return _IMP_kernel.ObjectKey_get_key_exists(sc)
2257 
2258  def get_string(self):
2259  r"""get_string(ObjectKey self) -> std::string const"""
2260  return _IMP_kernel.ObjectKey_get_string(self)
2261 
2262  def __cmp__(self, o):
2263  r"""__cmp__(ObjectKey self, ObjectKey o) -> int"""
2264  return _IMP_kernel.ObjectKey___cmp__(self, o)
2265 
2266  def __eq__(self, o):
2267  r"""__eq__(ObjectKey self, ObjectKey o) -> bool"""
2268  return _IMP_kernel.ObjectKey___eq__(self, o)
2269 
2270  def __ne__(self, o):
2271  r"""__ne__(ObjectKey self, ObjectKey o) -> bool"""
2272  return _IMP_kernel.ObjectKey___ne__(self, o)
2273 
2274  def __lt__(self, o):
2275  r"""__lt__(ObjectKey self, ObjectKey o) -> bool"""
2276  return _IMP_kernel.ObjectKey___lt__(self, o)
2277 
2278  def __gt__(self, o):
2279  r"""__gt__(ObjectKey self, ObjectKey o) -> bool"""
2280  return _IMP_kernel.ObjectKey___gt__(self, o)
2281 
2282  def __ge__(self, o):
2283  r"""__ge__(ObjectKey self, ObjectKey o) -> bool"""
2284  return _IMP_kernel.ObjectKey___ge__(self, o)
2285 
2286  def __le__(self, o):
2287  r"""__le__(ObjectKey self, ObjectKey o) -> bool"""
2288  return _IMP_kernel.ObjectKey___le__(self, o)
2289 
2290  def __hash__(self):
2291  r"""__hash__(ObjectKey self) -> std::size_t"""
2292  return _IMP_kernel.ObjectKey___hash__(self)
2293 
2294  def show(self, *args):
2295  r"""show(ObjectKey self, _ostream out=std::cout)"""
2296  return _IMP_kernel.ObjectKey_show(self, *args)
2297 
2298  @staticmethod
2299  def add_alias(old_key, new_name):
2300  r"""add_alias(ObjectKey old_key, std::string new_name) -> ObjectKey"""
2301  return _IMP_kernel.ObjectKey_add_alias(old_key, new_name)
2302 
2303  @staticmethod
2304  def get_number_of_keys():
2305  r"""get_number_of_keys() -> unsigned int"""
2306  return _IMP_kernel.ObjectKey_get_number_of_keys()
2307 
2308  def get_index(self):
2309  r"""get_index(ObjectKey self) -> unsigned int"""
2310  return _IMP_kernel.ObjectKey_get_index(self)
2311 
2312  @staticmethod
2313  def show_all(out):
2314  r"""show_all(_ostream out)"""
2315  return _IMP_kernel.ObjectKey_show_all(out)
2316 
2317  @staticmethod
2318  def get_all_strings():
2319  r"""get_all_strings() -> IMP::Vector< std::string >"""
2320  return _IMP_kernel.ObjectKey_get_all_strings()
2321 
2322  @staticmethod
2323  def get_number_unique():
2324  r"""get_number_unique() -> unsigned int"""
2325  return _IMP_kernel.ObjectKey_get_number_unique()
2326 
2327  def __str__(self):
2328  r"""__str__(ObjectKey self) -> std::string"""
2329  return _IMP_kernel.ObjectKey___str__(self)
2330 
2331  def __repr__(self):
2332  r"""__repr__(ObjectKey self) -> std::string"""
2333  return _IMP_kernel.ObjectKey___repr__(self)
2334  __swig_destroy__ = _IMP_kernel.delete_ObjectKey
2335 
2336 # Register ObjectKey in _IMP_kernel:
2337 _IMP_kernel.ObjectKey_swigregister(ObjectKey)
2338 class IntsKey(_Value):
2339  r"""Proxy of C++ IMP::Key< 5 > class."""
2340 
2341  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2342 
2343  def __init__(self, *args):
2344  r"""
2345  __init__(IntsKey self) -> IntsKey
2346  __init__(IntsKey self, std::string const & c, bool is_implicit_add_permitted=True) -> IntsKey
2347  __init__(IntsKey self, unsigned int i) -> IntsKey
2348  """
2349  _IMP_kernel.IntsKey_swiginit(self, _IMP_kernel.new_IntsKey(*args))
2350 
2351  @staticmethod
2352  def add_key(sc):
2353  r"""add_key(std::string sc) -> unsigned int"""
2354  return _IMP_kernel.IntsKey_add_key(sc)
2355 
2356  @staticmethod
2357  def get_key_exists(sc):
2358  r"""get_key_exists(std::string sc) -> bool"""
2359  return _IMP_kernel.IntsKey_get_key_exists(sc)
2360 
2361  def get_string(self):
2362  r"""get_string(IntsKey self) -> std::string const"""
2363  return _IMP_kernel.IntsKey_get_string(self)
2364 
2365  def __cmp__(self, o):
2366  r"""__cmp__(IntsKey self, IntsKey o) -> int"""
2367  return _IMP_kernel.IntsKey___cmp__(self, o)
2368 
2369  def __eq__(self, o):
2370  r"""__eq__(IntsKey self, IntsKey o) -> bool"""
2371  return _IMP_kernel.IntsKey___eq__(self, o)
2372 
2373  def __ne__(self, o):
2374  r"""__ne__(IntsKey self, IntsKey o) -> bool"""
2375  return _IMP_kernel.IntsKey___ne__(self, o)
2376 
2377  def __lt__(self, o):
2378  r"""__lt__(IntsKey self, IntsKey o) -> bool"""
2379  return _IMP_kernel.IntsKey___lt__(self, o)
2380 
2381  def __gt__(self, o):
2382  r"""__gt__(IntsKey self, IntsKey o) -> bool"""
2383  return _IMP_kernel.IntsKey___gt__(self, o)
2384 
2385  def __ge__(self, o):
2386  r"""__ge__(IntsKey self, IntsKey o) -> bool"""
2387  return _IMP_kernel.IntsKey___ge__(self, o)
2388 
2389  def __le__(self, o):
2390  r"""__le__(IntsKey self, IntsKey o) -> bool"""
2391  return _IMP_kernel.IntsKey___le__(self, o)
2392 
2393  def __hash__(self):
2394  r"""__hash__(IntsKey self) -> std::size_t"""
2395  return _IMP_kernel.IntsKey___hash__(self)
2396 
2397  def show(self, *args):
2398  r"""show(IntsKey self, _ostream out=std::cout)"""
2399  return _IMP_kernel.IntsKey_show(self, *args)
2400 
2401  @staticmethod
2402  def add_alias(old_key, new_name):
2403  r"""add_alias(IntsKey old_key, std::string new_name) -> IntsKey"""
2404  return _IMP_kernel.IntsKey_add_alias(old_key, new_name)
2405 
2406  @staticmethod
2407  def get_number_of_keys():
2408  r"""get_number_of_keys() -> unsigned int"""
2409  return _IMP_kernel.IntsKey_get_number_of_keys()
2410 
2411  def get_index(self):
2412  r"""get_index(IntsKey self) -> unsigned int"""
2413  return _IMP_kernel.IntsKey_get_index(self)
2414 
2415  @staticmethod
2416  def show_all(out):
2417  r"""show_all(_ostream out)"""
2418  return _IMP_kernel.IntsKey_show_all(out)
2419 
2420  @staticmethod
2421  def get_all_strings():
2422  r"""get_all_strings() -> IMP::Vector< std::string >"""
2423  return _IMP_kernel.IntsKey_get_all_strings()
2424 
2425  @staticmethod
2426  def get_number_unique():
2427  r"""get_number_unique() -> unsigned int"""
2428  return _IMP_kernel.IntsKey_get_number_unique()
2429 
2430  def __str__(self):
2431  r"""__str__(IntsKey self) -> std::string"""
2432  return _IMP_kernel.IntsKey___str__(self)
2433 
2434  def __repr__(self):
2435  r"""__repr__(IntsKey self) -> std::string"""
2436  return _IMP_kernel.IntsKey___repr__(self)
2437  __swig_destroy__ = _IMP_kernel.delete_IntsKey
2438 
2439 # Register IntsKey in _IMP_kernel:
2440 _IMP_kernel.IntsKey_swigregister(IntsKey)
2441 class ParticleIndexesKey(_Value):
2442  r"""Proxy of C++ IMP::Key< 6 > class."""
2443 
2444  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2445 
2446  def __init__(self, *args):
2447  r"""
2448  __init__(ParticleIndexesKey self) -> ParticleIndexesKey
2449  __init__(ParticleIndexesKey self, std::string const & c, bool is_implicit_add_permitted=True) -> ParticleIndexesKey
2450  __init__(ParticleIndexesKey self, unsigned int i) -> ParticleIndexesKey
2451  """
2452  _IMP_kernel.ParticleIndexesKey_swiginit(self, _IMP_kernel.new_ParticleIndexesKey(*args))
2453 
2454  @staticmethod
2455  def add_key(sc):
2456  r"""add_key(std::string sc) -> unsigned int"""
2457  return _IMP_kernel.ParticleIndexesKey_add_key(sc)
2458 
2459  @staticmethod
2460  def get_key_exists(sc):
2461  r"""get_key_exists(std::string sc) -> bool"""
2462  return _IMP_kernel.ParticleIndexesKey_get_key_exists(sc)
2463 
2464  def get_string(self):
2465  r"""get_string(ParticleIndexesKey self) -> std::string const"""
2466  return _IMP_kernel.ParticleIndexesKey_get_string(self)
2467 
2468  def __cmp__(self, o):
2469  r"""__cmp__(ParticleIndexesKey self, ParticleIndexesKey o) -> int"""
2470  return _IMP_kernel.ParticleIndexesKey___cmp__(self, o)
2471 
2472  def __eq__(self, o):
2473  r"""__eq__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2474  return _IMP_kernel.ParticleIndexesKey___eq__(self, o)
2475 
2476  def __ne__(self, o):
2477  r"""__ne__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2478  return _IMP_kernel.ParticleIndexesKey___ne__(self, o)
2479 
2480  def __lt__(self, o):
2481  r"""__lt__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2482  return _IMP_kernel.ParticleIndexesKey___lt__(self, o)
2483 
2484  def __gt__(self, o):
2485  r"""__gt__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2486  return _IMP_kernel.ParticleIndexesKey___gt__(self, o)
2487 
2488  def __ge__(self, o):
2489  r"""__ge__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2490  return _IMP_kernel.ParticleIndexesKey___ge__(self, o)
2491 
2492  def __le__(self, o):
2493  r"""__le__(ParticleIndexesKey self, ParticleIndexesKey o) -> bool"""
2494  return _IMP_kernel.ParticleIndexesKey___le__(self, o)
2495 
2496  def __hash__(self):
2497  r"""__hash__(ParticleIndexesKey self) -> std::size_t"""
2498  return _IMP_kernel.ParticleIndexesKey___hash__(self)
2499 
2500  def show(self, *args):
2501  r"""show(ParticleIndexesKey self, _ostream out=std::cout)"""
2502  return _IMP_kernel.ParticleIndexesKey_show(self, *args)
2503 
2504  @staticmethod
2505  def add_alias(old_key, new_name):
2506  r"""add_alias(ParticleIndexesKey old_key, std::string new_name) -> ParticleIndexesKey"""
2507  return _IMP_kernel.ParticleIndexesKey_add_alias(old_key, new_name)
2508 
2509  @staticmethod
2510  def get_number_of_keys():
2511  r"""get_number_of_keys() -> unsigned int"""
2512  return _IMP_kernel.ParticleIndexesKey_get_number_of_keys()
2513 
2514  def get_index(self):
2515  r"""get_index(ParticleIndexesKey self) -> unsigned int"""
2516  return _IMP_kernel.ParticleIndexesKey_get_index(self)
2517 
2518  @staticmethod
2519  def show_all(out):
2520  r"""show_all(_ostream out)"""
2521  return _IMP_kernel.ParticleIndexesKey_show_all(out)
2522 
2523  @staticmethod
2524  def get_all_strings():
2525  r"""get_all_strings() -> IMP::Vector< std::string >"""
2526  return _IMP_kernel.ParticleIndexesKey_get_all_strings()
2527 
2528  @staticmethod
2529  def get_number_unique():
2530  r"""get_number_unique() -> unsigned int"""
2531  return _IMP_kernel.ParticleIndexesKey_get_number_unique()
2532 
2533  def __str__(self):
2534  r"""__str__(ParticleIndexesKey self) -> std::string"""
2535  return _IMP_kernel.ParticleIndexesKey___str__(self)
2536 
2537  def __repr__(self):
2538  r"""__repr__(ParticleIndexesKey self) -> std::string"""
2539  return _IMP_kernel.ParticleIndexesKey___repr__(self)
2540  __swig_destroy__ = _IMP_kernel.delete_ParticleIndexesKey
2541 
2542 # Register ParticleIndexesKey in _IMP_kernel:
2543 _IMP_kernel.ParticleIndexesKey_swigregister(ParticleIndexesKey)
2544 class ModelKey(_Value):
2545  r"""Proxy of C++ IMP::Key< 8 > class."""
2546 
2547  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2548 
2549  def __init__(self, *args):
2550  r"""
2551  __init__(ModelKey self) -> ModelKey
2552  __init__(ModelKey self, std::string const & c, bool is_implicit_add_permitted=True) -> ModelKey
2553  __init__(ModelKey self, unsigned int i) -> ModelKey
2554  """
2555  _IMP_kernel.ModelKey_swiginit(self, _IMP_kernel.new_ModelKey(*args))
2556 
2557  @staticmethod
2558  def add_key(sc):
2559  r"""add_key(std::string sc) -> unsigned int"""
2560  return _IMP_kernel.ModelKey_add_key(sc)
2561 
2562  @staticmethod
2563  def get_key_exists(sc):
2564  r"""get_key_exists(std::string sc) -> bool"""
2565  return _IMP_kernel.ModelKey_get_key_exists(sc)
2566 
2567  def get_string(self):
2568  r"""get_string(ModelKey self) -> std::string const"""
2569  return _IMP_kernel.ModelKey_get_string(self)
2570 
2571  def __cmp__(self, o):
2572  r"""__cmp__(ModelKey self, ModelKey o) -> int"""
2573  return _IMP_kernel.ModelKey___cmp__(self, o)
2574 
2575  def __eq__(self, o):
2576  r"""__eq__(ModelKey self, ModelKey o) -> bool"""
2577  return _IMP_kernel.ModelKey___eq__(self, o)
2578 
2579  def __ne__(self, o):
2580  r"""__ne__(ModelKey self, ModelKey o) -> bool"""
2581  return _IMP_kernel.ModelKey___ne__(self, o)
2582 
2583  def __lt__(self, o):
2584  r"""__lt__(ModelKey self, ModelKey o) -> bool"""
2585  return _IMP_kernel.ModelKey___lt__(self, o)
2586 
2587  def __gt__(self, o):
2588  r"""__gt__(ModelKey self, ModelKey o) -> bool"""
2589  return _IMP_kernel.ModelKey___gt__(self, o)
2590 
2591  def __ge__(self, o):
2592  r"""__ge__(ModelKey self, ModelKey o) -> bool"""
2593  return _IMP_kernel.ModelKey___ge__(self, o)
2594 
2595  def __le__(self, o):
2596  r"""__le__(ModelKey self, ModelKey o) -> bool"""
2597  return _IMP_kernel.ModelKey___le__(self, o)
2598 
2599  def __hash__(self):
2600  r"""__hash__(ModelKey self) -> std::size_t"""
2601  return _IMP_kernel.ModelKey___hash__(self)
2602 
2603  def show(self, *args):
2604  r"""show(ModelKey self, _ostream out=std::cout)"""
2605  return _IMP_kernel.ModelKey_show(self, *args)
2606 
2607  @staticmethod
2608  def add_alias(old_key, new_name):
2609  r"""add_alias(ModelKey old_key, std::string new_name) -> ModelKey"""
2610  return _IMP_kernel.ModelKey_add_alias(old_key, new_name)
2611 
2612  @staticmethod
2613  def get_number_of_keys():
2614  r"""get_number_of_keys() -> unsigned int"""
2615  return _IMP_kernel.ModelKey_get_number_of_keys()
2616 
2617  def get_index(self):
2618  r"""get_index(ModelKey self) -> unsigned int"""
2619  return _IMP_kernel.ModelKey_get_index(self)
2620 
2621  @staticmethod
2622  def show_all(out):
2623  r"""show_all(_ostream out)"""
2624  return _IMP_kernel.ModelKey_show_all(out)
2625 
2626  @staticmethod
2627  def get_all_strings():
2628  r"""get_all_strings() -> IMP::Vector< std::string >"""
2629  return _IMP_kernel.ModelKey_get_all_strings()
2630 
2631  @staticmethod
2632  def get_number_unique():
2633  r"""get_number_unique() -> unsigned int"""
2634  return _IMP_kernel.ModelKey_get_number_unique()
2635 
2636  def __str__(self):
2637  r"""__str__(ModelKey self) -> std::string"""
2638  return _IMP_kernel.ModelKey___str__(self)
2639 
2640  def __repr__(self):
2641  r"""__repr__(ModelKey self) -> std::string"""
2642  return _IMP_kernel.ModelKey___repr__(self)
2643  __swig_destroy__ = _IMP_kernel.delete_ModelKey
2644 
2645 # Register ModelKey in _IMP_kernel:
2646 _IMP_kernel.ModelKey_swigregister(ModelKey)
2647 class TriggerKey(_Value):
2648  r"""Proxy of C++ IMP::Key< 11 > class."""
2649 
2650  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2651 
2652  def __init__(self, *args):
2653  r"""
2654  __init__(TriggerKey self) -> TriggerKey
2655  __init__(TriggerKey self, std::string const & c, bool is_implicit_add_permitted=True) -> TriggerKey
2656  __init__(TriggerKey self, unsigned int i) -> TriggerKey
2657  """
2658  _IMP_kernel.TriggerKey_swiginit(self, _IMP_kernel.new_TriggerKey(*args))
2659 
2660  @staticmethod
2661  def add_key(sc):
2662  r"""add_key(std::string sc) -> unsigned int"""
2663  return _IMP_kernel.TriggerKey_add_key(sc)
2664 
2665  @staticmethod
2666  def get_key_exists(sc):
2667  r"""get_key_exists(std::string sc) -> bool"""
2668  return _IMP_kernel.TriggerKey_get_key_exists(sc)
2669 
2670  def get_string(self):
2671  r"""get_string(TriggerKey self) -> std::string const"""
2672  return _IMP_kernel.TriggerKey_get_string(self)
2673 
2674  def __cmp__(self, o):
2675  r"""__cmp__(TriggerKey self, TriggerKey o) -> int"""
2676  return _IMP_kernel.TriggerKey___cmp__(self, o)
2677 
2678  def __eq__(self, o):
2679  r"""__eq__(TriggerKey self, TriggerKey o) -> bool"""
2680  return _IMP_kernel.TriggerKey___eq__(self, o)
2681 
2682  def __ne__(self, o):
2683  r"""__ne__(TriggerKey self, TriggerKey o) -> bool"""
2684  return _IMP_kernel.TriggerKey___ne__(self, o)
2685 
2686  def __lt__(self, o):
2687  r"""__lt__(TriggerKey self, TriggerKey o) -> bool"""
2688  return _IMP_kernel.TriggerKey___lt__(self, o)
2689 
2690  def __gt__(self, o):
2691  r"""__gt__(TriggerKey self, TriggerKey o) -> bool"""
2692  return _IMP_kernel.TriggerKey___gt__(self, o)
2693 
2694  def __ge__(self, o):
2695  r"""__ge__(TriggerKey self, TriggerKey o) -> bool"""
2696  return _IMP_kernel.TriggerKey___ge__(self, o)
2697 
2698  def __le__(self, o):
2699  r"""__le__(TriggerKey self, TriggerKey o) -> bool"""
2700  return _IMP_kernel.TriggerKey___le__(self, o)
2701 
2702  def __hash__(self):
2703  r"""__hash__(TriggerKey self) -> std::size_t"""
2704  return _IMP_kernel.TriggerKey___hash__(self)
2705 
2706  def show(self, *args):
2707  r"""show(TriggerKey self, _ostream out=std::cout)"""
2708  return _IMP_kernel.TriggerKey_show(self, *args)
2709 
2710  @staticmethod
2711  def add_alias(old_key, new_name):
2712  r"""add_alias(TriggerKey old_key, std::string new_name) -> TriggerKey"""
2713  return _IMP_kernel.TriggerKey_add_alias(old_key, new_name)
2714 
2715  @staticmethod
2716  def get_number_of_keys():
2717  r"""get_number_of_keys() -> unsigned int"""
2718  return _IMP_kernel.TriggerKey_get_number_of_keys()
2719 
2720  def get_index(self):
2721  r"""get_index(TriggerKey self) -> unsigned int"""
2722  return _IMP_kernel.TriggerKey_get_index(self)
2723 
2724  @staticmethod
2725  def show_all(out):
2726  r"""show_all(_ostream out)"""
2727  return _IMP_kernel.TriggerKey_show_all(out)
2728 
2729  @staticmethod
2730  def get_all_strings():
2731  r"""get_all_strings() -> IMP::Vector< std::string >"""
2732  return _IMP_kernel.TriggerKey_get_all_strings()
2733 
2734  @staticmethod
2735  def get_number_unique():
2736  r"""get_number_unique() -> unsigned int"""
2737  return _IMP_kernel.TriggerKey_get_number_unique()
2738 
2739  def __str__(self):
2740  r"""__str__(TriggerKey self) -> std::string"""
2741  return _IMP_kernel.TriggerKey___str__(self)
2742 
2743  def __repr__(self):
2744  r"""__repr__(TriggerKey self) -> std::string"""
2745  return _IMP_kernel.TriggerKey___repr__(self)
2746  __swig_destroy__ = _IMP_kernel.delete_TriggerKey
2747 
2748 # Register TriggerKey in _IMP_kernel:
2749 _IMP_kernel.TriggerKey_swigregister(TriggerKey)
2750 class ParticleIndex(object):
2751  r"""Proxy of C++ IMP::Index< IMP::ParticleIndexTag > class."""
2752 
2753  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2754 
2755  def __init__(self, *args):
2756  r"""
2757  __init__(ParticleIndex self, int i) -> ParticleIndex
2758  __init__(ParticleIndex self) -> ParticleIndex
2759  """
2760  _IMP_kernel.ParticleIndex_swiginit(self, _IMP_kernel.new_ParticleIndex(*args))
2761 
2762  def get_index(self):
2763  r"""get_index(ParticleIndex self) -> int"""
2764  return _IMP_kernel.ParticleIndex_get_index(self)
2765 
2766  def __cmp__(self, o):
2767  r"""__cmp__(ParticleIndex self, ParticleIndex o) -> int"""
2768  return _IMP_kernel.ParticleIndex___cmp__(self, o)
2769 
2770  def __eq__(self, o):
2771  r"""__eq__(ParticleIndex self, ParticleIndex o) -> bool"""
2772  return _IMP_kernel.ParticleIndex___eq__(self, o)
2773 
2774  def __ne__(self, o):
2775  r"""__ne__(ParticleIndex self, ParticleIndex o) -> bool"""
2776  return _IMP_kernel.ParticleIndex___ne__(self, o)
2777 
2778  def __lt__(self, o):
2779  r"""__lt__(ParticleIndex self, ParticleIndex o) -> bool"""
2780  return _IMP_kernel.ParticleIndex___lt__(self, o)
2781 
2782  def __gt__(self, o):
2783  r"""__gt__(ParticleIndex self, ParticleIndex o) -> bool"""
2784  return _IMP_kernel.ParticleIndex___gt__(self, o)
2785 
2786  def __ge__(self, o):
2787  r"""__ge__(ParticleIndex self, ParticleIndex o) -> bool"""
2788  return _IMP_kernel.ParticleIndex___ge__(self, o)
2789 
2790  def __le__(self, o):
2791  r"""__le__(ParticleIndex self, ParticleIndex o) -> bool"""
2792  return _IMP_kernel.ParticleIndex___le__(self, o)
2793 
2794  def show(self, *args):
2795  r"""show(ParticleIndex self, _ostream out=std::cout)"""
2796  return _IMP_kernel.ParticleIndex_show(self, *args)
2797 
2798  def __hash__(self):
2799  r"""__hash__(ParticleIndex self) -> std::size_t"""
2800  return _IMP_kernel.ParticleIndex___hash__(self)
2801 
2802  def __str__(self):
2803  r"""__str__(ParticleIndex self) -> std::string"""
2804  return _IMP_kernel.ParticleIndex___str__(self)
2805 
2806  def __repr__(self):
2807  r"""__repr__(ParticleIndex self) -> std::string"""
2808  return _IMP_kernel.ParticleIndex___repr__(self)
2809  __swig_destroy__ = _IMP_kernel.delete_ParticleIndex
2810 
2811 # Register ParticleIndex in _IMP_kernel:
2812 _IMP_kernel.ParticleIndex_swigregister(ParticleIndex)
2813 class FloatsKey(_Value):
2814  r"""Proxy of C++ IMP::Key< 10 > class."""
2815 
2816  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2817 
2818  def __init__(self, *args):
2819  r"""
2820  __init__(FloatsKey self) -> FloatsKey
2821  __init__(FloatsKey self, std::string const & c, bool is_implicit_add_permitted=True) -> FloatsKey
2822  __init__(FloatsKey self, unsigned int i) -> FloatsKey
2823  """
2824  _IMP_kernel.FloatsKey_swiginit(self, _IMP_kernel.new_FloatsKey(*args))
2825 
2826  @staticmethod
2827  def add_key(sc):
2828  r"""add_key(std::string sc) -> unsigned int"""
2829  return _IMP_kernel.FloatsKey_add_key(sc)
2830 
2831  @staticmethod
2832  def get_key_exists(sc):
2833  r"""get_key_exists(std::string sc) -> bool"""
2834  return _IMP_kernel.FloatsKey_get_key_exists(sc)
2835 
2836  def get_string(self):
2837  r"""get_string(FloatsKey self) -> std::string const"""
2838  return _IMP_kernel.FloatsKey_get_string(self)
2839 
2840  def __cmp__(self, o):
2841  r"""__cmp__(FloatsKey self, FloatsKey o) -> int"""
2842  return _IMP_kernel.FloatsKey___cmp__(self, o)
2843 
2844  def __eq__(self, o):
2845  r"""__eq__(FloatsKey self, FloatsKey o) -> bool"""
2846  return _IMP_kernel.FloatsKey___eq__(self, o)
2847 
2848  def __ne__(self, o):
2849  r"""__ne__(FloatsKey self, FloatsKey o) -> bool"""
2850  return _IMP_kernel.FloatsKey___ne__(self, o)
2851 
2852  def __lt__(self, o):
2853  r"""__lt__(FloatsKey self, FloatsKey o) -> bool"""
2854  return _IMP_kernel.FloatsKey___lt__(self, o)
2855 
2856  def __gt__(self, o):
2857  r"""__gt__(FloatsKey self, FloatsKey o) -> bool"""
2858  return _IMP_kernel.FloatsKey___gt__(self, o)
2859 
2860  def __ge__(self, o):
2861  r"""__ge__(FloatsKey self, FloatsKey o) -> bool"""
2862  return _IMP_kernel.FloatsKey___ge__(self, o)
2863 
2864  def __le__(self, o):
2865  r"""__le__(FloatsKey self, FloatsKey o) -> bool"""
2866  return _IMP_kernel.FloatsKey___le__(self, o)
2867 
2868  def __hash__(self):
2869  r"""__hash__(FloatsKey self) -> std::size_t"""
2870  return _IMP_kernel.FloatsKey___hash__(self)
2871 
2872  def show(self, *args):
2873  r"""show(FloatsKey self, _ostream out=std::cout)"""
2874  return _IMP_kernel.FloatsKey_show(self, *args)
2875 
2876  @staticmethod
2877  def add_alias(old_key, new_name):
2878  r"""add_alias(FloatsKey old_key, std::string new_name) -> FloatsKey"""
2879  return _IMP_kernel.FloatsKey_add_alias(old_key, new_name)
2880 
2881  @staticmethod
2882  def get_number_of_keys():
2883  r"""get_number_of_keys() -> unsigned int"""
2884  return _IMP_kernel.FloatsKey_get_number_of_keys()
2885 
2886  def get_index(self):
2887  r"""get_index(FloatsKey self) -> unsigned int"""
2888  return _IMP_kernel.FloatsKey_get_index(self)
2889 
2890  @staticmethod
2891  def show_all(out):
2892  r"""show_all(_ostream out)"""
2893  return _IMP_kernel.FloatsKey_show_all(out)
2894 
2895  @staticmethod
2896  def get_all_strings():
2897  r"""get_all_strings() -> IMP::Vector< std::string >"""
2898  return _IMP_kernel.FloatsKey_get_all_strings()
2899 
2900  @staticmethod
2901  def get_number_unique():
2902  r"""get_number_unique() -> unsigned int"""
2903  return _IMP_kernel.FloatsKey_get_number_unique()
2904 
2905  def __str__(self):
2906  r"""__str__(FloatsKey self) -> std::string"""
2907  return _IMP_kernel.FloatsKey___str__(self)
2908 
2909  def __repr__(self):
2910  r"""__repr__(FloatsKey self) -> std::string"""
2911  return _IMP_kernel.FloatsKey___repr__(self)
2912  __swig_destroy__ = _IMP_kernel.delete_FloatsKey
2913 
2914 # Register FloatsKey in _IMP_kernel:
2915 _IMP_kernel.FloatsKey_swigregister(FloatsKey)
2916 class SparseStringKey(_Value):
2917  r"""Proxy of C++ IMP::Key< 12 > class."""
2918 
2919  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2920 
2921  def __init__(self, *args):
2922  r"""
2923  __init__(SparseStringKey self) -> SparseStringKey
2924  __init__(SparseStringKey self, std::string const & c, bool is_implicit_add_permitted=True) -> SparseStringKey
2925  __init__(SparseStringKey self, unsigned int i) -> SparseStringKey
2926  """
2927  _IMP_kernel.SparseStringKey_swiginit(self, _IMP_kernel.new_SparseStringKey(*args))
2928 
2929  @staticmethod
2930  def add_key(sc):
2931  r"""add_key(std::string sc) -> unsigned int"""
2932  return _IMP_kernel.SparseStringKey_add_key(sc)
2933 
2934  @staticmethod
2935  def get_key_exists(sc):
2936  r"""get_key_exists(std::string sc) -> bool"""
2937  return _IMP_kernel.SparseStringKey_get_key_exists(sc)
2938 
2939  def get_string(self):
2940  r"""get_string(SparseStringKey self) -> std::string const"""
2941  return _IMP_kernel.SparseStringKey_get_string(self)
2942 
2943  def __cmp__(self, o):
2944  r"""__cmp__(SparseStringKey self, SparseStringKey o) -> int"""
2945  return _IMP_kernel.SparseStringKey___cmp__(self, o)
2946 
2947  def __eq__(self, o):
2948  r"""__eq__(SparseStringKey self, SparseStringKey o) -> bool"""
2949  return _IMP_kernel.SparseStringKey___eq__(self, o)
2950 
2951  def __ne__(self, o):
2952  r"""__ne__(SparseStringKey self, SparseStringKey o) -> bool"""
2953  return _IMP_kernel.SparseStringKey___ne__(self, o)
2954 
2955  def __lt__(self, o):
2956  r"""__lt__(SparseStringKey self, SparseStringKey o) -> bool"""
2957  return _IMP_kernel.SparseStringKey___lt__(self, o)
2958 
2959  def __gt__(self, o):
2960  r"""__gt__(SparseStringKey self, SparseStringKey o) -> bool"""
2961  return _IMP_kernel.SparseStringKey___gt__(self, o)
2962 
2963  def __ge__(self, o):
2964  r"""__ge__(SparseStringKey self, SparseStringKey o) -> bool"""
2965  return _IMP_kernel.SparseStringKey___ge__(self, o)
2966 
2967  def __le__(self, o):
2968  r"""__le__(SparseStringKey self, SparseStringKey o) -> bool"""
2969  return _IMP_kernel.SparseStringKey___le__(self, o)
2970 
2971  def __hash__(self):
2972  r"""__hash__(SparseStringKey self) -> std::size_t"""
2973  return _IMP_kernel.SparseStringKey___hash__(self)
2974 
2975  def show(self, *args):
2976  r"""show(SparseStringKey self, _ostream out=std::cout)"""
2977  return _IMP_kernel.SparseStringKey_show(self, *args)
2978 
2979  @staticmethod
2980  def add_alias(old_key, new_name):
2981  r"""add_alias(SparseStringKey old_key, std::string new_name) -> SparseStringKey"""
2982  return _IMP_kernel.SparseStringKey_add_alias(old_key, new_name)
2983 
2984  @staticmethod
2985  def get_number_of_keys():
2986  r"""get_number_of_keys() -> unsigned int"""
2987  return _IMP_kernel.SparseStringKey_get_number_of_keys()
2988 
2989  def get_index(self):
2990  r"""get_index(SparseStringKey self) -> unsigned int"""
2991  return _IMP_kernel.SparseStringKey_get_index(self)
2992 
2993  @staticmethod
2994  def show_all(out):
2995  r"""show_all(_ostream out)"""
2996  return _IMP_kernel.SparseStringKey_show_all(out)
2997 
2998  @staticmethod
2999  def get_all_strings():
3000  r"""get_all_strings() -> IMP::Vector< std::string >"""
3001  return _IMP_kernel.SparseStringKey_get_all_strings()
3002 
3003  @staticmethod
3004  def get_number_unique():
3005  r"""get_number_unique() -> unsigned int"""
3006  return _IMP_kernel.SparseStringKey_get_number_unique()
3007 
3008  def __str__(self):
3009  r"""__str__(SparseStringKey self) -> std::string"""
3010  return _IMP_kernel.SparseStringKey___str__(self)
3011 
3012  def __repr__(self):
3013  r"""__repr__(SparseStringKey self) -> std::string"""
3014  return _IMP_kernel.SparseStringKey___repr__(self)
3015  __swig_destroy__ = _IMP_kernel.delete_SparseStringKey
3016 
3017 # Register SparseStringKey in _IMP_kernel:
3018 _IMP_kernel.SparseStringKey_swigregister(SparseStringKey)
3019 class SparseIntKey(_Value):
3020  r"""Proxy of C++ IMP::Key< 13 > class."""
3021 
3022  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3023 
3024  def __init__(self, *args):
3025  r"""
3026  __init__(SparseIntKey self) -> SparseIntKey
3027  __init__(SparseIntKey self, std::string const & c, bool is_implicit_add_permitted=True) -> SparseIntKey
3028  __init__(SparseIntKey self, unsigned int i) -> SparseIntKey
3029  """
3030  _IMP_kernel.SparseIntKey_swiginit(self, _IMP_kernel.new_SparseIntKey(*args))
3031 
3032  @staticmethod
3033  def add_key(sc):
3034  r"""add_key(std::string sc) -> unsigned int"""
3035  return _IMP_kernel.SparseIntKey_add_key(sc)
3036 
3037  @staticmethod
3038  def get_key_exists(sc):
3039  r"""get_key_exists(std::string sc) -> bool"""
3040  return _IMP_kernel.SparseIntKey_get_key_exists(sc)
3041 
3042  def get_string(self):
3043  r"""get_string(SparseIntKey self) -> std::string const"""
3044  return _IMP_kernel.SparseIntKey_get_string(self)
3045 
3046  def __cmp__(self, o):
3047  r"""__cmp__(SparseIntKey self, SparseIntKey o) -> int"""
3048  return _IMP_kernel.SparseIntKey___cmp__(self, o)
3049 
3050  def __eq__(self, o):
3051  r"""__eq__(SparseIntKey self, SparseIntKey o) -> bool"""
3052  return _IMP_kernel.SparseIntKey___eq__(self, o)
3053 
3054  def __ne__(self, o):
3055  r"""__ne__(SparseIntKey self, SparseIntKey o) -> bool"""
3056  return _IMP_kernel.SparseIntKey___ne__(self, o)
3057 
3058  def __lt__(self, o):
3059  r"""__lt__(SparseIntKey self, SparseIntKey o) -> bool"""
3060  return _IMP_kernel.SparseIntKey___lt__(self, o)
3061 
3062  def __gt__(self, o):
3063  r"""__gt__(SparseIntKey self, SparseIntKey o) -> bool"""
3064  return _IMP_kernel.SparseIntKey___gt__(self, o)
3065 
3066  def __ge__(self, o):
3067  r"""__ge__(SparseIntKey self, SparseIntKey o) -> bool"""
3068  return _IMP_kernel.SparseIntKey___ge__(self, o)
3069 
3070  def __le__(self, o):
3071  r"""__le__(SparseIntKey self, SparseIntKey o) -> bool"""
3072  return _IMP_kernel.SparseIntKey___le__(self, o)
3073 
3074  def __hash__(self):
3075  r"""__hash__(SparseIntKey self) -> std::size_t"""
3076  return _IMP_kernel.SparseIntKey___hash__(self)
3077 
3078  def show(self, *args):
3079  r"""show(SparseIntKey self, _ostream out=std::cout)"""
3080  return _IMP_kernel.SparseIntKey_show(self, *args)
3081 
3082  @staticmethod
3083  def add_alias(old_key, new_name):
3084  r"""add_alias(SparseIntKey old_key, std::string new_name) -> SparseIntKey"""
3085  return _IMP_kernel.SparseIntKey_add_alias(old_key, new_name)
3086 
3087  @staticmethod
3088  def get_number_of_keys():
3089  r"""get_number_of_keys() -> unsigned int"""
3090  return _IMP_kernel.SparseIntKey_get_number_of_keys()
3091 
3092  def get_index(self):
3093  r"""get_index(SparseIntKey self) -> unsigned int"""
3094  return _IMP_kernel.SparseIntKey_get_index(self)
3095 
3096  @staticmethod
3097  def show_all(out):
3098  r"""show_all(_ostream out)"""
3099  return _IMP_kernel.SparseIntKey_show_all(out)
3100 
3101  @staticmethod
3102  def get_all_strings():
3103  r"""get_all_strings() -> IMP::Vector< std::string >"""
3104  return _IMP_kernel.SparseIntKey_get_all_strings()
3105 
3106  @staticmethod
3107  def get_number_unique():
3108  r"""get_number_unique() -> unsigned int"""
3109  return _IMP_kernel.SparseIntKey_get_number_unique()
3110 
3111  def __str__(self):
3112  r"""__str__(SparseIntKey self) -> std::string"""
3113  return _IMP_kernel.SparseIntKey___str__(self)
3114 
3115  def __repr__(self):
3116  r"""__repr__(SparseIntKey self) -> std::string"""
3117  return _IMP_kernel.SparseIntKey___repr__(self)
3118  __swig_destroy__ = _IMP_kernel.delete_SparseIntKey
3119 
3120 # Register SparseIntKey in _IMP_kernel:
3121 _IMP_kernel.SparseIntKey_swigregister(SparseIntKey)
3122 class SparseFloatKey(_Value):
3123  r"""Proxy of C++ IMP::Key< 14 > class."""
3124 
3125  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3126 
3127  def __init__(self, *args):
3128  r"""
3129  __init__(SparseFloatKey self) -> SparseFloatKey
3130  __init__(SparseFloatKey self, std::string const & c, bool is_implicit_add_permitted=True) -> SparseFloatKey
3131  __init__(SparseFloatKey self, unsigned int i) -> SparseFloatKey
3132  """
3133  _IMP_kernel.SparseFloatKey_swiginit(self, _IMP_kernel.new_SparseFloatKey(*args))
3134 
3135  @staticmethod
3136  def add_key(sc):
3137  r"""add_key(std::string sc) -> unsigned int"""
3138  return _IMP_kernel.SparseFloatKey_add_key(sc)
3139 
3140  @staticmethod
3141  def get_key_exists(sc):
3142  r"""get_key_exists(std::string sc) -> bool"""
3143  return _IMP_kernel.SparseFloatKey_get_key_exists(sc)
3144 
3145  def get_string(self):
3146  r"""get_string(SparseFloatKey self) -> std::string const"""
3147  return _IMP_kernel.SparseFloatKey_get_string(self)
3148 
3149  def __cmp__(self, o):
3150  r"""__cmp__(SparseFloatKey self, SparseFloatKey o) -> int"""
3151  return _IMP_kernel.SparseFloatKey___cmp__(self, o)
3152 
3153  def __eq__(self, o):
3154  r"""__eq__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3155  return _IMP_kernel.SparseFloatKey___eq__(self, o)
3156 
3157  def __ne__(self, o):
3158  r"""__ne__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3159  return _IMP_kernel.SparseFloatKey___ne__(self, o)
3160 
3161  def __lt__(self, o):
3162  r"""__lt__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3163  return _IMP_kernel.SparseFloatKey___lt__(self, o)
3164 
3165  def __gt__(self, o):
3166  r"""__gt__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3167  return _IMP_kernel.SparseFloatKey___gt__(self, o)
3168 
3169  def __ge__(self, o):
3170  r"""__ge__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3171  return _IMP_kernel.SparseFloatKey___ge__(self, o)
3172 
3173  def __le__(self, o):
3174  r"""__le__(SparseFloatKey self, SparseFloatKey o) -> bool"""
3175  return _IMP_kernel.SparseFloatKey___le__(self, o)
3176 
3177  def __hash__(self):
3178  r"""__hash__(SparseFloatKey self) -> std::size_t"""
3179  return _IMP_kernel.SparseFloatKey___hash__(self)
3180 
3181  def show(self, *args):
3182  r"""show(SparseFloatKey self, _ostream out=std::cout)"""
3183  return _IMP_kernel.SparseFloatKey_show(self, *args)
3184 
3185  @staticmethod
3186  def add_alias(old_key, new_name):
3187  r"""add_alias(SparseFloatKey old_key, std::string new_name) -> SparseFloatKey"""
3188  return _IMP_kernel.SparseFloatKey_add_alias(old_key, new_name)
3189 
3190  @staticmethod
3191  def get_number_of_keys():
3192  r"""get_number_of_keys() -> unsigned int"""
3193  return _IMP_kernel.SparseFloatKey_get_number_of_keys()
3194 
3195  def get_index(self):
3196  r"""get_index(SparseFloatKey self) -> unsigned int"""
3197  return _IMP_kernel.SparseFloatKey_get_index(self)
3198 
3199  @staticmethod
3200  def show_all(out):
3201  r"""show_all(_ostream out)"""
3202  return _IMP_kernel.SparseFloatKey_show_all(out)
3203 
3204  @staticmethod
3205  def get_all_strings():
3206  r"""get_all_strings() -> IMP::Vector< std::string >"""
3207  return _IMP_kernel.SparseFloatKey_get_all_strings()
3208 
3209  @staticmethod
3210  def get_number_unique():
3211  r"""get_number_unique() -> unsigned int"""
3212  return _IMP_kernel.SparseFloatKey_get_number_unique()
3213 
3214  def __str__(self):
3215  r"""__str__(SparseFloatKey self) -> std::string"""
3216  return _IMP_kernel.SparseFloatKey___str__(self)
3217 
3218  def __repr__(self):
3219  r"""__repr__(SparseFloatKey self) -> std::string"""
3220  return _IMP_kernel.SparseFloatKey___repr__(self)
3221  __swig_destroy__ = _IMP_kernel.delete_SparseFloatKey
3222 
3223 # Register SparseFloatKey in _IMP_kernel:
3224 _IMP_kernel.SparseFloatKey_swigregister(SparseFloatKey)
3225 class SparseParticleIndexKey(_Value):
3226  r"""Proxy of C++ IMP::Key< 15 > class."""
3227 
3228  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3229 
3230  def __init__(self, *args):
3231  r"""
3232  __init__(SparseParticleIndexKey self) -> SparseParticleIndexKey
3233  __init__(SparseParticleIndexKey self, std::string const & c, bool is_implicit_add_permitted=True) -> SparseParticleIndexKey
3234  __init__(SparseParticleIndexKey self, unsigned int i) -> SparseParticleIndexKey
3235  """
3236  _IMP_kernel.SparseParticleIndexKey_swiginit(self, _IMP_kernel.new_SparseParticleIndexKey(*args))
3237 
3238  @staticmethod
3239  def add_key(sc):
3240  r"""add_key(std::string sc) -> unsigned int"""
3241  return _IMP_kernel.SparseParticleIndexKey_add_key(sc)
3242 
3243  @staticmethod
3244  def get_key_exists(sc):
3245  r"""get_key_exists(std::string sc) -> bool"""
3246  return _IMP_kernel.SparseParticleIndexKey_get_key_exists(sc)
3247 
3248  def get_string(self):
3249  r"""get_string(SparseParticleIndexKey self) -> std::string const"""
3250  return _IMP_kernel.SparseParticleIndexKey_get_string(self)
3251 
3252  def __cmp__(self, o):
3253  r"""__cmp__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> int"""
3254  return _IMP_kernel.SparseParticleIndexKey___cmp__(self, o)
3255 
3256  def __eq__(self, o):
3257  r"""__eq__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3258  return _IMP_kernel.SparseParticleIndexKey___eq__(self, o)
3259 
3260  def __ne__(self, o):
3261  r"""__ne__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3262  return _IMP_kernel.SparseParticleIndexKey___ne__(self, o)
3263 
3264  def __lt__(self, o):
3265  r"""__lt__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3266  return _IMP_kernel.SparseParticleIndexKey___lt__(self, o)
3267 
3268  def __gt__(self, o):
3269  r"""__gt__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3270  return _IMP_kernel.SparseParticleIndexKey___gt__(self, o)
3271 
3272  def __ge__(self, o):
3273  r"""__ge__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3274  return _IMP_kernel.SparseParticleIndexKey___ge__(self, o)
3275 
3276  def __le__(self, o):
3277  r"""__le__(SparseParticleIndexKey self, SparseParticleIndexKey o) -> bool"""
3278  return _IMP_kernel.SparseParticleIndexKey___le__(self, o)
3279 
3280  def __hash__(self):
3281  r"""__hash__(SparseParticleIndexKey self) -> std::size_t"""
3282  return _IMP_kernel.SparseParticleIndexKey___hash__(self)
3283 
3284  def show(self, *args):
3285  r"""show(SparseParticleIndexKey self, _ostream out=std::cout)"""
3286  return _IMP_kernel.SparseParticleIndexKey_show(self, *args)
3287 
3288  @staticmethod
3289  def add_alias(old_key, new_name):
3290  r"""add_alias(SparseParticleIndexKey old_key, std::string new_name) -> SparseParticleIndexKey"""
3291  return _IMP_kernel.SparseParticleIndexKey_add_alias(old_key, new_name)
3292 
3293  @staticmethod
3294  def get_number_of_keys():
3295  r"""get_number_of_keys() -> unsigned int"""
3296  return _IMP_kernel.SparseParticleIndexKey_get_number_of_keys()
3297 
3298  def get_index(self):
3299  r"""get_index(SparseParticleIndexKey self) -> unsigned int"""
3300  return _IMP_kernel.SparseParticleIndexKey_get_index(self)
3301 
3302  @staticmethod
3303  def show_all(out):
3304  r"""show_all(_ostream out)"""
3305  return _IMP_kernel.SparseParticleIndexKey_show_all(out)
3306 
3307  @staticmethod
3308  def get_all_strings():
3309  r"""get_all_strings() -> IMP::Vector< std::string >"""
3310  return _IMP_kernel.SparseParticleIndexKey_get_all_strings()
3311 
3312  @staticmethod
3313  def get_number_unique():
3314  r"""get_number_unique() -> unsigned int"""
3315  return _IMP_kernel.SparseParticleIndexKey_get_number_unique()
3316 
3317  def __str__(self):
3318  r"""__str__(SparseParticleIndexKey self) -> std::string"""
3319  return _IMP_kernel.SparseParticleIndexKey___str__(self)
3320 
3321  def __repr__(self):
3322  r"""__repr__(SparseParticleIndexKey self) -> std::string"""
3323  return _IMP_kernel.SparseParticleIndexKey___repr__(self)
3324  __swig_destroy__ = _IMP_kernel.delete_SparseParticleIndexKey
3325 
3326 # Register SparseParticleIndexKey in _IMP_kernel:
3327 _IMP_kernel.SparseParticleIndexKey_swigregister(SparseParticleIndexKey)
3328 
3329 def ParticlePair(a, b):
3330  return (a,b)
3331 def ParticleTriplet(a, b, c):
3332  return (a,b,c)
3333 def ParticleQuad(a, b, c, d):
3334  return (a,b,c,d)
3335 
3336 class FloatIndex(_Value):
3337  r"""Proxy of C++ IMP::FloatIndex class."""
3338 
3339  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3340 
3341  def __init__(self, *args):
3342  r"""__init__(FloatIndex self, ParticleIndex i0=ParticleIndex(), FloatKey i1=FloatKey()) -> FloatIndex"""
3343  _IMP_kernel.FloatIndex_swiginit(self, _IMP_kernel.new_FloatIndex(*args))
3344 
3345  def __hash__(self):
3346  r"""__hash__(FloatIndex self) -> std::size_t"""
3347  return _IMP_kernel.FloatIndex___hash__(self)
3348 
3349  def show(self, *args):
3350  r"""show(FloatIndex self, _ostream out=std::cout)"""
3351  return _IMP_kernel.FloatIndex_show(self, *args)
3352 
3353  def __cmp__(self, o):
3354  r"""__cmp__(FloatIndex self, FloatIndex o) -> int"""
3355  return _IMP_kernel.FloatIndex___cmp__(self, o)
3356 
3357  def __eq__(self, o):
3358  r"""__eq__(FloatIndex self, FloatIndex o) -> bool"""
3359  return _IMP_kernel.FloatIndex___eq__(self, o)
3360 
3361  def __ne__(self, o):
3362  r"""__ne__(FloatIndex self, FloatIndex o) -> bool"""
3363  return _IMP_kernel.FloatIndex___ne__(self, o)
3364 
3365  def __lt__(self, o):
3366  r"""__lt__(FloatIndex self, FloatIndex o) -> bool"""
3367  return _IMP_kernel.FloatIndex___lt__(self, o)
3368 
3369  def __gt__(self, o):
3370  r"""__gt__(FloatIndex self, FloatIndex o) -> bool"""
3371  return _IMP_kernel.FloatIndex___gt__(self, o)
3372 
3373  def __ge__(self, o):
3374  r"""__ge__(FloatIndex self, FloatIndex o) -> bool"""
3375  return _IMP_kernel.FloatIndex___ge__(self, o)
3376 
3377  def __le__(self, o):
3378  r"""__le__(FloatIndex self, FloatIndex o) -> bool"""
3379  return _IMP_kernel.FloatIndex___le__(self, o)
3380 
3381  def get_particle(self):
3382  r"""get_particle(FloatIndex self) -> ParticleIndex const &"""
3383  return _IMP_kernel.FloatIndex_get_particle(self)
3384 
3385  def set_particle(self, v):
3386  r"""set_particle(FloatIndex self, ParticleIndex const & v)"""
3387  return _IMP_kernel.FloatIndex_set_particle(self, v)
3388 
3389  def get_key(self):
3390  r"""get_key(FloatIndex self) -> FloatKey const &"""
3391  return _IMP_kernel.FloatIndex_get_key(self)
3392 
3393  def set_key(self, v):
3394  r"""set_key(FloatIndex self, FloatKey const & v)"""
3395  return _IMP_kernel.FloatIndex_set_key(self, v)
3396 
3397  def __str__(self):
3398  r"""__str__(FloatIndex self) -> std::string"""
3399  return _IMP_kernel.FloatIndex___str__(self)
3400 
3401  def __repr__(self):
3402  r"""__repr__(FloatIndex self) -> std::string"""
3403  return _IMP_kernel.FloatIndex___repr__(self)
3404  __swig_destroy__ = _IMP_kernel.delete_FloatIndex
3405 
3406 # Register FloatIndex in _IMP_kernel:
3407 _IMP_kernel.FloatIndex_swigregister(FloatIndex)
3408 class _ParticleIndexTag(object):
3409  r"""Proxy of C++ IMP::ParticleIndexTag class."""
3410 
3411  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3412  __repr__ = _swig_repr
3413 
3414  def __init__(self):
3415  r"""__init__(_ParticleIndexTag self) -> _ParticleIndexTag"""
3416  _IMP_kernel._ParticleIndexTag_swiginit(self, _IMP_kernel.new__ParticleIndexTag())
3417  __swig_destroy__ = _IMP_kernel.delete__ParticleIndexTag
3418 
3419 # Register _ParticleIndexTag in _IMP_kernel:
3420 _IMP_kernel._ParticleIndexTag_swigregister(_ParticleIndexTag)
3421 class ModelObject(Object):
3422  r"""Proxy of C++ IMP::ModelObject class."""
3423 
3424  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3425 
3426  def __init__(self, *args):
3427  r"""
3428  __init__(ModelObject self, Model m, std::string name) -> ModelObject
3429  __init__(ModelObject self) -> ModelObject
3430  """
3431  if self.__class__ == ModelObject:
3432  _self = None
3433  else:
3434  _self = self
3435  _IMP_kernel.ModelObject_swiginit(self, _IMP_kernel.new_ModelObject(_self, *args))
3436 
3437  if self.__class__ != ModelObject:
3438  _director_objects.register(self)
3439 
3440 
3441 
3442  __swig_destroy__ = _IMP_kernel.delete_ModelObject
3443 
3444  def get_model(self):
3445  m = _IMP_kernel.ModelObject_get_model(self)
3446  if m in _models_set:
3447  m = _models_set_get(m)
3448  return m
3449 
3450 
3451 
3452  def get_inputs(self):
3453  r"""get_inputs(ModelObject self) -> IMP::ModelObjectsTemp"""
3454  return _IMP_kernel.ModelObject_get_inputs(self)
3455 
3456  def get_outputs(self):
3457  r"""get_outputs(ModelObject self) -> IMP::ModelObjectsTemp"""
3458  return _IMP_kernel.ModelObject_get_outputs(self)
3459 
3460  def get_interactions(self):
3461  r"""get_interactions(ModelObject self) -> IMP::ModelObjectsTemps"""
3462  return _IMP_kernel.ModelObject_get_interactions(self)
3463 
3464  def get_has_dependencies(self):
3465  r"""get_has_dependencies(ModelObject self) -> bool"""
3466  return _IMP_kernel.ModelObject_get_has_dependencies(self)
3467 
3468  def set_has_dependencies(self, tf):
3469  r"""set_has_dependencies(ModelObject self, bool tf)"""
3470  return _IMP_kernel.ModelObject_set_has_dependencies(self, tf)
3471 
3472  def set_has_required_score_states(self, tf):
3473  r"""set_has_required_score_states(ModelObject self, bool tf)"""
3474  return _IMP_kernel.ModelObject_set_has_required_score_states(self, tf)
3475 
3476  def get_has_required_score_states(self):
3477  r"""get_has_required_score_states(ModelObject self) -> bool"""
3478  return _IMP_kernel.ModelObject_get_has_required_score_states(self)
3479 
3480  def get_required_score_states(self):
3481  r"""get_required_score_states(ModelObject self) -> IMP::ScoreStatesTemp const &"""
3482  return _IMP_kernel.ModelObject_get_required_score_states(self)
3483 
3484  def handle_set_has_required_score_states(self, arg0):
3485  r"""handle_set_has_required_score_states(ModelObject self, bool arg0)"""
3486  return _IMP_kernel.ModelObject_handle_set_has_required_score_states(self, arg0)
3487 
3488  def do_get_inputs(self):
3489  r"""do_get_inputs(ModelObject self) -> IMP::ModelObjectsTemp"""
3490  return _IMP_kernel.ModelObject_do_get_inputs(self)
3491 
3492  def do_get_outputs(self):
3493  r"""do_get_outputs(ModelObject self) -> IMP::ModelObjectsTemp"""
3494  return _IMP_kernel.ModelObject_do_get_outputs(self)
3495 
3496  def do_get_interactions(self):
3497  r"""do_get_interactions(ModelObject self) -> IMP::ModelObjectsTemps"""
3498  return _IMP_kernel.ModelObject_do_get_interactions(self)
3499 
3500  def __str__(self):
3501  r"""__str__(ModelObject self) -> std::string"""
3502  return _IMP_kernel.ModelObject___str__(self)
3503 
3504  def __repr__(self):
3505  r"""__repr__(ModelObject self) -> std::string"""
3506  return _IMP_kernel.ModelObject___repr__(self)
3507 
3508  @staticmethod
3509  def get_from(o):
3510  return _object_cast_to_ModelObject(o)
3511 
3512 
3513  def get_type_name(self):
3514  return self.__class__.__name__
3515  def do_show(self, out):
3516  pass
3517  def get_version_info(self):
3518  if"IMP" == "IMP":
3519  return VersionInfo(self.__module__,
3520  __import__(self.__module__).get_module_version())
3521  else:
3522  return IMP.VersionInfo(self.__module__,
3523  __import__(self.__module__).get_module_version())
3524  @staticmethod
3525  def get_from(o):
3526  return _object_cast_to_ModelObject(o)
3527 
3528  def __disown__(self):
3529  self.this.disown()
3530  _IMP_kernel.disown_ModelObject(self)
3531  return weakref.proxy(self)
3532 
3533  def do_destroy(self):
3534  r"""do_destroy(ModelObject self)"""
3535  return _IMP_kernel.ModelObject_do_destroy(self)
3536 
3537 # Register ModelObject in _IMP_kernel:
3538 _IMP_kernel.ModelObject_swigregister(ModelObject)
3539 cvar = _IMP_kernel.cvar
3540 NO_MAX = cvar.NO_MAX
3541 BAD_SCORE = cvar.BAD_SCORE
3542 
3543 class _ParticleInputs(object):
3544  r"""Proxy of C++ IMP::ParticleInputs class."""
3545 
3546  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3547 
3548  def __init__(self, *args, **kwargs):
3549  raise AttributeError("No constructor defined - class is abstract")
3550  __repr__ = _swig_repr
3551 
3552  def get_inputs(self, m, pis):
3553  r"""get_inputs(_ParticleInputs self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3554  return _IMP_kernel._ParticleInputs_get_inputs(self, m, pis)
3555 
3556 # Register _ParticleInputs in _IMP_kernel:
3557 _IMP_kernel._ParticleInputs_swigregister(_ParticleInputs)
3558 class _ParticleOutputs(object):
3559  r"""Proxy of C++ IMP::ParticleOutputs class."""
3560 
3561  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3562 
3563  def __init__(self, *args, **kwargs):
3564  raise AttributeError("No constructor defined - class is abstract")
3565  __repr__ = _swig_repr
3566 
3567  def get_outputs(self, m, pis):
3568  r"""get_outputs(_ParticleOutputs self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
3569  return _IMP_kernel._ParticleOutputs_get_outputs(self, m, pis)
3570 
3571 # Register _ParticleOutputs in _IMP_kernel:
3572 _IMP_kernel._ParticleOutputs_swigregister(_ParticleOutputs)
3573 
3574 def get_input_particles(mos):
3575  r"""get_input_particles(IMP::ModelObjectsTemp const & mos) -> IMP::ParticlesTemp"""
3576  return _IMP_kernel.get_input_particles(mos)
3577 
3578 def get_input_containers(mos):
3579  r"""get_input_containers(IMP::ModelObjectsTemp const & mos) -> IMP::ContainersTemp"""
3580  return _IMP_kernel.get_input_containers(mos)
3581 
3582 def get_output_particles(mos):
3583  r"""get_output_particles(IMP::ModelObjectsTemp const & mos) -> IMP::ParticlesTemp"""
3584  return _IMP_kernel.get_output_particles(mos)
3585 
3586 def get_output_containers(mos):
3587  r"""get_output_containers(IMP::ModelObjectsTemp const & mos) -> IMP::ContainersTemp"""
3588  return _IMP_kernel.get_output_containers(mos)
3589 class DerivativeAccumulator(object):
3590  r"""Proxy of C++ IMP::DerivativeAccumulator class."""
3591 
3592  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3593  __repr__ = _swig_repr
3594 
3595  def __init__(self, *args):
3596  r"""
3597  __init__(DerivativeAccumulator self, DerivativeAccumulator arg2) -> DerivativeAccumulator
3598  __init__(DerivativeAccumulator self, double weight=1.0) -> DerivativeAccumulator
3599  __init__(DerivativeAccumulator self, DerivativeAccumulator copy, double weight) -> DerivativeAccumulator
3600  """
3601  _IMP_kernel.DerivativeAccumulator_swiginit(self, _IMP_kernel.new_DerivativeAccumulator(*args))
3602 
3603  def __call__(self, value):
3604  r"""__call__(DerivativeAccumulator self, double const value) -> double"""
3605  return _IMP_kernel.DerivativeAccumulator___call__(self, value)
3606 
3607  def get_weight(self):
3608  r"""get_weight(DerivativeAccumulator self) -> double"""
3609  return _IMP_kernel.DerivativeAccumulator_get_weight(self)
3610 
3611  def show(self, *args):
3612  r"""show(DerivativeAccumulator self, _ostream out=std::cout)"""
3613  return _IMP_kernel.DerivativeAccumulator_show(self, *args)
3614  __swig_destroy__ = _IMP_kernel.delete_DerivativeAccumulator
3615 
3616 # Register DerivativeAccumulator in _IMP_kernel:
3617 _IMP_kernel.DerivativeAccumulator_swigregister(DerivativeAccumulator)
3618 class EvaluationState(object):
3619  r"""Proxy of C++ IMP::EvaluationState class."""
3620 
3621  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3622  score = property(_IMP_kernel.EvaluationState_score_get, _IMP_kernel.EvaluationState_score_set, doc=r"""score : double""")
3623  good = property(_IMP_kernel.EvaluationState_good_get, _IMP_kernel.EvaluationState_good_set, doc=r"""good : bool""")
3624 
3625  def __init__(self, *args):
3626  r"""
3627  __init__(EvaluationState self, double oscore, bool ogood) -> EvaluationState
3628  __init__(EvaluationState self) -> EvaluationState
3629  """
3630  _IMP_kernel.EvaluationState_swiginit(self, _IMP_kernel.new_EvaluationState(*args))
3631 
3632  def show(self, *args):
3633  r"""show(EvaluationState self, _ostream out=std::cout)"""
3634  return _IMP_kernel.EvaluationState_show(self, *args)
3635 
3636  def __str__(self):
3637  r"""__str__(EvaluationState self) -> std::string"""
3638  return _IMP_kernel.EvaluationState___str__(self)
3639 
3640  def __repr__(self):
3641  r"""__repr__(EvaluationState self) -> std::string"""
3642  return _IMP_kernel.EvaluationState___repr__(self)
3643  __swig_destroy__ = _IMP_kernel.delete_EvaluationState
3644 
3645 # Register EvaluationState in _IMP_kernel:
3646 _IMP_kernel.EvaluationState_swigregister(EvaluationState)
3647 class ScoreAccumulator(_Value):
3648  r"""Proxy of C++ IMP::ScoreAccumulator class."""
3649 
3650  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3651 
3652  def __init__(self, *args):
3653  r"""
3654  __init__(ScoreAccumulator self, ScoreAccumulator arg2) -> ScoreAccumulator
3655  __init__(ScoreAccumulator self) -> ScoreAccumulator
3656  __init__(ScoreAccumulator self, ScoreAccumulator o, Restraint r) -> ScoreAccumulator
3657  __init__(ScoreAccumulator self, ScoreAccumulator o, double weight, double local_max) -> ScoreAccumulator
3658  """
3659  _IMP_kernel.ScoreAccumulator_swiginit(self, _IMP_kernel.new_ScoreAccumulator(*args))
3660 
3661  def add_score(self, score):
3662  r"""add_score(ScoreAccumulator self, double score)"""
3663  return _IMP_kernel.ScoreAccumulator_add_score(self, score)
3664 
3665  def get_abort_evaluation(self):
3666  r"""get_abort_evaluation(ScoreAccumulator self) -> bool"""
3667  return _IMP_kernel.ScoreAccumulator_get_abort_evaluation(self)
3668 
3669  def get_is_evaluate_if_below(self):
3670  r"""get_is_evaluate_if_below(ScoreAccumulator self) -> bool"""
3671  return _IMP_kernel.ScoreAccumulator_get_is_evaluate_if_below(self)
3672 
3673  def get_is_evaluate_if_good(self):
3674  r"""get_is_evaluate_if_good(ScoreAccumulator self) -> bool"""
3675  return _IMP_kernel.ScoreAccumulator_get_is_evaluate_if_good(self)
3676 
3677  def get_maximum(self):
3678  r"""get_maximum(ScoreAccumulator self) -> double"""
3679  return _IMP_kernel.ScoreAccumulator_get_maximum(self)
3680 
3681  def get_derivative_accumulator(self):
3682  r"""get_derivative_accumulator(ScoreAccumulator self) -> DerivativeAccumulator"""
3683  return _IMP_kernel.ScoreAccumulator_get_derivative_accumulator(self)
3684 
3685  def show(self, *args):
3686  r"""show(ScoreAccumulator self, _ostream out=std::cout)"""
3687  return _IMP_kernel.ScoreAccumulator_show(self, *args)
3688 
3689  def __str__(self):
3690  r"""__str__(ScoreAccumulator self) -> std::string"""
3691  return _IMP_kernel.ScoreAccumulator___str__(self)
3692 
3693  def __repr__(self):
3694  r"""__repr__(ScoreAccumulator self) -> std::string"""
3695  return _IMP_kernel.ScoreAccumulator___repr__(self)
3696  __swig_destroy__ = _IMP_kernel.delete_ScoreAccumulator
3697 
3698 # Register ScoreAccumulator in _IMP_kernel:
3699 _IMP_kernel.ScoreAccumulator_swigregister(ScoreAccumulator)
3700 class ScoreState(ModelObject):
3701  r"""Proxy of C++ IMP::ScoreState class."""
3702 
3703  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3704 
3705  def set_can_skip(self, can_skip):
3706  r"""set_can_skip(ScoreState self, bool can_skip)"""
3707  return _IMP_kernel.ScoreState_set_can_skip(self, can_skip)
3708 
3709  def __init__(self, *args):
3710  r"""
3711  __init__(ScoreState self, Model m, std::string name) -> ScoreState
3712  __init__(ScoreState self) -> ScoreState
3713  """
3714  if self.__class__ == ScoreState:
3715  _self = None
3716  else:
3717  _self = self
3718  _IMP_kernel.ScoreState_swiginit(self, _IMP_kernel.new_ScoreState(_self, *args))
3719 
3720  if self.__class__ != ScoreState:
3721  _director_objects.register(self)
3722 
3723 
3724 
3725 
3726  def before_evaluate(self):
3727  r"""before_evaluate(ScoreState self)"""
3728  return _IMP_kernel.ScoreState_before_evaluate(self)
3729 
3730  def after_evaluate(self, accpt):
3731  r"""after_evaluate(ScoreState self, DerivativeAccumulator accpt)"""
3732  return _IMP_kernel.ScoreState_after_evaluate(self, accpt)
3733 
3734  def get_can_skip(self):
3735  r"""get_can_skip(ScoreState self) -> bool"""
3736  return _IMP_kernel.ScoreState_get_can_skip(self)
3737 
3738  def get_has_update_order(self):
3739  r"""get_has_update_order(ScoreState self) -> bool"""
3740  return _IMP_kernel.ScoreState_get_has_update_order(self)
3741 
3742  def get_update_order(self):
3743  r"""get_update_order(ScoreState self) -> unsigned int"""
3744  return _IMP_kernel.ScoreState_get_update_order(self)
3745 
3746  def handle_set_has_required_score_states(self, tf):
3747  r"""handle_set_has_required_score_states(ScoreState self, bool tf)"""
3748  return _IMP_kernel.ScoreState_handle_set_has_required_score_states(self, tf)
3749 
3750  def do_before_evaluate(self):
3751  r"""do_before_evaluate(ScoreState self)"""
3752  return _IMP_kernel.ScoreState_do_before_evaluate(self)
3753 
3754  def do_after_evaluate(self, accpt):
3755  r"""do_after_evaluate(ScoreState self, DerivativeAccumulator accpt)"""
3756  return _IMP_kernel.ScoreState_do_after_evaluate(self, accpt)
3757  __swig_destroy__ = _IMP_kernel.delete_ScoreState
3758 
3759  def __str__(self):
3760  r"""__str__(ScoreState self) -> std::string"""
3761  return _IMP_kernel.ScoreState___str__(self)
3762 
3763  def __repr__(self):
3764  r"""__repr__(ScoreState self) -> std::string"""
3765  return _IMP_kernel.ScoreState___repr__(self)
3766 
3767  @staticmethod
3768  def get_from(o):
3769  return _object_cast_to_ScoreState(o)
3770 
3771 
3772  def get_type_name(self):
3773  return self.__class__.__name__
3774  def do_show(self, out):
3775  pass
3776  def get_version_info(self):
3777  if"IMP" == "IMP":
3778  return VersionInfo(self.__module__,
3779  __import__(self.__module__).get_module_version())
3780  else:
3781  return IMP.VersionInfo(self.__module__,
3782  __import__(self.__module__).get_module_version())
3783  @staticmethod
3784  def get_from(o):
3785  return _object_cast_to_ScoreState(o)
3786 
3787  def __disown__(self):
3788  self.this.disown()
3789  _IMP_kernel.disown_ScoreState(self)
3790  return weakref.proxy(self)
3791 
3792  def do_destroy(self):
3793  r"""do_destroy(ScoreState self)"""
3794  return _IMP_kernel.ScoreState_do_destroy(self)
3795 
3796  def do_get_inputs(self):
3797  r"""do_get_inputs(ScoreState self) -> IMP::ModelObjectsTemp"""
3798  return _IMP_kernel.ScoreState_do_get_inputs(self)
3799 
3800  def do_get_outputs(self):
3801  r"""do_get_outputs(ScoreState self) -> IMP::ModelObjectsTemp"""
3802  return _IMP_kernel.ScoreState_do_get_outputs(self)
3803 
3804  def do_get_interactions(self):
3805  r"""do_get_interactions(ScoreState self) -> IMP::ModelObjectsTemps"""
3806  return _IMP_kernel.ScoreState_do_get_interactions(self)
3807 
3808 # Register ScoreState in _IMP_kernel:
3809 _IMP_kernel.ScoreState_swigregister(ScoreState)
3810 
3811 def get_update_order(input):
3812  r"""get_update_order(IMP::ScoreStatesTemp input) -> IMP::ScoreStatesTemp"""
3813  return _IMP_kernel.get_update_order(input)
3814 class Constraint(ScoreState):
3815  r"""Proxy of C++ IMP::Constraint class."""
3816 
3817  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3818 
3819  def __init__(self, *args):
3820  r"""
3821  __init__(Constraint self, Model m, std::string name="Constraint %1%") -> Constraint
3822  __init__(Constraint self) -> Constraint
3823  """
3824  if self.__class__ == Constraint:
3825  _self = None
3826  else:
3827  _self = self
3828  _IMP_kernel.Constraint_swiginit(self, _IMP_kernel.new_Constraint(_self, *args))
3829 
3830  if self.__class__ != Constraint:
3831  _director_objects.register(self)
3832 
3833 
3834 
3835 
3836  def do_update_attributes(self):
3837  r"""do_update_attributes(Constraint self)"""
3838  return _IMP_kernel.Constraint_do_update_attributes(self)
3839 
3840  def do_update_derivatives(self, da):
3841  r"""do_update_derivatives(Constraint self, DerivativeAccumulator da)"""
3842  return _IMP_kernel.Constraint_do_update_derivatives(self, da)
3843 
3844  def do_before_evaluate(self):
3845  r"""do_before_evaluate(Constraint self)"""
3846  return _IMP_kernel.Constraint_do_before_evaluate(self)
3847 
3848  def do_after_evaluate(self, da):
3849  r"""do_after_evaluate(Constraint self, DerivativeAccumulator da)"""
3850  return _IMP_kernel.Constraint_do_after_evaluate(self, da)
3851  __swig_destroy__ = _IMP_kernel.delete_Constraint
3852 
3853  def __str__(self):
3854  r"""__str__(Constraint self) -> std::string"""
3855  return _IMP_kernel.Constraint___str__(self)
3856 
3857  def __repr__(self):
3858  r"""__repr__(Constraint self) -> std::string"""
3859  return _IMP_kernel.Constraint___repr__(self)
3860 
3861  @staticmethod
3862  def get_from(o):
3863  return _object_cast_to_Constraint(o)
3864 
3865 
3866  def get_type_name(self):
3867  return self.__class__.__name__
3868  def do_show(self, out):
3869  pass
3870  def get_version_info(self):
3871  if"IMP" == "IMP":
3872  return VersionInfo(self.__module__,
3873  __import__(self.__module__).get_module_version())
3874  else:
3875  return IMP.VersionInfo(self.__module__,
3876  __import__(self.__module__).get_module_version())
3877  @staticmethod
3878  def get_from(o):
3879  return _object_cast_to_Constraint(o)
3880 
3881  def __disown__(self):
3882  self.this.disown()
3883  _IMP_kernel.disown_Constraint(self)
3884  return weakref.proxy(self)
3885 
3886  def do_destroy(self):
3887  r"""do_destroy(Constraint self)"""
3888  return _IMP_kernel.Constraint_do_destroy(self)
3889 
3890  def do_get_inputs(self):
3891  r"""do_get_inputs(Constraint self) -> IMP::ModelObjectsTemp"""
3892  return _IMP_kernel.Constraint_do_get_inputs(self)
3893 
3894  def do_get_outputs(self):
3895  r"""do_get_outputs(Constraint self) -> IMP::ModelObjectsTemp"""
3896  return _IMP_kernel.Constraint_do_get_outputs(self)
3897 
3898  def do_get_interactions(self):
3899  r"""do_get_interactions(Constraint self) -> IMP::ModelObjectsTemps"""
3900  return _IMP_kernel.Constraint_do_get_interactions(self)
3901 
3902 # Register Constraint in _IMP_kernel:
3903 _IMP_kernel.Constraint_swigregister(Constraint)
3904 class Container(ModelObject):
3905  r"""Proxy of C++ IMP::Container class."""
3906 
3907  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3908 
3909  def __init__(self, *args):
3910  r"""
3911  __init__(Container self, Model m, std::string name="Container %1%") -> Container
3912  __init__(Container self) -> Container
3913  """
3914  if self.__class__ == Container:
3915  _self = None
3916  else:
3917  _self = self
3918  _IMP_kernel.Container_swiginit(self, _IMP_kernel.new_Container(_self, *args))
3919 
3920  if self.__class__ != Container:
3921  _director_objects.register(self)
3922 
3923 
3924 
3925 
3926  def do_get_contents_hash(self):
3927  r"""do_get_contents_hash(Container self) -> std::size_t"""
3928  return _IMP_kernel.Container_do_get_contents_hash(self)
3929 
3930  def get_all_possible_indexes(self):
3931  r"""get_all_possible_indexes(Container self) -> IMP::ParticleIndexes"""
3932  return _IMP_kernel.Container_get_all_possible_indexes(self)
3933 
3934  def get_contents_hash(self):
3935  r"""get_contents_hash(Container self) -> std::size_t"""
3936  return _IMP_kernel.Container_get_contents_hash(self)
3937 
3938  def do_get_outputs(self):
3939  r"""do_get_outputs(Container self) -> IMP::ModelObjectsTemp"""
3940  return _IMP_kernel.Container_do_get_outputs(self)
3941 
3942  def get_is_decomposable(self):
3943  r"""get_is_decomposable(Container self) -> bool"""
3944  return _IMP_kernel.Container_get_is_decomposable(self)
3945 
3946  def validate_readable(self):
3947  r"""validate_readable(Container self)"""
3948  return _IMP_kernel.Container_validate_readable(self)
3949 
3950  def validate_writable(self):
3951  r"""validate_writable(Container self)"""
3952  return _IMP_kernel.Container_validate_writable(self)
3953 
3954  def set_is_readable(self, tf):
3955  r"""set_is_readable(Container self, bool tf)"""
3956  return _IMP_kernel.Container_set_is_readable(self, tf)
3957 
3958  def set_is_writable(self, tf):
3959  r"""set_is_writable(Container self, bool tf)"""
3960  return _IMP_kernel.Container_set_is_writable(self, tf)
3961  __swig_destroy__ = _IMP_kernel.delete_Container
3962 
3963  def __str__(self):
3964  r"""__str__(Container self) -> std::string"""
3965  return _IMP_kernel.Container___str__(self)
3966 
3967  def __repr__(self):
3968  r"""__repr__(Container self) -> std::string"""
3969  return _IMP_kernel.Container___repr__(self)
3970 
3971  @staticmethod
3972  def get_from(o):
3973  return _object_cast_to_Container(o)
3974 
3975 
3976  def get_type_name(self):
3977  return self.__class__.__name__
3978  def do_show(self, out):
3979  pass
3980  def get_version_info(self):
3981  if"IMP" == "IMP":
3982  return VersionInfo(self.__module__,
3983  __import__(self.__module__).get_module_version())
3984  else:
3985  return IMP.VersionInfo(self.__module__,
3986  __import__(self.__module__).get_module_version())
3987  @staticmethod
3988  def get_from(o):
3989  return _object_cast_to_Container(o)
3990 
3991  def __disown__(self):
3992  self.this.disown()
3993  _IMP_kernel.disown_Container(self)
3994  return weakref.proxy(self)
3995 
3996  def do_destroy(self):
3997  r"""do_destroy(Container self)"""
3998  return _IMP_kernel.Container_do_destroy(self)
3999 
4000  def handle_set_has_required_score_states(self, arg0):
4001  r"""handle_set_has_required_score_states(Container self, bool arg0)"""
4002  return _IMP_kernel.Container_handle_set_has_required_score_states(self, arg0)
4003 
4004  def do_get_inputs(self):
4005  r"""do_get_inputs(Container self) -> IMP::ModelObjectsTemp"""
4006  return _IMP_kernel.Container_do_get_inputs(self)
4007 
4008  def do_get_interactions(self):
4009  r"""do_get_interactions(Container self) -> IMP::ModelObjectsTemps"""
4010  return _IMP_kernel.Container_do_get_interactions(self)
4011 
4012 # Register Container in _IMP_kernel:
4013 _IMP_kernel.Container_swigregister(Container)
4014 class RestraintInfo(Object):
4015  r"""Proxy of C++ IMP::RestraintInfo class."""
4016 
4017  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4018 
4019  def __init__(self, *args):
4020  r"""__init__(RestraintInfo self, std::string name="RestraintInfo %1%") -> RestraintInfo"""
4021  _IMP_kernel.RestraintInfo_swiginit(self, _IMP_kernel.new_RestraintInfo(*args))
4022 
4023  def clear(self):
4024  r"""clear(RestraintInfo self)"""
4025  return _IMP_kernel.RestraintInfo_clear(self)
4026 
4027  def add_int(self, key, value):
4028  r"""add_int(RestraintInfo self, std::string key, int value)"""
4029  return _IMP_kernel.RestraintInfo_add_int(self, key, value)
4030 
4031  def get_number_of_int(self):
4032  r"""get_number_of_int(RestraintInfo self) -> unsigned int"""
4033  return _IMP_kernel.RestraintInfo_get_number_of_int(self)
4034 
4035  def get_int_key(self, i):
4036  r"""get_int_key(RestraintInfo self, unsigned int i) -> std::string"""
4037  return _IMP_kernel.RestraintInfo_get_int_key(self, i)
4038 
4039  def get_int_value(self, i):
4040  r"""get_int_value(RestraintInfo self, unsigned int i) -> int"""
4041  return _IMP_kernel.RestraintInfo_get_int_value(self, i)
4042 
4043  def add_float(self, key, value):
4044  r"""add_float(RestraintInfo self, std::string key, double value)"""
4045  return _IMP_kernel.RestraintInfo_add_float(self, key, value)
4046 
4047  def get_number_of_float(self):
4048  r"""get_number_of_float(RestraintInfo self) -> unsigned int"""
4049  return _IMP_kernel.RestraintInfo_get_number_of_float(self)
4050 
4051  def get_float_key(self, i):
4052  r"""get_float_key(RestraintInfo self, unsigned int i) -> std::string"""
4053  return _IMP_kernel.RestraintInfo_get_float_key(self, i)
4054 
4055  def get_float_value(self, i):
4056  r"""get_float_value(RestraintInfo self, unsigned int i) -> double"""
4057  return _IMP_kernel.RestraintInfo_get_float_value(self, i)
4058 
4059  def add_string(self, key, value):
4060  r"""add_string(RestraintInfo self, std::string key, std::string value)"""
4061  return _IMP_kernel.RestraintInfo_add_string(self, key, value)
4062 
4063  def get_number_of_string(self):
4064  r"""get_number_of_string(RestraintInfo self) -> unsigned int"""
4065  return _IMP_kernel.RestraintInfo_get_number_of_string(self)
4066 
4067  def get_string_key(self, i):
4068  r"""get_string_key(RestraintInfo self, unsigned int i) -> std::string"""
4069  return _IMP_kernel.RestraintInfo_get_string_key(self, i)
4070 
4071  def get_string_value(self, i):
4072  r"""get_string_value(RestraintInfo self, unsigned int i) -> std::string"""
4073  return _IMP_kernel.RestraintInfo_get_string_value(self, i)
4074 
4075  def add_filename(self, key, value):
4076  r"""add_filename(RestraintInfo self, std::string key, std::string value)"""
4077  return _IMP_kernel.RestraintInfo_add_filename(self, key, value)
4078 
4079  def get_number_of_filename(self):
4080  r"""get_number_of_filename(RestraintInfo self) -> unsigned int"""
4081  return _IMP_kernel.RestraintInfo_get_number_of_filename(self)
4082 
4083  def get_filename_key(self, i):
4084  r"""get_filename_key(RestraintInfo self, unsigned int i) -> std::string"""
4085  return _IMP_kernel.RestraintInfo_get_filename_key(self, i)
4086 
4087  def get_filename_value(self, i):
4088  r"""get_filename_value(RestraintInfo self, unsigned int i) -> std::string"""
4089  return _IMP_kernel.RestraintInfo_get_filename_value(self, i)
4090 
4091  def add_floats(self, key, value):
4092  r"""add_floats(RestraintInfo self, std::string key, IMP::Floats value)"""
4093  return _IMP_kernel.RestraintInfo_add_floats(self, key, value)
4094 
4095  def get_number_of_floats(self):
4096  r"""get_number_of_floats(RestraintInfo self) -> unsigned int"""
4097  return _IMP_kernel.RestraintInfo_get_number_of_floats(self)
4098 
4099  def get_floats_key(self, i):
4100  r"""get_floats_key(RestraintInfo self, unsigned int i) -> std::string"""
4101  return _IMP_kernel.RestraintInfo_get_floats_key(self, i)
4102 
4103  def get_floats_value(self, i):
4104  r"""get_floats_value(RestraintInfo self, unsigned int i) -> IMP::Floats"""
4105  return _IMP_kernel.RestraintInfo_get_floats_value(self, i)
4106 
4107  def add_ints(self, key, value):
4108  r"""add_ints(RestraintInfo self, std::string key, IMP::Ints value)"""
4109  return _IMP_kernel.RestraintInfo_add_ints(self, key, value)
4110 
4111  def get_number_of_ints(self):
4112  r"""get_number_of_ints(RestraintInfo self) -> unsigned int"""
4113  return _IMP_kernel.RestraintInfo_get_number_of_ints(self)
4114 
4115  def get_ints_key(self, i):
4116  r"""get_ints_key(RestraintInfo self, unsigned int i) -> std::string"""
4117  return _IMP_kernel.RestraintInfo_get_ints_key(self, i)
4118 
4119  def get_ints_value(self, i):
4120  r"""get_ints_value(RestraintInfo self, unsigned int i) -> IMP::Ints"""
4121  return _IMP_kernel.RestraintInfo_get_ints_value(self, i)
4122 
4123  def add_strings(self, key, value):
4124  r"""add_strings(RestraintInfo self, std::string key, IMP::Strings value)"""
4125  return _IMP_kernel.RestraintInfo_add_strings(self, key, value)
4126 
4127  def get_number_of_strings(self):
4128  r"""get_number_of_strings(RestraintInfo self) -> unsigned int"""
4129  return _IMP_kernel.RestraintInfo_get_number_of_strings(self)
4130 
4131  def get_strings_key(self, i):
4132  r"""get_strings_key(RestraintInfo self, unsigned int i) -> std::string"""
4133  return _IMP_kernel.RestraintInfo_get_strings_key(self, i)
4134 
4135  def get_strings_value(self, i):
4136  r"""get_strings_value(RestraintInfo self, unsigned int i) -> IMP::Strings"""
4137  return _IMP_kernel.RestraintInfo_get_strings_value(self, i)
4138 
4139  def add_filenames(self, key, value):
4140  r"""add_filenames(RestraintInfo self, std::string key, IMP::Strings value)"""
4141  return _IMP_kernel.RestraintInfo_add_filenames(self, key, value)
4142 
4143  def get_number_of_filenames(self):
4144  r"""get_number_of_filenames(RestraintInfo self) -> unsigned int"""
4145  return _IMP_kernel.RestraintInfo_get_number_of_filenames(self)
4146 
4147  def get_filenames_key(self, i):
4148  r"""get_filenames_key(RestraintInfo self, unsigned int i) -> std::string"""
4149  return _IMP_kernel.RestraintInfo_get_filenames_key(self, i)
4150 
4151  def get_filenames_value(self, i):
4152  r"""get_filenames_value(RestraintInfo self, unsigned int i) -> IMP::Strings"""
4153  return _IMP_kernel.RestraintInfo_get_filenames_value(self, i)
4154 
4155  def add_particle_indexes(self, key, value):
4156  r"""add_particle_indexes(RestraintInfo self, std::string key, IMP::ParticleIndexes value)"""
4157  return _IMP_kernel.RestraintInfo_add_particle_indexes(self, key, value)
4158 
4159  def get_number_of_particle_indexes(self):
4160  r"""get_number_of_particle_indexes(RestraintInfo self) -> unsigned int"""
4161  return _IMP_kernel.RestraintInfo_get_number_of_particle_indexes(self)
4162 
4163  def get_particle_indexes_key(self, i):
4164  r"""get_particle_indexes_key(RestraintInfo self, unsigned int i) -> std::string"""
4165  return _IMP_kernel.RestraintInfo_get_particle_indexes_key(self, i)
4166 
4167  def get_particle_indexes_value(self, i):
4168  r"""get_particle_indexes_value(RestraintInfo self, unsigned int i) -> IMP::ParticleIndexes"""
4169  return _IMP_kernel.RestraintInfo_get_particle_indexes_value(self, i)
4170 
4171  def get_version_info(self):
4172  r"""get_version_info(RestraintInfo self) -> VersionInfo"""
4173  return _IMP_kernel.RestraintInfo_get_version_info(self)
4174  __swig_destroy__ = _IMP_kernel.delete_RestraintInfo
4175 
4176  def __str__(self):
4177  r"""__str__(RestraintInfo self) -> std::string"""
4178  return _IMP_kernel.RestraintInfo___str__(self)
4179 
4180  def __repr__(self):
4181  r"""__repr__(RestraintInfo self) -> std::string"""
4182  return _IMP_kernel.RestraintInfo___repr__(self)
4183 
4184  @staticmethod
4185  def get_from(o):
4186  return _object_cast_to_RestraintInfo(o)
4187 
4188 
4189 # Register RestraintInfo in _IMP_kernel:
4190 _IMP_kernel.RestraintInfo_swigregister(RestraintInfo)
4191 class Restraint(ModelObject):
4192  r"""Proxy of C++ IMP::Restraint class."""
4193 
4194  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4195 
4196  def __init__(self, *args):
4197  r"""
4198  __init__(Restraint self, Model m, std::string name) -> Restraint
4199  __init__(Restraint self) -> Restraint
4200  """
4201  if self.__class__ == Restraint:
4202  _self = None
4203  else:
4204  _self = self
4205  _IMP_kernel.Restraint_swiginit(self, _IMP_kernel.new_Restraint(_self, *args))
4206 
4207  if self.__class__ != Restraint:
4208  _director_objects.register(self)
4209 
4210 
4211 
4212 
4213  def get_score(self):
4214  r"""get_score(Restraint self) -> double"""
4215  return _IMP_kernel.Restraint_get_score(self)
4216 
4217  def evaluate(self, calc_derivs):
4218  r"""evaluate(Restraint self, bool calc_derivs) -> double"""
4219  return _IMP_kernel.Restraint_evaluate(self, calc_derivs)
4220 
4221  def evaluate_moved(self, calc_derivs, moved_pis, reset_pis):
4222  r"""evaluate_moved(Restraint self, bool calc_derivs, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis) -> double"""
4223  return _IMP_kernel.Restraint_evaluate_moved(self, calc_derivs, moved_pis, reset_pis)
4224 
4225  def evaluate_moved_if_below(self, calc_derivatives, moved_pis, reset_pis, max):
4226  r"""evaluate_moved_if_below(Restraint self, bool calc_derivatives, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, double max) -> double"""
4227  return _IMP_kernel.Restraint_evaluate_moved_if_below(self, calc_derivatives, moved_pis, reset_pis, max)
4228 
4229  def evaluate_moved_if_good(self, calc_derivatives, moved_pis, reset_pis):
4230  r"""evaluate_moved_if_good(Restraint self, bool calc_derivatives, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis) -> double"""
4231  return _IMP_kernel.Restraint_evaluate_moved_if_good(self, calc_derivatives, moved_pis, reset_pis)
4232 
4233  def evaluate_if_good(self, calc_derivatives):
4234  r"""evaluate_if_good(Restraint self, bool calc_derivatives) -> double"""
4235  return _IMP_kernel.Restraint_evaluate_if_good(self, calc_derivatives)
4236 
4237  def evaluate_if_below(self, calc_derivatives, max):
4238  r"""evaluate_if_below(Restraint self, bool calc_derivatives, double max) -> double"""
4239  return _IMP_kernel.Restraint_evaluate_if_below(self, calc_derivatives, max)
4240 
4241  def unprotected_evaluate(self, da):
4242  r"""unprotected_evaluate(Restraint self, DerivativeAccumulator da) -> double"""
4243  return _IMP_kernel.Restraint_unprotected_evaluate(self, da)
4244 
4245  def unprotected_evaluate_moved(self, da, moved_pis, reset_pis):
4246  r"""unprotected_evaluate_moved(Restraint self, DerivativeAccumulator da, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis) -> double"""
4247  return _IMP_kernel.Restraint_unprotected_evaluate_moved(self, da, moved_pis, reset_pis)
4248 
4249  def unprotected_evaluate_if_good(self, da, max):
4250  r"""unprotected_evaluate_if_good(Restraint self, DerivativeAccumulator da, double max) -> double"""
4251  return _IMP_kernel.Restraint_unprotected_evaluate_if_good(self, da, max)
4252 
4253  def unprotected_evaluate_if_below(self, da, max):
4254  r"""unprotected_evaluate_if_below(Restraint self, DerivativeAccumulator da, double max) -> double"""
4255  return _IMP_kernel.Restraint_unprotected_evaluate_if_below(self, da, max)
4256 
4257  def unprotected_evaluate_moved_if_below(self, da, moved_pis, reset_pis, max):
4258  r"""unprotected_evaluate_moved_if_below(Restraint self, DerivativeAccumulator da, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, double max) -> double"""
4259  return _IMP_kernel.Restraint_unprotected_evaluate_moved_if_below(self, da, moved_pis, reset_pis, max)
4260 
4261  def unprotected_evaluate_moved_if_good(self, da, moved_pis, reset_pis, max):
4262  r"""unprotected_evaluate_moved_if_good(Restraint self, DerivativeAccumulator da, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, double max) -> double"""
4263  return _IMP_kernel.Restraint_unprotected_evaluate_moved_if_good(self, da, moved_pis, reset_pis, max)
4264 
4265  def get_static_info(self):
4266  r"""get_static_info(Restraint self) -> RestraintInfo"""
4267  return _IMP_kernel.Restraint_get_static_info(self)
4268 
4269  def get_dynamic_info(self):
4270  r"""get_dynamic_info(Restraint self) -> RestraintInfo"""
4271  return _IMP_kernel.Restraint_get_dynamic_info(self)
4272 
4273  def add_score_and_derivatives(self, sa):
4274  r"""add_score_and_derivatives(Restraint self, ScoreAccumulator sa)"""
4275  return _IMP_kernel.Restraint_add_score_and_derivatives(self, sa)
4276 
4277  def add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis):
4278  r"""add_score_and_derivatives_moved(Restraint self, ScoreAccumulator sa, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
4279  return _IMP_kernel.Restraint_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis)
4280 
4281  def create_decomposition(self):
4282  r"""create_decomposition(Restraint self) -> Restraint"""
4283  return _IMP_kernel.Restraint_create_decomposition(self)
4284 
4285  def create_current_decomposition(self):
4286  r"""create_current_decomposition(Restraint self) -> Restraint"""
4287  return _IMP_kernel.Restraint_create_current_decomposition(self)
4288 
4289  def set_weight(self, weight):
4290  r"""set_weight(Restraint self, IMP::Float weight)"""
4291  return _IMP_kernel.Restraint_set_weight(self, weight)
4292 
4293  def get_weight(self):
4294  r"""get_weight(Restraint self) -> IMP::Float"""
4295  return _IMP_kernel.Restraint_get_weight(self)
4296 
4297  def get_maximum_score(self):
4298  r"""get_maximum_score(Restraint self) -> double"""
4299  return _IMP_kernel.Restraint_get_maximum_score(self)
4300 
4301  def set_maximum_score(self, s):
4302  r"""set_maximum_score(Restraint self, double s)"""
4303  return _IMP_kernel.Restraint_set_maximum_score(self, s)
4304 
4305  def create_scoring_function(self, *args):
4306  r"""create_scoring_function(Restraint self, double weight=1.0, double max=NO_MAX) -> ScoringFunction"""
4307  return _IMP_kernel.Restraint_create_scoring_function(self, *args)
4308 
4309  def set_last_score(self, s):
4310  r"""set_last_score(Restraint self, double s)"""
4311  return _IMP_kernel.Restraint_set_last_score(self, s)
4312 
4313  def set_last_last_score(self, s):
4314  r"""set_last_last_score(Restraint self, double s)"""
4315  return _IMP_kernel.Restraint_set_last_last_score(self, s)
4316 
4317  def get_last_score(self):
4318  r"""get_last_score(Restraint self) -> double"""
4319  return _IMP_kernel.Restraint_get_last_score(self)
4320 
4321  def get_last_last_score(self):
4322  r"""get_last_last_score(Restraint self) -> double"""
4323  return _IMP_kernel.Restraint_get_last_last_score(self)
4324 
4325  def get_is_aggregate(self):
4326  r"""get_is_aggregate(Restraint self) -> bool"""
4327  return _IMP_kernel.Restraint_get_is_aggregate(self)
4328 
4329  def get_was_good(self):
4330  r"""get_was_good(Restraint self) -> bool"""
4331  return _IMP_kernel.Restraint_get_was_good(self)
4332  __swig_destroy__ = _IMP_kernel.delete_Restraint
4333 
4334  def do_create_decomposition(self):
4335  r"""do_create_decomposition(Restraint self) -> IMP::Restraints"""
4336  return _IMP_kernel.Restraint_do_create_decomposition(self)
4337 
4338  def do_create_current_decomposition(self):
4339  r"""do_create_current_decomposition(Restraint self) -> IMP::Restraints"""
4340  return _IMP_kernel.Restraint_do_create_current_decomposition(self)
4341 
4342  def do_add_score_and_derivatives(self, sa):
4343  r"""do_add_score_and_derivatives(Restraint self, ScoreAccumulator sa)"""
4344  return _IMP_kernel.Restraint_do_add_score_and_derivatives(self, sa)
4345 
4346  def do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis):
4347  r"""do_add_score_and_derivatives_moved(Restraint self, ScoreAccumulator sa, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
4348  return _IMP_kernel.Restraint_do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis)
4349 
4350  def do_get_outputs(self):
4351  r"""do_get_outputs(Restraint self) -> IMP::ModelObjectsTemp"""
4352  return _IMP_kernel.Restraint_do_get_outputs(self)
4353  is_aggregate_ = property(_IMP_kernel.Restraint_is_aggregate__get, _IMP_kernel.Restraint_is_aggregate__set, doc=r"""is_aggregate_ : bool""")
4354 
4355  def __str__(self):
4356  r"""__str__(Restraint self) -> std::string"""
4357  return _IMP_kernel.Restraint___str__(self)
4358 
4359  def __repr__(self):
4360  r"""__repr__(Restraint self) -> std::string"""
4361  return _IMP_kernel.Restraint___repr__(self)
4362 
4363  @staticmethod
4364  def get_from(o):
4365  return _object_cast_to_Restraint(o)
4366 
4367 
4368  def get_type_name(self):
4369  return self.__class__.__name__
4370  def do_show(self, out):
4371  pass
4372  def get_version_info(self):
4373  if"IMP" == "IMP":
4374  return VersionInfo(self.__module__,
4375  __import__(self.__module__).get_module_version())
4376  else:
4377  return IMP.VersionInfo(self.__module__,
4378  __import__(self.__module__).get_module_version())
4379  @staticmethod
4380  def get_from(o):
4381  return _object_cast_to_Restraint(o)
4382 
4383  def __disown__(self):
4384  self.this.disown()
4385  _IMP_kernel.disown_Restraint(self)
4386  return weakref.proxy(self)
4387 
4388  def do_destroy(self):
4389  r"""do_destroy(Restraint self)"""
4390  return _IMP_kernel.Restraint_do_destroy(self)
4391 
4392  def handle_set_has_required_score_states(self, arg0):
4393  r"""handle_set_has_required_score_states(Restraint self, bool arg0)"""
4394  return _IMP_kernel.Restraint_handle_set_has_required_score_states(self, arg0)
4395 
4396  def do_get_inputs(self):
4397  r"""do_get_inputs(Restraint self) -> IMP::ModelObjectsTemp"""
4398  return _IMP_kernel.Restraint_do_get_inputs(self)
4399 
4400  def do_get_interactions(self):
4401  r"""do_get_interactions(Restraint self) -> IMP::ModelObjectsTemps"""
4402  return _IMP_kernel.Restraint_do_get_interactions(self)
4403 
4404 # Register Restraint in _IMP_kernel:
4405 _IMP_kernel.Restraint_swigregister(Restraint)
4406 class _RestraintsAdaptor(_InputAdaptor):
4407  r"""Proxy of C++ IMP::RestraintsAdaptor class."""
4408 
4409  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4410  __repr__ = _swig_repr
4411 
4412  def __init__(self, *args):
4413  r"""
4414  __init__(_RestraintsAdaptor self) -> _RestraintsAdaptor
4415  __init__(_RestraintsAdaptor self, IMP::Restraints const & sf) -> _RestraintsAdaptor
4416  __init__(_RestraintsAdaptor self, IMP::RestraintsTemp const & sf) -> _RestraintsAdaptor
4417  __init__(_RestraintsAdaptor self, Restraint sf) -> _RestraintsAdaptor
4418  """
4419  _IMP_kernel._RestraintsAdaptor_swiginit(self, _IMP_kernel.new__RestraintsAdaptor(*args))
4420  __swig_destroy__ = _IMP_kernel.delete__RestraintsAdaptor
4421 
4422 # Register _RestraintsAdaptor in _IMP_kernel:
4423 _IMP_kernel._RestraintsAdaptor_swigregister(_RestraintsAdaptor)
4424 class RestraintSet(Restraint):
4425  r"""Proxy of C++ IMP::RestraintSet class."""
4426 
4427  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4428 
4429  def __init__(self, *args):
4430  r"""
4431  __init__(RestraintSet self, Model m, double weight, std::string const & name="RestraintSet %1%") -> RestraintSet
4432  __init__(RestraintSet self, Model m, std::string const & name="RestraintSet %1%") -> RestraintSet
4433  __init__(RestraintSet self, IMP::RestraintsTemp const & rs, double weight, std::string const & name="RestraintSet %1%") -> RestraintSet
4434  __init__(RestraintSet self) -> RestraintSet
4435  """
4436  if self.__class__ == RestraintSet:
4437  _self = None
4438  else:
4439  _self = self
4440  _IMP_kernel.RestraintSet_swiginit(self, _IMP_kernel.new_RestraintSet(_self, *args))
4441 
4442  if self.__class__ != RestraintSet:
4443  _director_objects.register(self)
4444 
4445 
4446 
4447 
4448  def unprotected_evaluate(self, da):
4449  r"""unprotected_evaluate(RestraintSet self, DerivativeAccumulator da) -> double"""
4450  return _IMP_kernel.RestraintSet_unprotected_evaluate(self, da)
4451 
4452  def get_type_name(self):
4453  r"""get_type_name(RestraintSet self) -> std::string"""
4454  return _IMP_kernel.RestraintSet_get_type_name(self)
4455 
4456  def get_version_info(self):
4457  r"""get_version_info(RestraintSet self) -> VersionInfo"""
4458  return _IMP_kernel.RestraintSet_get_version_info(self)
4459  __swig_destroy__ = _IMP_kernel.delete_RestraintSet
4460  def __get_restraints(self): return _list_util.VarList(getdimfunc=self.get_number_of_restraints, getfunc=self.get_restraint, erasefunc=self.erase_restraint, appendfunc=self.add_restraint, extendfunc=self.add_restraints, clearfunc=self.clear_restraints, indexfunc=self._python_index_restraint)
4461  def __set_restraints(self, obj): _list_util.set_varlist(self.restraints, obj)
4462  def __del_restraints(self): _list_util.del_varlist(self.restraints)
4463  restraints = property(__get_restraints, __set_restraints, __del_restraints, doc="List of ##ucnames")
4464 
4465  def remove_restraint(self, d):
4466  r"""remove_restraint(RestraintSet self, Restraint d)"""
4467  return _IMP_kernel.RestraintSet_remove_restraint(self, d)
4468 
4469  def _python_index_restraint(self, d, start, stop):
4470  r"""_python_index_restraint(RestraintSet self, Restraint d, unsigned int start, unsigned int stop) -> unsigned int"""
4471  return _IMP_kernel.RestraintSet__python_index_restraint(self, d, start, stop)
4472 
4473  def remove_restraints(self, d):
4474  r"""remove_restraints(RestraintSet self, IMP::Restraints const & d)"""
4475  return _IMP_kernel.RestraintSet_remove_restraints(self, d)
4476 
4477  def set_restraints(self, ps):
4478  r"""set_restraints(RestraintSet self, IMP::Restraints const & ps)"""
4479  return _IMP_kernel.RestraintSet_set_restraints(self, ps)
4480 
4481  def set_restraints_order(self, objs):
4482  r"""set_restraints_order(RestraintSet self, IMP::Restraints const & objs)"""
4483  return _IMP_kernel.RestraintSet_set_restraints_order(self, objs)
4484 
4485  def add_restraint(self, obj):
4486  r"""add_restraint(RestraintSet self, Restraint obj) -> unsigned int"""
4487  return _IMP_kernel.RestraintSet_add_restraint(self, obj)
4488 
4489  def add_restraints(self, objs):
4490  r"""add_restraints(RestraintSet self, IMP::Restraints const & objs)"""
4491  return _IMP_kernel.RestraintSet_add_restraints(self, objs)
4492 
4493  def clear_restraints(self):
4494  r"""clear_restraints(RestraintSet self)"""
4495  return _IMP_kernel.RestraintSet_clear_restraints(self)
4496 
4497  def get_number_of_restraints(self):
4498  r"""get_number_of_restraints(RestraintSet self) -> unsigned int"""
4499  return _IMP_kernel.RestraintSet_get_number_of_restraints(self)
4500 
4501  def get_has_restraints(self):
4502  r"""get_has_restraints(RestraintSet self) -> bool"""
4503  return _IMP_kernel.RestraintSet_get_has_restraints(self)
4504 
4505  def get_restraint(self, i):
4506  r"""get_restraint(RestraintSet self, unsigned int i) -> Restraint"""
4507  return _IMP_kernel.RestraintSet_get_restraint(self, i)
4508 
4509  def get_restraints(self):
4510  r"""get_restraints(RestraintSet self) -> IMP::Restraints"""
4511  return _IMP_kernel.RestraintSet_get_restraints(self)
4512 
4513  def erase_restraint(self, i):
4514  r"""erase_restraint(RestraintSet self, unsigned int i)"""
4515  return _IMP_kernel.RestraintSet_erase_restraint(self, i)
4516 
4517  def reserve_restraints(self, sz):
4518  r"""reserve_restraints(RestraintSet self, unsigned int sz)"""
4519  return _IMP_kernel.RestraintSet_reserve_restraints(self, sz)
4520 
4521  def get_non_sets_and_sets(self):
4522  r"""get_non_sets_and_sets(RestraintSet self) -> std::pair< IMP::RestraintsTemp,IMP::RestraintSetsTemp >"""
4523  return _IMP_kernel.RestraintSet_get_non_sets_and_sets(self)
4524 
4525  def do_get_inputs(self):
4526  r"""do_get_inputs(RestraintSet self) -> IMP::ModelObjectsTemp"""
4527  return _IMP_kernel.RestraintSet_do_get_inputs(self)
4528 
4529  def create_scoring_function(self, *args):
4530  r"""create_scoring_function(RestraintSet self, double weight=1.0, double max=std::numeric_limits< double >::max()) -> ScoringFunction"""
4531  return _IMP_kernel.RestraintSet_create_scoring_function(self, *args)
4532 
4533  def get_last_score(self):
4534  r"""get_last_score(RestraintSet self) -> double"""
4535  return _IMP_kernel.RestraintSet_get_last_score(self)
4536 
4537  def __str__(self):
4538  r"""__str__(RestraintSet self) -> std::string"""
4539  return _IMP_kernel.RestraintSet___str__(self)
4540 
4541  def __repr__(self):
4542  r"""__repr__(RestraintSet self) -> std::string"""
4543  return _IMP_kernel.RestraintSet___repr__(self)
4544 
4545  @staticmethod
4546  def get_from(o):
4547  return _object_cast_to_RestraintSet(o)
4548 
4549 
4550  def get_type_name(self):
4551  return self.__class__.__name__
4552  def do_show(self, out):
4553  pass
4554  def get_version_info(self):
4555  if"IMP" == "IMP":
4556  return VersionInfo(self.__module__,
4557  __import__(self.__module__).get_module_version())
4558  else:
4559  return IMP.VersionInfo(self.__module__,
4560  __import__(self.__module__).get_module_version())
4561  @staticmethod
4562  def get_from(o):
4563  return _object_cast_to_RestraintSet(o)
4564 
4565 
4566  def _get_as_binary(self):
4567  r"""_get_as_binary(RestraintSet self) -> PyObject *"""
4568  return _IMP_kernel.RestraintSet__get_as_binary(self)
4569 
4570  def _set_from_binary(self, p):
4571  r"""_set_from_binary(RestraintSet self, PyObject * p)"""
4572  return _IMP_kernel.RestraintSet__set_from_binary(self, p)
4573 
4574  def __getstate__(self):
4575  p = self._get_as_binary()
4576  if len(self.__dict__) > 1:
4577  d = self.__dict__.copy()
4578  del d['this']
4579  p = (d, p)
4580  return p
4581 
4582  def __setstate__(self, p):
4583  if not hasattr(self, 'this'):
4584  self.__init__()
4585  if isinstance(p, tuple):
4586  d, p = p
4587  self.__dict__.update(d)
4588  return self._set_from_binary(p)
4589 
4590  def __disown__(self):
4591  self.this.disown()
4592  _IMP_kernel.disown_RestraintSet(self)
4593  return weakref.proxy(self)
4594 
4595  def do_destroy(self):
4596  r"""do_destroy(RestraintSet self)"""
4597  return _IMP_kernel.RestraintSet_do_destroy(self)
4598 
4599  def handle_set_has_required_score_states(self, arg0):
4600  r"""handle_set_has_required_score_states(RestraintSet self, bool arg0)"""
4601  return _IMP_kernel.RestraintSet_handle_set_has_required_score_states(self, arg0)
4602 
4603  def do_get_outputs(self):
4604  r"""do_get_outputs(RestraintSet self) -> IMP::ModelObjectsTemp"""
4605  return _IMP_kernel.RestraintSet_do_get_outputs(self)
4606 
4607  def do_get_interactions(self):
4608  r"""do_get_interactions(RestraintSet self) -> IMP::ModelObjectsTemps"""
4609  return _IMP_kernel.RestraintSet_do_get_interactions(self)
4610 
4611  def do_create_decomposition(self):
4612  r"""do_create_decomposition(RestraintSet self) -> IMP::Restraints"""
4613  return _IMP_kernel.RestraintSet_do_create_decomposition(self)
4614 
4615  def do_create_current_decomposition(self):
4616  r"""do_create_current_decomposition(RestraintSet self) -> IMP::Restraints"""
4617  return _IMP_kernel.RestraintSet_do_create_current_decomposition(self)
4618 
4619  def do_add_score_and_derivatives(self, sa):
4620  r"""do_add_score_and_derivatives(RestraintSet self, ScoreAccumulator sa)"""
4621  return _IMP_kernel.RestraintSet_do_add_score_and_derivatives(self, sa)
4622 
4623  def do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis):
4624  r"""do_add_score_and_derivatives_moved(RestraintSet self, ScoreAccumulator sa, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
4625  return _IMP_kernel.RestraintSet_do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis)
4626 
4627 # Register RestraintSet in _IMP_kernel:
4628 _IMP_kernel.RestraintSet_swigregister(RestraintSet)
4629 
4630 def get_restraints(rs):
4631  r"""get_restraints(IMP::RestraintsTemp const & rs) -> IMP::RestraintsTemp"""
4632  return _IMP_kernel.get_restraints(rs)
4633 
4634 def _check_particle(p, a):
4635  if (not p.get_is_active()):
4636  raise ValueError("Inactive Particle")
4637  if (type(a)() == a):
4638  raise IndexError("Cannot use default Index")
4639  if (not p.has_attribute(a)):
4640  raise IndexError("Particle does not have attribute")
4641 
4642 class Particle(ModelObject):
4643  r"""Proxy of C++ IMP::Particle class."""
4644 
4645  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4646 
4647  def get_version_info(self):
4648  r"""get_version_info(Particle self) -> VersionInfo"""
4649  return _IMP_kernel.Particle_get_version_info(self)
4650  __swig_destroy__ = _IMP_kernel.delete_Particle
4651 
4652  def __init__(self, *args):
4653  r"""
4654  __init__(Particle self, Model m, std::string name) -> Particle
4655  __init__(Particle self, Model m) -> Particle
4656  __init__(Particle self) -> Particle
4657  """
4658  _IMP_kernel.Particle_swiginit(self, _IMP_kernel.new_Particle(*args))
4659 
4660  def get_float_keys(self):
4661  r"""get_float_keys(Particle self) -> IMP::FloatKeys"""
4662  return _IMP_kernel.Particle_get_float_keys(self)
4663 
4664  def get_floats_keys(self):
4665  r"""get_floats_keys(Particle self) -> IMP::FloatsKeys"""
4666  return _IMP_kernel.Particle_get_floats_keys(self)
4667 
4668  def get_int_keys(self):
4669  r"""get_int_keys(Particle self) -> IMP::IntKeys"""
4670  return _IMP_kernel.Particle_get_int_keys(self)
4671 
4672  def get_ints_keys(self):
4673  r"""get_ints_keys(Particle self) -> IMP::IntsKeys"""
4674  return _IMP_kernel.Particle_get_ints_keys(self)
4675 
4676  def get_string_keys(self):
4677  r"""get_string_keys(Particle self) -> IMP::StringKeys"""
4678  return _IMP_kernel.Particle_get_string_keys(self)
4679 
4680  def get_object_keys(self):
4681  r"""get_object_keys(Particle self) -> IMP::ObjectKeys"""
4682  return _IMP_kernel.Particle_get_object_keys(self)
4683 
4684  def add_cache_attribute(self, *args):
4685  r"""
4686  add_cache_attribute(Particle self, FloatKey name, IMP::Float value)
4687  add_cache_attribute(Particle self, FloatsKey name, IMP::Floats value)
4688  add_cache_attribute(Particle self, IntKey name, IMP::Int value)
4689  add_cache_attribute(Particle self, IntsKey name, IMP::Ints value)
4690  add_cache_attribute(Particle self, StringKey name, IMP::String value)
4691  add_cache_attribute(Particle self, ObjectKey name, Object value)
4692  add_cache_attribute(Particle self, IMP::WeakObjectKey name, Object value)
4693  """
4694  return _IMP_kernel.Particle_add_cache_attribute(self, *args)
4695 
4696  def get_weak_object_keys(self):
4697  r"""get_weak_object_keys(Particle self) -> IMP::WeakObjectKeys"""
4698  return _IMP_kernel.Particle_get_weak_object_keys(self)
4699 
4700  def add_to_derivative(self, key, value, da):
4701  r"""add_to_derivative(Particle self, FloatKey key, IMP::Float value, DerivativeAccumulator da)"""
4702  return _IMP_kernel.Particle_add_to_derivative(self, key, value, da)
4703 
4704  def set_is_optimized(self, k, tf):
4705  r"""set_is_optimized(Particle self, FloatKey k, bool tf)"""
4706  return _IMP_kernel.Particle_set_is_optimized(self, k, tf)
4707 
4708  def get_is_optimized(self, k):
4709  r"""get_is_optimized(Particle self, FloatKey k) -> bool"""
4710  return _IMP_kernel.Particle_get_is_optimized(self, k)
4711 
4712  def get_derivative(self, k):
4713  r"""get_derivative(Particle self, FloatKey k) -> IMP::Float"""
4714  return _IMP_kernel.Particle_get_derivative(self, k)
4715 
4716  def add_attribute(self, *args):
4717  r"""
4718  add_attribute(Particle self, FloatKey name, IMP::Float initial_value)
4719  add_attribute(Particle self, FloatsKey name, IMP::Floats initial_value)
4720  add_attribute(Particle self, IntKey name, IMP::Int initial_value)
4721  add_attribute(Particle self, IntsKey name, IMP::Ints initial_value)
4722  add_attribute(Particle self, StringKey name, IMP::String initial_value)
4723  add_attribute(Particle self, ObjectKey name, Object initial_value)
4724  add_attribute(Particle self, IMP::WeakObjectKey name, Object initial_value)
4725  add_attribute(Particle self, SparseStringKey name, IMP::String initial_value)
4726  add_attribute(Particle self, SparseIntKey name, IMP::Int initial_value)
4727  add_attribute(Particle self, SparseFloatKey name, IMP::Float initial_value)
4728  add_attribute(Particle self, SparseParticleIndexKey name, ParticleIndex initial_value)
4729  add_attribute(Particle self, FloatKey name, IMP::Float const initial_value, bool optimized)
4730  add_attribute(Particle self, ParticleIndexKey k, Particle v)
4731  """
4732  return _IMP_kernel.Particle_add_attribute(self, *args)
4733 
4734  def has_attribute(self, *args):
4735  r"""
4736  has_attribute(Particle self, FloatKey name) -> bool
4737  has_attribute(Particle self, FloatsKey name) -> bool
4738  has_attribute(Particle self, IntKey name) -> bool
4739  has_attribute(Particle self, IntsKey name) -> bool
4740  has_attribute(Particle self, StringKey name) -> bool
4741  has_attribute(Particle self, ObjectKey name) -> bool
4742  has_attribute(Particle self, IMP::WeakObjectKey name) -> bool
4743  has_attribute(Particle self, SparseStringKey name) -> bool
4744  has_attribute(Particle self, SparseIntKey name) -> bool
4745  has_attribute(Particle self, SparseFloatKey name) -> bool
4746  has_attribute(Particle self, SparseParticleIndexKey name) -> bool
4747  has_attribute(Particle self, ParticleIndexKey k) -> bool
4748  """
4749  return _IMP_kernel.Particle_has_attribute(self, *args)
4750 
4751  def set_value(self, *args):
4752  r"""
4753  set_value(Particle self, FloatKey name, IMP::Float value)
4754  set_value(Particle self, FloatsKey name, IMP::Floats value)
4755  set_value(Particle self, IntKey name, IMP::Int value)
4756  set_value(Particle self, IntsKey name, IMP::Ints value)
4757  set_value(Particle self, StringKey name, IMP::String value)
4758  set_value(Particle self, ObjectKey name, Object value)
4759  set_value(Particle self, IMP::WeakObjectKey name, Object value)
4760  set_value(Particle self, SparseStringKey name, IMP::String value)
4761  set_value(Particle self, SparseIntKey name, IMP::Int value)
4762  set_value(Particle self, SparseFloatKey name, IMP::Float value)
4763  set_value(Particle self, SparseParticleIndexKey name, ParticleIndex value)
4764  set_value(Particle self, ParticleIndexKey k, Particle v)
4765  """
4766  return _IMP_kernel.Particle_set_value(self, *args)
4767 
4768  def get_value(self, *args):
4769  r"""
4770  get_value(Particle self, FloatKey name) -> IMP::Float
4771  get_value(Particle self, FloatsKey name) -> IMP::Floats
4772  get_value(Particle self, IntKey name) -> IMP::Int
4773  get_value(Particle self, IntsKey name) -> IMP::Ints
4774  get_value(Particle self, StringKey name) -> IMP::String
4775  get_value(Particle self, ObjectKey name) -> Object
4776  get_value(Particle self, IMP::WeakObjectKey name) -> Object
4777  get_value(Particle self, SparseStringKey name) -> IMP::String
4778  get_value(Particle self, SparseIntKey name) -> IMP::Int
4779  get_value(Particle self, SparseFloatKey name) -> IMP::Float
4780  get_value(Particle self, SparseParticleIndexKey name) -> ParticleIndex
4781  get_value(Particle self, ParticleIndexKey k) -> Particle
4782  """
4783  return _IMP_kernel.Particle_get_value(self, *args)
4784 
4785  def remove_attribute(self, *args):
4786  r"""
4787  remove_attribute(Particle self, FloatKey name)
4788  remove_attribute(Particle self, FloatsKey name)
4789  remove_attribute(Particle self, IntKey name)
4790  remove_attribute(Particle self, IntsKey name)
4791  remove_attribute(Particle self, StringKey name)
4792  remove_attribute(Particle self, ObjectKey name)
4793  remove_attribute(Particle self, IMP::WeakObjectKey name)
4794  remove_attribute(Particle self, SparseStringKey name)
4795  remove_attribute(Particle self, SparseIntKey name)
4796  remove_attribute(Particle self, SparseFloatKey name)
4797  remove_attribute(Particle self, SparseParticleIndexKey name)
4798  remove_attribute(Particle self, ParticleIndexKey k)
4799  """
4800  return _IMP_kernel.Particle_remove_attribute(self, *args)
4801 
4802  def get_particle_keys(self):
4803  r"""get_particle_keys(Particle self) -> IMP::ParticleIndexKeys"""
4804  return _IMP_kernel.Particle_get_particle_keys(self)
4805 
4806  def show(self, *args):
4807  r"""show(Particle self, _ostream out=std::cout)"""
4808  return _IMP_kernel.Particle_show(self, *args)
4809 
4810  def get_is_active(self):
4811  r"""get_is_active(Particle self) -> bool"""
4812  return _IMP_kernel.Particle_get_is_active(self)
4813 
4814  def get_index(self):
4815  r"""get_index(Particle self) -> ParticleIndex"""
4816  return _IMP_kernel.Particle_get_index(self)
4817 
4818  def __eq__(self, *args):
4819  r"""
4820  __eq__(Particle self, Particle o) -> bool
4821  __eq__(Particle self, Decorator d) -> bool
4822  """
4823  return _IMP_kernel.Particle___eq__(self, *args)
4824 
4825  def __ne__(self, *args):
4826  r"""
4827  __ne__(Particle self, Particle o) -> bool
4828  __ne__(Particle self, Decorator d) -> bool
4829  """
4830  return _IMP_kernel.Particle___ne__(self, *args)
4831 
4832  def __le__(self, *args):
4833  r"""
4834  __le__(Particle self, Particle o) -> bool
4835  __le__(Particle self, Decorator d) -> bool
4836  """
4837  return _IMP_kernel.Particle___le__(self, *args)
4838 
4839  def __lt__(self, *args):
4840  r"""
4841  __lt__(Particle self, Particle o) -> bool
4842  __lt__(Particle self, Decorator d) -> bool
4843  """
4844  return _IMP_kernel.Particle___lt__(self, *args)
4845 
4846  def __ge__(self, *args):
4847  r"""
4848  __ge__(Particle self, Particle o) -> bool
4849  __ge__(Particle self, Decorator d) -> bool
4850  """
4851  return _IMP_kernel.Particle___ge__(self, *args)
4852 
4853  def __gt__(self, *args):
4854  r"""
4855  __gt__(Particle self, Particle o) -> bool
4856  __gt__(Particle self, Decorator d) -> bool
4857  """
4858  return _IMP_kernel.Particle___gt__(self, *args)
4859 
4860  __hash__ = ModelObject.__hash__
4861 
4862 
4863  def __str__(self):
4864  r"""__str__(Particle self) -> std::string"""
4865  return _IMP_kernel.Particle___str__(self)
4866 
4867  def __repr__(self):
4868  r"""__repr__(Particle self) -> std::string"""
4869  return _IMP_kernel.Particle___repr__(self)
4870 
4871  @staticmethod
4872  def get_from(o):
4873  return _object_cast_to_Particle(o)
4874 
4875 
4876  def _get_as_binary(self):
4877  r"""_get_as_binary(Particle self) -> PyObject *"""
4878  return _IMP_kernel.Particle__get_as_binary(self)
4879 
4880  def _set_from_binary(self, p):
4881  r"""_set_from_binary(Particle self, PyObject * p)"""
4882  return _IMP_kernel.Particle__set_from_binary(self, p)
4883 
4884  def __getstate__(self):
4885  p = self._get_as_binary()
4886  if len(self.__dict__) > 1:
4887  d = self.__dict__.copy()
4888  del d['this']
4889  p = (d, p)
4890  return p
4891 
4892  def __setstate__(self, p):
4893  if not hasattr(self, 'this'):
4894  self.__init__()
4895  if isinstance(p, tuple):
4896  d, p = p
4897  self.__dict__.update(d)
4898  return self._set_from_binary(p)
4899 
4900 
4901 # Register Particle in _IMP_kernel:
4902 _IMP_kernel.Particle_swigregister(Particle)
4903 class _ParticleAdaptor(_InputAdaptor):
4904  r"""Proxy of C++ IMP::ParticleAdaptor class."""
4905 
4906  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4907  __repr__ = _swig_repr
4908 
4909  def __init__(self, *args):
4910  r"""
4911  __init__(_ParticleAdaptor self) -> _ParticleAdaptor
4912  __init__(_ParticleAdaptor self, Particle p) -> _ParticleAdaptor
4913  __init__(_ParticleAdaptor self, Decorator d) -> _ParticleAdaptor
4914  """
4915  _IMP_kernel._ParticleAdaptor_swiginit(self, _IMP_kernel.new__ParticleAdaptor(*args))
4916 
4917  def get_model(self):
4918  r"""get_model(_ParticleAdaptor self) -> Model"""
4919  return _IMP_kernel._ParticleAdaptor_get_model(self)
4920 
4921  def get_particle_index(self):
4922  r"""get_particle_index(_ParticleAdaptor self) -> ParticleIndex"""
4923  return _IMP_kernel._ParticleAdaptor_get_particle_index(self)
4924  __swig_destroy__ = _IMP_kernel.delete__ParticleAdaptor
4925 
4926 # Register _ParticleAdaptor in _IMP_kernel:
4927 _IMP_kernel._ParticleAdaptor_swigregister(_ParticleAdaptor)
4928 class _DependencyGraphVertexIndex(object):
4929  r"""Proxy of C++ IMP::DependencyGraphVertexIndex class."""
4930 
4931  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4932  __repr__ = _swig_repr
4933 
4934  def __init__(self):
4935  r"""__init__(_DependencyGraphVertexIndex self) -> _DependencyGraphVertexIndex"""
4936  _IMP_kernel._DependencyGraphVertexIndex_swiginit(self, _IMP_kernel.new__DependencyGraphVertexIndex())
4937  __swig_destroy__ = _IMP_kernel.delete__DependencyGraphVertexIndex
4938 
4939 # Register _DependencyGraphVertexIndex in _IMP_kernel:
4940 _IMP_kernel._DependencyGraphVertexIndex_swigregister(_DependencyGraphVertexIndex)
4941 
4942 def show_as_graphviz(name, out):
4943  r"""show_as_graphviz(IMP::DependencyGraph const & name, TextOutput out)"""
4944  return _IMP_kernel.show_as_graphviz(name, out)
4945 
4946 def get_vertex_index(g):
4947  r"""get_vertex_index(IMP::DependencyGraph const & g) -> _DependencyGraphVertexIndex"""
4948  return _IMP_kernel.get_vertex_index(g)
4949 
4950 def get_dependency_graph(m):
4951  r"""get_dependency_graph(Model m) -> IMP::DependencyGraph"""
4952  return _IMP_kernel.get_dependency_graph(m)
4953 
4955  r"""get_pruned_dependency_graph(Model m) -> IMP::DependencyGraph"""
4956  return _IMP_kernel.get_pruned_dependency_graph(m)
4957 
4958 def get_dependent_particles(p, all, dg, index):
4959  r"""get_dependent_particles(ModelObject p, IMP::ModelObjectsTemp const & all, IMP::DependencyGraph const & dg, _DependencyGraphVertexIndex index) -> IMP::ParticlesTemp"""
4960  return _IMP_kernel.get_dependent_particles(p, all, dg, index)
4961 
4962 def get_required_score_states(*args):
4963  r"""
4964  get_required_score_states(IMP::ModelObjectsTemp const & mos, IMP::ScoreStatesTemp exclude=IMP::ScoreStatesTemp()) -> IMP::ScoreStatesTemp
4965  get_required_score_states(ModelObject p, IMP::ModelObjectsTemp const & all, IMP::DependencyGraph const & dg, _DependencyGraphVertexIndex index) -> IMP::ScoreStatesTemp
4966  get_required_score_states(Model m, ParticleIndex pi) -> IMP::ScoreStatesTemp
4967  """
4968  return _IMP_kernel.get_required_score_states(*args)
4969 class ScoringFunction(ModelObject):
4970  r"""Proxy of C++ IMP::ScoringFunction class."""
4971 
4972  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
4973 
4974  def do_add_score_and_derivatives(self, sa, ss):
4975  r"""do_add_score_and_derivatives(ScoringFunction self, ScoreAccumulator sa, IMP::ScoreStatesTemp const & ss)"""
4976  return _IMP_kernel.ScoringFunction_do_add_score_and_derivatives(self, sa, ss)
4977 
4978  def do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss):
4979  r"""do_add_score_and_derivatives_moved(ScoringFunction self, ScoreAccumulator sa, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, IMP::ScoreStatesTemp const & ss)"""
4980  return _IMP_kernel.ScoringFunction_do_add_score_and_derivatives_moved(self, sa, moved_pis, reset_pis, ss)
4981 
4982  def get_score_accumulator_if_below(self, deriv, max):
4983  r"""get_score_accumulator_if_below(ScoringFunction self, bool deriv, double max) -> ScoreAccumulator"""
4984  return _IMP_kernel.ScoringFunction_get_score_accumulator_if_below(self, deriv, max)
4985 
4986  def get_score_accumulator_if_good(self, deriv):
4987  r"""get_score_accumulator_if_good(ScoringFunction self, bool deriv) -> ScoreAccumulator"""
4988  return _IMP_kernel.ScoringFunction_get_score_accumulator_if_good(self, deriv)
4989 
4990  def get_score_accumulator(self, deriv):
4991  r"""get_score_accumulator(ScoringFunction self, bool deriv) -> ScoreAccumulator"""
4992  return _IMP_kernel.ScoringFunction_get_score_accumulator(self, deriv)
4993 
4994  def __init__(self, *args):
4995  r"""
4996  __init__(ScoringFunction self, Model m, std::string name) -> ScoringFunction
4997  __init__(ScoringFunction self) -> ScoringFunction
4998  """
4999  if self.__class__ == ScoringFunction:
5000  _self = None
5001  else:
5002  _self = self
5003  _IMP_kernel.ScoringFunction_swiginit(self, _IMP_kernel.new_ScoringFunction(_self, *args))
5004 
5005  if self.__class__ != ScoringFunction:
5006  _director_objects.register(self)
5007 
5008 
5009 
5010 
5011  def do_get_outputs(self):
5012  r"""do_get_outputs(ScoringFunction self) -> IMP::ModelObjectsTemp"""
5013  return _IMP_kernel.ScoringFunction_do_get_outputs(self)
5014 
5015  def evaluate(self, derivatives):
5016  r"""evaluate(ScoringFunction self, bool derivatives) -> double"""
5017  return _IMP_kernel.ScoringFunction_evaluate(self, derivatives)
5018 
5019  def evaluate_if_good(self, derivatives):
5020  r"""evaluate_if_good(ScoringFunction self, bool derivatives) -> double"""
5021  return _IMP_kernel.ScoringFunction_evaluate_if_good(self, derivatives)
5022 
5023  def evaluate_if_below(self, derivatives, max):
5024  r"""evaluate_if_below(ScoringFunction self, bool derivatives, double max) -> double"""
5025  return _IMP_kernel.ScoringFunction_evaluate_if_below(self, derivatives, max)
5026 
5027  def evaluate_moved(self, derivatives, moved_pis, reset_pis):
5028  r"""evaluate_moved(ScoringFunction self, bool derivatives, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis) -> double"""
5029  return _IMP_kernel.ScoringFunction_evaluate_moved(self, derivatives, moved_pis, reset_pis)
5030 
5031  def evaluate_moved_if_below(self, derivatives, moved_pis, reset_pis, max):
5032  r"""evaluate_moved_if_below(ScoringFunction self, bool derivatives, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis, double max) -> double"""
5033  return _IMP_kernel.ScoringFunction_evaluate_moved_if_below(self, derivatives, moved_pis, reset_pis, max)
5034 
5035  def evaluate_moved_if_good(self, derivatives, moved_pis, reset_pis):
5036  r"""evaluate_moved_if_good(ScoringFunction self, bool derivatives, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis) -> double"""
5037  return _IMP_kernel.ScoringFunction_evaluate_moved_if_good(self, derivatives, moved_pis, reset_pis)
5038 
5039  def get_had_good_score(self):
5040  r"""get_had_good_score(ScoringFunction self) -> bool"""
5041  return _IMP_kernel.ScoringFunction_get_had_good_score(self)
5042 
5043  def get_last_score(self):
5044  r"""get_last_score(ScoringFunction self) -> double"""
5045  return _IMP_kernel.ScoringFunction_get_last_score(self)
5046 
5047  def create_restraints(self):
5048  r"""create_restraints(ScoringFunction self) -> IMP::Restraints"""
5049  return _IMP_kernel.ScoringFunction_create_restraints(self)
5050 
5051  def __str__(self):
5052  r"""__str__(ScoringFunction self) -> std::string"""
5053  return _IMP_kernel.ScoringFunction___str__(self)
5054 
5055  def __repr__(self):
5056  r"""__repr__(ScoringFunction self) -> std::string"""
5057  return _IMP_kernel.ScoringFunction___repr__(self)
5058 
5059  @staticmethod
5060  def get_from(o):
5061  return _object_cast_to_ScoringFunction(o)
5062 
5063 
5064  def get_type_name(self):
5065  return self.__class__.__name__
5066  def do_show(self, out):
5067  pass
5068  def get_version_info(self):
5069  if"IMP" == "IMP":
5070  return VersionInfo(self.__module__,
5071  __import__(self.__module__).get_module_version())
5072  else:
5073  return IMP.VersionInfo(self.__module__,
5074  __import__(self.__module__).get_module_version())
5075  @staticmethod
5076  def get_from(o):
5077  return _object_cast_to_ScoringFunction(o)
5078 
5079  __swig_destroy__ = _IMP_kernel.delete_ScoringFunction
5080  def __disown__(self):
5081  self.this.disown()
5082  _IMP_kernel.disown_ScoringFunction(self)
5083  return weakref.proxy(self)
5084 
5085  def do_destroy(self):
5086  r"""do_destroy(ScoringFunction self)"""
5087  return _IMP_kernel.ScoringFunction_do_destroy(self)
5088 
5089  def handle_set_has_required_score_states(self, arg0):
5090  r"""handle_set_has_required_score_states(ScoringFunction self, bool arg0)"""
5091  return _IMP_kernel.ScoringFunction_handle_set_has_required_score_states(self, arg0)
5092 
5093  def do_get_inputs(self):
5094  r"""do_get_inputs(ScoringFunction self) -> IMP::ModelObjectsTemp"""
5095  return _IMP_kernel.ScoringFunction_do_get_inputs(self)
5096 
5097  def do_get_interactions(self):
5098  r"""do_get_interactions(ScoringFunction self) -> IMP::ModelObjectsTemps"""
5099  return _IMP_kernel.ScoringFunction_do_get_interactions(self)
5100 
5101 # Register ScoringFunction in _IMP_kernel:
5102 _IMP_kernel.ScoringFunction_swigregister(ScoringFunction)
5103 
5104 def create_decomposition(*args):
5105  r"""
5106  create_decomposition(IMP::RestraintsTemp const & rs) -> IMP::Restraints
5107  create_decomposition(ScoringFunction sf) -> IMP::ScoringFunctions
5108  """
5109  return _IMP_kernel.create_decomposition(*args)
5110 class _ScoringFunctionAdaptor(_InputAdaptor):
5111  r"""Proxy of C++ IMP::ScoringFunctionAdaptor class."""
5112 
5113  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5114  __repr__ = _swig_repr
5115 
5116  def __init__(self, *args):
5117  r"""
5118  __init__(_ScoringFunctionAdaptor self) -> _ScoringFunctionAdaptor
5119  __init__(_ScoringFunctionAdaptor self, ScoringFunction sf) -> _ScoringFunctionAdaptor
5120  __init__(_ScoringFunctionAdaptor self, IMP::RestraintsTemp const & sf) -> _ScoringFunctionAdaptor
5121  __init__(_ScoringFunctionAdaptor self, IMP::Restraints const & sf) -> _ScoringFunctionAdaptor
5122  __init__(_ScoringFunctionAdaptor self, Restraint sf) -> _ScoringFunctionAdaptor
5123  """
5124  _IMP_kernel._ScoringFunctionAdaptor_swiginit(self, _IMP_kernel.new__ScoringFunctionAdaptor(*args))
5125  __swig_destroy__ = _IMP_kernel.delete__ScoringFunctionAdaptor
5126 
5127 # Register _ScoringFunctionAdaptor in _IMP_kernel:
5128 _IMP_kernel._ScoringFunctionAdaptor_swigregister(_ScoringFunctionAdaptor)
5129 
5130 def show_restraint_hierarchy(*args):
5131  r"""show_restraint_hierarchy(_ScoringFunctionAdaptor rs, _ostream out=std::cout)"""
5132  return _IMP_kernel.show_restraint_hierarchy(*args)
5133 class Undecorator(Object):
5134  r"""Proxy of C++ IMP::Undecorator class."""
5135 
5136  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5137 
5138  def __init__(self, m, name):
5139  r"""__init__(Undecorator self, Model m, std::string name) -> Undecorator"""
5140  if self.__class__ == Undecorator:
5141  _self = None
5142  else:
5143  _self = self
5144  _IMP_kernel.Undecorator_swiginit(self, _IMP_kernel.new_Undecorator(_self, m, name))
5145 
5146  if self.__class__ != Undecorator:
5147  _director_objects.register(self)
5148 
5149 
5150 
5151 
5152  def teardown(self, pi):
5153  r"""teardown(Undecorator self, ParticleIndex pi)"""
5154  return _IMP_kernel.Undecorator_teardown(self, pi)
5155 
5156  def __str__(self):
5157  r"""__str__(Undecorator self) -> std::string"""
5158  return _IMP_kernel.Undecorator___str__(self)
5159 
5160  def __repr__(self):
5161  r"""__repr__(Undecorator self) -> std::string"""
5162  return _IMP_kernel.Undecorator___repr__(self)
5163 
5164  @staticmethod
5165  def get_from(o):
5166  return _object_cast_to_Undecorator(o)
5167 
5168 
5169  def get_type_name(self):
5170  return self.__class__.__name__
5171  def do_show(self, out):
5172  pass
5173  def get_version_info(self):
5174  if"IMP" == "IMP":
5175  return VersionInfo(self.__module__,
5176  __import__(self.__module__).get_module_version())
5177  else:
5178  return IMP.VersionInfo(self.__module__,
5179  __import__(self.__module__).get_module_version())
5180  @staticmethod
5181  def get_from(o):
5182  return _object_cast_to_Undecorator(o)
5183 
5184  __swig_destroy__ = _IMP_kernel.delete_Undecorator
5185  def __disown__(self):
5186  self.this.disown()
5187  _IMP_kernel.disown_Undecorator(self)
5188  return weakref.proxy(self)
5189 
5190  def do_destroy(self):
5191  r"""do_destroy(Undecorator self)"""
5192  return _IMP_kernel.Undecorator_do_destroy(self)
5193 
5194 # Register Undecorator in _IMP_kernel:
5195 _IMP_kernel.Undecorator_swigregister(Undecorator)
5196 class Model(Object):
5197  r"""Proxy of C++ IMP::Model class."""
5198 
5199  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5200 
5201  def __init__(self, *args):
5202  r"""__init__(Model self, std::string name="Model %1%") -> Model"""
5203  _IMP_kernel.Model_swiginit(self, _IMP_kernel.new_Model(*args))
5204 
5205  if self not in _models_set:
5206  _models_set.add(self)
5207 
5208 
5209 
5210 
5211  def clear_particle_caches(self, pi):
5212  r"""clear_particle_caches(Model self, ParticleIndex pi)"""
5213  return _IMP_kernel.Model_clear_particle_caches(self, pi)
5214 
5215  def add_particle(self, name):
5216  r"""add_particle(Model self, std::string name) -> ParticleIndex"""
5217  return _IMP_kernel.Model_add_particle(self, name)
5218 
5219  def get_particle_name(self, pi):
5220  r"""get_particle_name(Model self, ParticleIndex pi) -> std::string"""
5221  return _IMP_kernel.Model_get_particle_name(self, pi)
5222 
5223  def add_undecorator(self, pi, d):
5224  r"""add_undecorator(Model self, ParticleIndex pi, Undecorator d)"""
5225  return _IMP_kernel.Model_add_undecorator(self, pi, d)
5226 
5227  def get_dependent_restraints_uncached(self, pi):
5228  r"""get_dependent_restraints_uncached(Model self, ParticleIndex pi) -> IMP::RestraintsTemp"""
5229  return _IMP_kernel.Model_get_dependent_restraints_uncached(self, pi)
5230 
5231  def get_dependent_particles_uncached(self, pi):
5232  r"""get_dependent_particles_uncached(Model self, ParticleIndex pi) -> IMP::ParticlesTemp"""
5233  return _IMP_kernel.Model_get_dependent_particles_uncached(self, pi)
5234 
5235  def get_dependent_score_states_uncached(self, pi):
5236  r"""get_dependent_score_states_uncached(Model self, ParticleIndex pi) -> IMP::ScoreStatesTemp"""
5237  return _IMP_kernel.Model_get_dependent_score_states_uncached(self, pi)
5238  def __get_score_states(self): return _list_util.VarList(getdimfunc=self.get_number_of_score_states, getfunc=self.get_score_state, erasefunc=self.erase_score_state, appendfunc=self.add_score_state, extendfunc=self.add_score_states, clearfunc=self.clear_score_states, indexfunc=self._python_index_score_state)
5239  def __set_score_states(self, obj): _list_util.set_varlist(self.score_states, obj)
5240  def __del_score_states(self): _list_util.del_varlist(self.score_states)
5241  score_states = property(__get_score_states, __set_score_states, __del_score_states, doc="List of ##ucnames")
5242 
5243  def remove_score_state(self, d):
5244  r"""remove_score_state(Model self, ScoreState d)"""
5245  return _IMP_kernel.Model_remove_score_state(self, d)
5246 
5247  def _python_index_score_state(self, d, start, stop):
5248  r"""_python_index_score_state(Model self, ScoreState d, unsigned int start, unsigned int stop) -> unsigned int"""
5249  return _IMP_kernel.Model__python_index_score_state(self, d, start, stop)
5250 
5251  def remove_score_states(self, d):
5252  r"""remove_score_states(Model self, IMP::ScoreStates const & d)"""
5253  return _IMP_kernel.Model_remove_score_states(self, d)
5254 
5255  def set_score_states(self, ps):
5256  r"""set_score_states(Model self, IMP::ScoreStates const & ps)"""
5257  return _IMP_kernel.Model_set_score_states(self, ps)
5258 
5259  def set_score_states_order(self, objs):
5260  r"""set_score_states_order(Model self, IMP::ScoreStates const & objs)"""
5261  return _IMP_kernel.Model_set_score_states_order(self, objs)
5262 
5263  def add_score_state(self, obj):
5264  r"""add_score_state(Model self, ScoreState obj) -> unsigned int"""
5265  return _IMP_kernel.Model_add_score_state(self, obj)
5266 
5267  def add_score_states(self, objs):
5268  r"""add_score_states(Model self, IMP::ScoreStates const & objs)"""
5269  return _IMP_kernel.Model_add_score_states(self, objs)
5270 
5271  def clear_score_states(self):
5272  r"""clear_score_states(Model self)"""
5273  return _IMP_kernel.Model_clear_score_states(self)
5274 
5275  def get_number_of_score_states(self):
5276  r"""get_number_of_score_states(Model self) -> unsigned int"""
5277  return _IMP_kernel.Model_get_number_of_score_states(self)
5278 
5279  def get_has_score_states(self):
5280  r"""get_has_score_states(Model self) -> bool"""
5281  return _IMP_kernel.Model_get_has_score_states(self)
5282 
5283  def get_score_state(self, i):
5284  r"""get_score_state(Model self, unsigned int i) -> ScoreState"""
5285  return _IMP_kernel.Model_get_score_state(self, i)
5286 
5287  def get_score_states(self):
5288  r"""get_score_states(Model self) -> IMP::ScoreStates"""
5289  return _IMP_kernel.Model_get_score_states(self)
5290 
5291  def erase_score_state(self, i):
5292  r"""erase_score_state(Model self, unsigned int i)"""
5293  return _IMP_kernel.Model_erase_score_state(self, i)
5294 
5295  def reserve_score_states(self, sz):
5296  r"""reserve_score_states(Model self, unsigned int sz)"""
5297  return _IMP_kernel.Model_reserve_score_states(self, sz)
5298 
5299  def update(self):
5300  r"""update(Model self)"""
5301  return _IMP_kernel.Model_update(self)
5302 
5303  def add_cache_attribute(self, *args):
5304  r"""
5305  add_cache_attribute(Model self, FloatKey attribute_key, ParticleIndex particle, IMP::Float value)
5306  add_cache_attribute(Model self, IntKey attribute_key, ParticleIndex particle, IMP::Int value)
5307  add_cache_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle, IMP::Floats value)
5308  add_cache_attribute(Model self, IntsKey attribute_key, ParticleIndex particle, IMP::Ints value)
5309  add_cache_attribute(Model self, StringKey attribute_key, ParticleIndex particle, IMP::String value)
5310  add_cache_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle, IMP::ParticleIndexes value)
5311  add_cache_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle, ParticleIndex value)
5312  add_cache_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle, Object value)
5313  add_cache_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle, Object value)
5314  """
5315  return _IMP_kernel.Model_add_cache_attribute(self, *args)
5316 
5317  def add_attribute(self, *args):
5318  r"""
5319  add_attribute(Model self, FloatKey attribute_key, ParticleIndex particle, IMP::Float value)
5320  add_attribute(Model self, IntKey attribute_key, ParticleIndex particle, IMP::Int value)
5321  add_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle, IMP::Floats value)
5322  add_attribute(Model self, IntsKey attribute_key, ParticleIndex particle, IMP::Ints value)
5323  add_attribute(Model self, StringKey attribute_key, ParticleIndex particle, IMP::String value)
5324  add_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle, IMP::ParticleIndexes value)
5325  add_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle, ParticleIndex value)
5326  add_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle, Object value)
5327  add_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle, Object value)
5328  add_attribute(Model self, SparseStringKey attribute_key, ParticleIndex particle, IMP::String value)
5329  add_attribute(Model self, SparseIntKey attribute_key, ParticleIndex particle, IMP::Int value)
5330  add_attribute(Model self, SparseFloatKey attribute_key, ParticleIndex particle, IMP::Float value)
5331  add_attribute(Model self, SparseParticleIndexKey attribute_key, ParticleIndex particle, ParticleIndex value)
5332  """
5333  return _IMP_kernel.Model_add_attribute(self, *args)
5334 
5335  def remove_attribute(self, *args):
5336  r"""
5337  remove_attribute(Model self, FloatKey attribute_key, ParticleIndex particle)
5338  remove_attribute(Model self, IntKey attribute_key, ParticleIndex particle)
5339  remove_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle)
5340  remove_attribute(Model self, IntsKey attribute_key, ParticleIndex particle)
5341  remove_attribute(Model self, StringKey attribute_key, ParticleIndex particle)
5342  remove_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle)
5343  remove_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle)
5344  remove_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle)
5345  remove_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle)
5346  remove_attribute(Model self, SparseStringKey attribute_key, ParticleIndex particle)
5347  remove_attribute(Model self, SparseIntKey attribute_key, ParticleIndex particle)
5348  remove_attribute(Model self, SparseFloatKey attribute_key, ParticleIndex particle)
5349  remove_attribute(Model self, SparseParticleIndexKey attribute_key, ParticleIndex particle)
5350  """
5351  return _IMP_kernel.Model_remove_attribute(self, *args)
5352 
5353  def get_has_attribute(self, *args):
5354  r"""
5355  get_has_attribute(Model self, FloatKey attribute_key, ParticleIndex particle) -> bool
5356  get_has_attribute(Model self, IntKey attribute_key, ParticleIndex particle) -> bool
5357  get_has_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle) -> bool
5358  get_has_attribute(Model self, IntsKey attribute_key, ParticleIndex particle) -> bool
5359  get_has_attribute(Model self, StringKey attribute_key, ParticleIndex particle) -> bool
5360  get_has_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle) -> bool
5361  get_has_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle) -> bool
5362  get_has_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle) -> bool
5363  get_has_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle) -> bool
5364  get_has_attribute(Model self, SparseStringKey attribute_key, ParticleIndex particle) -> bool
5365  get_has_attribute(Model self, SparseIntKey attribute_key, ParticleIndex particle) -> bool
5366  get_has_attribute(Model self, SparseFloatKey attribute_key, ParticleIndex particle) -> bool
5367  get_has_attribute(Model self, SparseParticleIndexKey attribute_key, ParticleIndex particle) -> bool
5368  """
5369  return _IMP_kernel.Model_get_has_attribute(self, *args)
5370 
5371  def set_attribute(self, *args):
5372  r"""
5373  set_attribute(Model self, FloatKey attribute_key, ParticleIndex particle, IMP::Float value)
5374  set_attribute(Model self, IntKey attribute_key, ParticleIndex particle, IMP::Int value)
5375  set_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle, IMP::Floats value)
5376  set_attribute(Model self, IntsKey attribute_key, ParticleIndex particle, IMP::Ints value)
5377  set_attribute(Model self, StringKey attribute_key, ParticleIndex particle, IMP::String value)
5378  set_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle, IMP::ParticleIndexes value)
5379  set_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle, ParticleIndex value)
5380  set_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle, Object value)
5381  set_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle, Object value)
5382  set_attribute(Model self, SparseStringKey attribute_key, ParticleIndex particle, IMP::String value)
5383  set_attribute(Model self, SparseIntKey attribute_key, ParticleIndex particle, IMP::Int value)
5384  set_attribute(Model self, SparseFloatKey attribute_key, ParticleIndex particle, IMP::Float value)
5385  set_attribute(Model self, SparseParticleIndexKey attribute_key, ParticleIndex particle, ParticleIndex value)
5386  """
5387  return _IMP_kernel.Model_set_attribute(self, *args)
5388 
5389  def get_attribute(self, *args):
5390  r"""
5391  get_attribute(Model self, FloatKey attribute_key, ParticleIndex particle) -> IMP::Float
5392  get_attribute(Model self, IntKey attribute_key, ParticleIndex particle) -> IMP::Int
5393  get_attribute(Model self, FloatsKey attribute_key, ParticleIndex particle) -> IMP::Floats
5394  get_attribute(Model self, IntsKey attribute_key, ParticleIndex particle) -> IMP::Ints
5395  get_attribute(Model self, StringKey attribute_key, ParticleIndex particle) -> IMP::String
5396  get_attribute(Model self, ParticleIndexesKey attribute_key, ParticleIndex particle) -> IMP::ParticleIndexes
5397  get_attribute(Model self, ParticleIndexKey attribute_key, ParticleIndex particle) -> ParticleIndex
5398  get_attribute(Model self, ObjectKey attribute_key, ParticleIndex particle) -> Object
5399  get_attribute(Model self, IMP::WeakObjectKey attribute_key, ParticleIndex particle) -> Object
5400  get_attribute(Model self, SparseStringKey attribute_key, ParticleIndex particle) -> IMP::String
5401  get_attribute(Model self, SparseIntKey attribute_key, ParticleIndex particle) -> IMP::Int
5402  get_attribute(Model self, SparseFloatKey attribute_key, ParticleIndex particle) -> IMP::Float
5403  get_attribute(Model self, SparseParticleIndexKey attribute_key, ParticleIndex particle) -> ParticleIndex
5404  """
5405  return _IMP_kernel.Model_get_attribute(self, *args)
5406 
5407  def set_is_optimized(self, arg2, arg3, arg4):
5408  r"""set_is_optimized(Model self, FloatKey arg2, ParticleIndex arg3, bool arg4)"""
5409  return _IMP_kernel.Model_set_is_optimized(self, arg2, arg3, arg4)
5410 
5411  def add_to_derivative(self, k, particle, v, da):
5412  r"""add_to_derivative(Model self, FloatKey k, ParticleIndex particle, double v, DerivativeAccumulator da)"""
5413  return _IMP_kernel.Model_add_to_derivative(self, k, particle, v, da)
5414 
5415  def get_particle(self, p):
5416  r"""get_particle(Model self, ParticleIndex p) -> Particle"""
5417  return _IMP_kernel.Model_get_particle(self, p)
5418 
5419  def get_has_particle(self, p):
5420  r"""get_has_particle(Model self, ParticleIndex p) -> bool"""
5421  return _IMP_kernel.Model_get_has_particle(self, p)
5422 
5423  def get_particle_indexes(self):
5424  r"""get_particle_indexes(Model self) -> IMP::ParticleIndexes"""
5425  return _IMP_kernel.Model_get_particle_indexes(self)
5426 
5427  def get_model_objects(self):
5428  r"""get_model_objects(Model self) -> IMP::ModelObjectsTemp"""
5429  return _IMP_kernel.Model_get_model_objects(self)
5430 
5431  def remove_particle(self, pi):
5432  r"""remove_particle(Model self, ParticleIndex pi)"""
5433  return _IMP_kernel.Model_remove_particle(self, pi)
5434 
5435  def add_data(self, mk, o):
5436  r"""add_data(Model self, ModelKey mk, Object o)"""
5437  return _IMP_kernel.Model_add_data(self, mk, o)
5438 
5439  def get_data(self, mk):
5440  r"""get_data(Model self, ModelKey mk) -> Object"""
5441  return _IMP_kernel.Model_get_data(self, mk)
5442 
5443  def remove_data(self, mk):
5444  r"""remove_data(Model self, ModelKey mk)"""
5445  return _IMP_kernel.Model_remove_data(self, mk)
5446 
5447  def get_has_data(self, mk):
5448  r"""get_has_data(Model self, ModelKey mk) -> bool"""
5449  return _IMP_kernel.Model_get_has_data(self, mk)
5450 
5451  def get_age(self):
5452  r"""get_age(Model self) -> unsigned int"""
5453  return _IMP_kernel.Model_get_age(self)
5454 
5455  def get_trigger_last_updated(self, tk):
5456  r"""get_trigger_last_updated(Model self, TriggerKey tk) -> unsigned int"""
5457  return _IMP_kernel.Model_get_trigger_last_updated(self, tk)
5458 
5459  def set_trigger_updated(self, tk):
5460  r"""set_trigger_updated(Model self, TriggerKey tk)"""
5461  return _IMP_kernel.Model_set_trigger_updated(self, tk)
5462 
5463  def get_dependencies_updated(self):
5464  r"""get_dependencies_updated(Model self) -> unsigned int"""
5465  return _IMP_kernel.Model_get_dependencies_updated(self)
5466 
5467  def save_dependencies(self):
5468  r"""save_dependencies(Model self)"""
5469  return _IMP_kernel.Model_save_dependencies(self)
5470 
5471  def restore_dependencies(self):
5472  r"""restore_dependencies(Model self)"""
5473  return _IMP_kernel.Model_restore_dependencies(self)
5474 
5475  def get_particles_size(self):
5476  r"""get_particles_size(Model self) -> unsigned int"""
5477  return _IMP_kernel.Model_get_particles_size(self)
5478 
5479  def get_unique_id(self):
5480  r"""get_unique_id(Model self) -> uint32_t"""
5481  return _IMP_kernel.Model_get_unique_id(self)
5482 
5483  @staticmethod
5484  def get_by_unique_id(id):
5485  r"""get_by_unique_id(uint32_t id) -> Model"""
5486  return _IMP_kernel.Model_get_by_unique_id(id)
5487 
5488  def get_version_info(self):
5489  r"""get_version_info(Model self) -> VersionInfo"""
5490  return _IMP_kernel.Model_get_version_info(self)
5491  __swig_destroy__ = _IMP_kernel.delete_Model
5492  def __del__(self):
5493  r"""__del__(Model self)"""
5494 
5495  _director_objects.cleanup()
5496 
5497 
5498  pass
5499 
5500 
5501  def do_destroy(self):
5502  r"""do_destroy(Model self)"""
5503  return _IMP_kernel.Model_do_destroy(self)
5504 
5505  def __str__(self):
5506  r"""__str__(Model self) -> std::string"""
5507  return _IMP_kernel.Model___str__(self)
5508 
5509  def __repr__(self):
5510  r"""__repr__(Model self) -> std::string"""
5511  return _IMP_kernel.Model___repr__(self)
5512 
5513  @staticmethod
5514  def get_from(o):
5515  return _object_cast_to_Model(o)
5516 
5517 
5518  def _get_as_binary(self):
5519  r"""_get_as_binary(Model self) -> PyObject *"""
5520  return _IMP_kernel.Model__get_as_binary(self)
5521 
5522  def _set_from_binary(self, p):
5523  r"""_set_from_binary(Model self, PyObject * p)"""
5524  return _IMP_kernel.Model__set_from_binary(self, p)
5525 
5526  def __getstate__(self):
5527  p = self._get_as_binary()
5528  if len(self.__dict__) > 1:
5529  d = self.__dict__.copy()
5530  del d['this']
5531  p = (d, p)
5532  return p
5533 
5534  def __setstate__(self, p):
5535  if not hasattr(self, 'this'):
5536  self.__init__()
5537  if isinstance(p, tuple):
5538  d, p = p
5539  self.__dict__.update(d)
5540  return self._set_from_binary(p)
5541 
5542 
5543  def get_ints_numpy(self, k):
5544  """Get the model's attribute array for IntKey k as a NumPy array.
5545  The array is indexed by ParticleIndex; particles that don't have
5546  this attribute will either be off the end of the array or will have
5547  the value INT_MAX.
5548  This is a NumPy view that shares memory with the Model. Thus,
5549  any changes to values in this list will be reflected in the Model.
5550  Also, if the Model attribute array moves in memory (e.g. if particles
5551  or attributes are added) this array will be invalidated, so it is
5552  unsafe to keep it around long term.
5553  """
5554  return _get_ints_numpy(self, k, self)
5555 
5556  def get_floats_numpy(self, k):
5557  """Get the model's attribute array for FloatKey k as a NumPy array.
5558  See Model::get_ints_numpy() for more details."""
5559  return _get_floats_numpy(self, k, self)
5560 
5562  """Get the model's attribute derivatives array for FloatKey k
5563  as a NumPy array. See Model::get_ints_numpy() for more details."""
5564  return _get_derivatives_numpy(self, k, self)
5565 
5566  def get_spheres_numpy(self):
5567  """Get the model's XYZR attribute arrays as NumPy arrays.
5568  The attribute arrays for Cartesian coordinates and radii are
5569  stored separately from those for other FloatKeys. This function
5570  returns a tuple of two NumPy arrays, the first of coordinates and
5571  the second of radii. See Model::get_ints_numpy() for more details."""
5572  return _get_spheres_numpy(self, self)
5573 
5575  """Get the model's XYZR attribute derivatives arrays as NumPy arrays.
5576  See Model::get_ints_numpy() for more details."""
5577  return _get_sphere_derivatives_numpy(self, self)
5578 
5579 
5580 # Register Model in _IMP_kernel:
5581 _IMP_kernel.Model_swigregister(Model)
5582 class Decorator(_Value):
5583  r"""Proxy of C++ IMP::Decorator class."""
5584 
5585  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5586  __repr__ = _swig_repr
5587 
5588  def __init__(self, p):
5589  r"""__init__(Decorator self, _ParticleAdaptor p) -> Decorator"""
5590  _IMP_kernel.Decorator_swiginit(self, _IMP_kernel.new_Decorator(p))
5591 
5592  def __ne__(self, o):
5593  r"""__ne__(Decorator self, Object o) -> bool"""
5594  return _IMP_kernel.Decorator___ne__(self, o)
5595 
5596  def __lt__(self, o):
5597  r"""__lt__(Decorator self, Object o) -> bool"""
5598  return _IMP_kernel.Decorator___lt__(self, o)
5599 
5600  def __gt__(self, o):
5601  r"""__gt__(Decorator self, Object o) -> bool"""
5602  return _IMP_kernel.Decorator___gt__(self, o)
5603 
5604  def __ge__(self, o):
5605  r"""__ge__(Decorator self, Object o) -> bool"""
5606  return _IMP_kernel.Decorator___ge__(self, o)
5607 
5608  def __le__(self, o):
5609  r"""__le__(Decorator self, Object o) -> bool"""
5610  return _IMP_kernel.Decorator___le__(self, o)
5611 
5612  def get_particle(self):
5613  r"""get_particle(Decorator self) -> Particle"""
5614  return _IMP_kernel.Decorator_get_particle(self)
5615 
5616  def get_particle_index(self):
5617  r"""get_particle_index(Decorator self) -> ParticleIndex"""
5618  return _IMP_kernel.Decorator_get_particle_index(self)
5619 
5620  def get_model(self):
5621  m = _IMP_kernel.Decorator_get_model(self)
5622  if m in _models_set:
5623  m = _models_set_get(m)
5624  return m
5625 
5626 
5627 
5628  def get_is_valid(self):
5629  r"""get_is_valid(Decorator self) -> bool"""
5630  return _IMP_kernel.Decorator_get_is_valid(self)
5631 
5632  def __hash__(self):
5633  r"""__hash__(Decorator self) -> std::size_t"""
5634  return _IMP_kernel.Decorator___hash__(self)
5635 
5636  def __eq__(self, *args):
5637  r"""
5638  __eq__(Decorator self, Object o) -> bool
5639  __eq__(Decorator self, Decorator o) -> bool
5640  __eq__(Decorator self, Particle o) -> bool
5641  """
5642  return _IMP_kernel.Decorator___eq__(self, *args)
5643 
5644  def __bool__(self):
5645  r"""__bool__(Decorator self) -> bool"""
5646  return _IMP_kernel.Decorator___bool__(self)
5647  __swig_destroy__ = _IMP_kernel.delete_Decorator
5648 
5649 # Register Decorator in _IMP_kernel:
5650 _IMP_kernel.Decorator_swigregister(Decorator)
5651 
5652 def check_particle(m, pi):
5653  r"""check_particle(Model m, ParticleIndex pi)"""
5654  return _IMP_kernel.check_particle(m, pi)
5655 class UnaryFunction(Object):
5656  r"""Proxy of C++ IMP::UnaryFunction class."""
5657 
5658  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5659 
5660  def __init__(self, *args):
5661  r"""__init__(UnaryFunction self, std::string name="UnaryFunction%1%") -> UnaryFunction"""
5662  if self.__class__ == UnaryFunction:
5663  _self = None
5664  else:
5665  _self = self
5666  _IMP_kernel.UnaryFunction_swiginit(self, _IMP_kernel.new_UnaryFunction(_self, *args))
5667 
5668  if self.__class__ != UnaryFunction:
5669  _director_objects.register(self)
5670 
5671 
5672 
5673 
5674  def evaluate(self, feature):
5675  r"""evaluate(UnaryFunction self, double feature) -> double"""
5676  return _IMP_kernel.UnaryFunction_evaluate(self, feature)
5677 
5678  def evaluate_with_derivative(self, feature):
5679  r"""evaluate_with_derivative(UnaryFunction self, double feature) -> IMP::DerivativePair"""
5680  return _IMP_kernel.UnaryFunction_evaluate_with_derivative(self, feature)
5681  __swig_destroy__ = _IMP_kernel.delete_UnaryFunction
5682 
5683  def __str__(self):
5684  r"""__str__(UnaryFunction self) -> std::string"""
5685  return _IMP_kernel.UnaryFunction___str__(self)
5686 
5687  def __repr__(self):
5688  r"""__repr__(UnaryFunction self) -> std::string"""
5689  return _IMP_kernel.UnaryFunction___repr__(self)
5690 
5691  @staticmethod
5692  def get_from(o):
5693  return _object_cast_to_UnaryFunction(o)
5694 
5695 
5696  def get_type_name(self):
5697  return self.__class__.__name__
5698  def do_show(self, out):
5699  pass
5700  def get_version_info(self):
5701  if"IMP" == "IMP":
5702  return VersionInfo(self.__module__,
5703  __import__(self.__module__).get_module_version())
5704  else:
5705  return IMP.VersionInfo(self.__module__,
5706  __import__(self.__module__).get_module_version())
5707  @staticmethod
5708  def get_from(o):
5709  return _object_cast_to_UnaryFunction(o)
5710 
5711  def __disown__(self):
5712  self.this.disown()
5713  _IMP_kernel.disown_UnaryFunction(self)
5714  return weakref.proxy(self)
5715 
5716  def do_destroy(self):
5717  r"""do_destroy(UnaryFunction self)"""
5718  return _IMP_kernel.UnaryFunction_do_destroy(self)
5719 
5720 # Register UnaryFunction in _IMP_kernel:
5721 _IMP_kernel.UnaryFunction_swigregister(UnaryFunction)
5722 class OptimizerState(ModelObject):
5723  r"""Proxy of C++ IMP::OptimizerState class."""
5724 
5725  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5726 
5727  def __init__(self, *args):
5728  r"""
5729  __init__(OptimizerState self, Model m, std::string name) -> OptimizerState
5730  __init__(OptimizerState self) -> OptimizerState
5731  """
5732  if self.__class__ == OptimizerState:
5733  _self = None
5734  else:
5735  _self = self
5736  _IMP_kernel.OptimizerState_swiginit(self, _IMP_kernel.new_OptimizerState(_self, *args))
5737 
5738  if self.__class__ != OptimizerState:
5739  _director_objects.register(self)
5740 
5741 
5742 
5743 
5744  def update(self):
5745  r"""update(OptimizerState self)"""
5746  return _IMP_kernel.OptimizerState_update(self)
5747 
5748  def set_is_optimizing(self, arg0):
5749  r"""set_is_optimizing(OptimizerState self, bool arg0)"""
5750  return _IMP_kernel.OptimizerState_set_is_optimizing(self, arg0)
5751 
5752  def get_optimizer(self):
5753  r"""get_optimizer(OptimizerState self) -> Optimizer"""
5754  return _IMP_kernel.OptimizerState_get_optimizer(self)
5755 
5756  def set_period(self, p):
5757  r"""set_period(OptimizerState self, unsigned int p)"""
5758  return _IMP_kernel.OptimizerState_set_period(self, p)
5759 
5760  def get_period(self):
5761  r"""get_period(OptimizerState self) -> unsigned int"""
5762  return _IMP_kernel.OptimizerState_get_period(self)
5763 
5764  def reset(self):
5765  r"""reset(OptimizerState self)"""
5766  return _IMP_kernel.OptimizerState_reset(self)
5767 
5768  def update_always(self):
5769  r"""update_always(OptimizerState self)"""
5770  return _IMP_kernel.OptimizerState_update_always(self)
5771 
5772  def get_number_of_updates(self):
5773  r"""get_number_of_updates(OptimizerState self) -> unsigned int"""
5774  return _IMP_kernel.OptimizerState_get_number_of_updates(self)
5775 
5776  def set_number_of_updates(self, n):
5777  r"""set_number_of_updates(OptimizerState self, unsigned int n)"""
5778  return _IMP_kernel.OptimizerState_set_number_of_updates(self, n)
5779  __swig_destroy__ = _IMP_kernel.delete_OptimizerState
5780 
5781  def do_update(self, arg0):
5782  r"""do_update(OptimizerState self, unsigned int arg0)"""
5783  return _IMP_kernel.OptimizerState_do_update(self, arg0)
5784 
5785  def do_set_is_optimizing(self, arg0):
5786  r"""do_set_is_optimizing(OptimizerState self, bool arg0)"""
5787  return _IMP_kernel.OptimizerState_do_set_is_optimizing(self, arg0)
5788 
5789  def do_get_inputs(self):
5790  r"""do_get_inputs(OptimizerState self) -> IMP::ModelObjectsTemp"""
5791  return _IMP_kernel.OptimizerState_do_get_inputs(self)
5792 
5793  def do_get_outputs(self):
5794  r"""do_get_outputs(OptimizerState self) -> IMP::ModelObjectsTemp"""
5795  return _IMP_kernel.OptimizerState_do_get_outputs(self)
5796 
5797  def __str__(self):
5798  r"""__str__(OptimizerState self) -> std::string"""
5799  return _IMP_kernel.OptimizerState___str__(self)
5800 
5801  def __repr__(self):
5802  r"""__repr__(OptimizerState self) -> std::string"""
5803  return _IMP_kernel.OptimizerState___repr__(self)
5804 
5805  @staticmethod
5806  def get_from(o):
5807  return _object_cast_to_OptimizerState(o)
5808 
5809 
5810  def get_type_name(self):
5811  return self.__class__.__name__
5812  def do_show(self, out):
5813  pass
5814  def get_version_info(self):
5815  if"IMP" == "IMP":
5816  return VersionInfo(self.__module__,
5817  __import__(self.__module__).get_module_version())
5818  else:
5819  return IMP.VersionInfo(self.__module__,
5820  __import__(self.__module__).get_module_version())
5821  @staticmethod
5822  def get_from(o):
5823  return _object_cast_to_OptimizerState(o)
5824 
5825  def __disown__(self):
5826  self.this.disown()
5827  _IMP_kernel.disown_OptimizerState(self)
5828  return weakref.proxy(self)
5829 
5830  def do_destroy(self):
5831  r"""do_destroy(OptimizerState self)"""
5832  return _IMP_kernel.OptimizerState_do_destroy(self)
5833 
5834  def handle_set_has_required_score_states(self, arg0):
5835  r"""handle_set_has_required_score_states(OptimizerState self, bool arg0)"""
5836  return _IMP_kernel.OptimizerState_handle_set_has_required_score_states(self, arg0)
5837 
5838  def do_get_interactions(self):
5839  r"""do_get_interactions(OptimizerState self) -> IMP::ModelObjectsTemps"""
5840  return _IMP_kernel.OptimizerState_do_get_interactions(self)
5841 
5842 # Register OptimizerState in _IMP_kernel:
5843 _IMP_kernel.OptimizerState_swigregister(OptimizerState)
5844 class Refiner(_ParticleInputs, Object):
5845  r"""Proxy of C++ IMP::Refiner class."""
5846 
5847  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5848 
5849  def __init__(self, *args):
5850  r"""__init__(Refiner self, std::string name="Refiner %1%", bool is_by_ref=False) -> Refiner"""
5851  if self.__class__ == Refiner:
5852  _self = None
5853  else:
5854  _self = self
5855  _IMP_kernel.Refiner_swiginit(self, _IMP_kernel.new_Refiner(_self, *args))
5856 
5857  if self.__class__ != Refiner:
5858  _director_objects.register(self)
5859 
5860 
5861 
5862 
5863  def get_can_refine(self, arg0):
5864  r"""get_can_refine(Refiner self, Particle arg0) -> bool"""
5865  return _IMP_kernel.Refiner_get_can_refine(self, arg0)
5866 
5867  def get_refined_indexes(self, m, pi):
5868  r"""get_refined_indexes(Refiner self, Model m, ParticleIndex pi) -> IMP::ParticleIndexes"""
5869  return _IMP_kernel.Refiner_get_refined_indexes(self, m, pi)
5870 
5871  def get_refined_indexes_by_ref(self, m, pi):
5872  r"""get_refined_indexes_by_ref(Refiner self, Model m, ParticleIndex pi) -> IMP::ParticleIndexes const &"""
5873  return _IMP_kernel.Refiner_get_refined_indexes_by_ref(self, m, pi)
5874 
5875  def get_is_by_ref_supported(self):
5876  r"""get_is_by_ref_supported(Refiner self) -> bool"""
5877  return _IMP_kernel.Refiner_get_is_by_ref_supported(self)
5878 
5879  def get_refined(self, *args):
5880  r"""
5881  get_refined(Refiner self, Particle a) -> IMP::ParticlesTemp const
5882  get_refined(Refiner self, Particle a, unsigned int i) -> Particle
5883  """
5884  return _IMP_kernel.Refiner_get_refined(self, *args)
5885 
5886  def get_number_of_refined(self, a):
5887  r"""get_number_of_refined(Refiner self, Particle a) -> unsigned int"""
5888  return _IMP_kernel.Refiner_get_number_of_refined(self, a)
5889 
5890  def __str__(self):
5891  r"""__str__(Refiner self) -> std::string"""
5892  return _IMP_kernel.Refiner___str__(self)
5893 
5894  def __repr__(self):
5895  r"""__repr__(Refiner self) -> std::string"""
5896  return _IMP_kernel.Refiner___repr__(self)
5897 
5898  @staticmethod
5899  def get_from(o):
5900  return _object_cast_to_Refiner(o)
5901 
5902 
5903  def get_type_name(self):
5904  return self.__class__.__name__
5905  def do_show(self, out):
5906  pass
5907  def get_version_info(self):
5908  if"IMP" == "IMP":
5909  return VersionInfo(self.__module__,
5910  __import__(self.__module__).get_module_version())
5911  else:
5912  return IMP.VersionInfo(self.__module__,
5913  __import__(self.__module__).get_module_version())
5914  @staticmethod
5915  def get_from(o):
5916  return _object_cast_to_Refiner(o)
5917 
5918  __swig_destroy__ = _IMP_kernel.delete_Refiner
5919  def __disown__(self):
5920  self.this.disown()
5921  _IMP_kernel.disown_Refiner(self)
5922  return weakref.proxy(self)
5923 
5924  def do_get_inputs(self, m, pis):
5925  r"""do_get_inputs(Refiner self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
5926  return _IMP_kernel.Refiner_do_get_inputs(self, m, pis)
5927 
5928  def do_destroy(self):
5929  r"""do_destroy(Refiner self)"""
5930  return _IMP_kernel.Refiner_do_destroy(self)
5931 
5932 # Register Refiner in _IMP_kernel:
5933 _IMP_kernel.Refiner_swigregister(Refiner)
5934 class Optimizer(ModelObject):
5935  r"""Proxy of C++ IMP::Optimizer class."""
5936 
5937  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
5938 
5939  def set_is_optimizing_states(self, tf):
5940  r"""set_is_optimizing_states(Optimizer self, bool tf)"""
5941  return _IMP_kernel.Optimizer_set_is_optimizing_states(self, tf)
5942 
5943  def get_optimizer_state_inputs(self):
5944  r"""get_optimizer_state_inputs(Optimizer self) -> IMP::ModelObjectsTemp"""
5945  return _IMP_kernel.Optimizer_get_optimizer_state_inputs(self)
5946 
5947  def do_get_inputs(self):
5948  r"""do_get_inputs(Optimizer self) -> IMP::ModelObjectsTemp"""
5949  return _IMP_kernel.Optimizer_do_get_inputs(self)
5950 
5951  def do_get_outputs(self):
5952  r"""do_get_outputs(Optimizer self) -> IMP::ModelObjectsTemp"""
5953  return _IMP_kernel.Optimizer_do_get_outputs(self)
5954 
5955  def __init__(self, *args):
5956  r"""
5957  __init__(Optimizer self, Model m, std::string name="Optimizer %1%") -> Optimizer
5958  __init__(Optimizer self) -> Optimizer
5959  """
5960  if self.__class__ == Optimizer:
5961  _self = None
5962  else:
5963  _self = self
5964  _IMP_kernel.Optimizer_swiginit(self, _IMP_kernel.new_Optimizer(_self, *args))
5965 
5966  if self.__class__ != Optimizer:
5967  _director_objects.register(self)
5968 
5969 
5970 
5971 
5972  def optimize(self, max_steps):
5973  r"""optimize(Optimizer self, unsigned int max_steps) -> double"""
5974  return _IMP_kernel.Optimizer_optimize(self, max_steps)
5975 
5976  def set_stop_on_good_score(self, tf):
5977  r"""set_stop_on_good_score(Optimizer self, bool tf)"""
5978  return _IMP_kernel.Optimizer_set_stop_on_good_score(self, tf)
5979 
5980  def get_stop_on_good_score(self):
5981  r"""get_stop_on_good_score(Optimizer self) -> bool"""
5982  return _IMP_kernel.Optimizer_get_stop_on_good_score(self)
5983 
5984  def get_last_score(self):
5985  r"""get_last_score(Optimizer self) -> double"""
5986  return _IMP_kernel.Optimizer_get_last_score(self)
5987 
5988  def get_scoring_function(self):
5989  r"""get_scoring_function(Optimizer self) -> ScoringFunction"""
5990  return _IMP_kernel.Optimizer_get_scoring_function(self)
5991  def __get_optimizer_states(self): return _list_util.VarList(getdimfunc=self.get_number_of_optimizer_states, getfunc=self.get_optimizer_state, erasefunc=self.erase_optimizer_state, appendfunc=self.add_optimizer_state, extendfunc=self.add_optimizer_states, clearfunc=self.clear_optimizer_states, indexfunc=self._python_index_optimizer_state)
5992  def __set_optimizer_states(self, obj): _list_util.set_varlist(self.optimizer_states, obj)
5993  def __del_optimizer_states(self): _list_util.del_varlist(self.optimizer_states)
5994  optimizer_states = property(__get_optimizer_states, __set_optimizer_states, __del_optimizer_states, doc="List of ##ucnames")
5995 
5996  def remove_optimizer_state(self, d):
5997  r"""remove_optimizer_state(Optimizer self, OptimizerState d)"""
5998  return _IMP_kernel.Optimizer_remove_optimizer_state(self, d)
5999 
6000  def _python_index_optimizer_state(self, d, start, stop):
6001  r"""_python_index_optimizer_state(Optimizer self, OptimizerState d, unsigned int start, unsigned int stop) -> unsigned int"""
6002  return _IMP_kernel.Optimizer__python_index_optimizer_state(self, d, start, stop)
6003 
6004  def remove_optimizer_states(self, d):
6005  r"""remove_optimizer_states(Optimizer self, IMP::OptimizerStates const & d)"""
6006  return _IMP_kernel.Optimizer_remove_optimizer_states(self, d)
6007 
6008  def set_optimizer_states(self, ps):
6009  r"""set_optimizer_states(Optimizer self, IMP::OptimizerStates const & ps)"""
6010  return _IMP_kernel.Optimizer_set_optimizer_states(self, ps)
6011 
6012  def set_optimizer_states_order(self, objs):
6013  r"""set_optimizer_states_order(Optimizer self, IMP::OptimizerStates const & objs)"""
6014  return _IMP_kernel.Optimizer_set_optimizer_states_order(self, objs)
6015 
6016  def add_optimizer_state(self, obj):
6017  r"""add_optimizer_state(Optimizer self, OptimizerState obj) -> unsigned int"""
6018  return _IMP_kernel.Optimizer_add_optimizer_state(self, obj)
6019 
6020  def add_optimizer_states(self, objs):
6021  r"""add_optimizer_states(Optimizer self, IMP::OptimizerStates const & objs)"""
6022  return _IMP_kernel.Optimizer_add_optimizer_states(self, objs)
6023 
6024  def clear_optimizer_states(self):
6025  r"""clear_optimizer_states(Optimizer self)"""
6026  return _IMP_kernel.Optimizer_clear_optimizer_states(self)
6027 
6028  def get_number_of_optimizer_states(self):
6029  r"""get_number_of_optimizer_states(Optimizer self) -> unsigned int"""
6030  return _IMP_kernel.Optimizer_get_number_of_optimizer_states(self)
6031 
6032  def get_has_optimizer_states(self):
6033  r"""get_has_optimizer_states(Optimizer self) -> bool"""
6034  return _IMP_kernel.Optimizer_get_has_optimizer_states(self)
6035 
6036  def get_optimizer_state(self, i):
6037  r"""get_optimizer_state(Optimizer self, unsigned int i) -> OptimizerState"""
6038  return _IMP_kernel.Optimizer_get_optimizer_state(self, i)
6039 
6040  def get_optimizer_states(self):
6041  r"""get_optimizer_states(Optimizer self) -> IMP::OptimizerStates"""
6042  return _IMP_kernel.Optimizer_get_optimizer_states(self)
6043 
6044  def erase_optimizer_state(self, i):
6045  r"""erase_optimizer_state(Optimizer self, unsigned int i)"""
6046  return _IMP_kernel.Optimizer_erase_optimizer_state(self, i)
6047 
6048  def reserve_optimizer_states(self, sz):
6049  r"""reserve_optimizer_states(Optimizer self, unsigned int sz)"""
6050  return _IMP_kernel.Optimizer_reserve_optimizer_states(self, sz)
6051 
6052  def set_scoring_function(self, sf):
6053  r"""set_scoring_function(Optimizer self, _ScoringFunctionAdaptor sf)"""
6054  return _IMP_kernel.Optimizer_set_scoring_function(self, sf)
6055  __swig_destroy__ = _IMP_kernel.delete_Optimizer
6056  def __del__(self):
6057  r"""__del__(Optimizer self)"""
6058 
6059  _director_objects.cleanup()
6060 
6061 
6062  pass
6063 
6064 
6065  def do_optimize(self, ns):
6066  r"""do_optimize(Optimizer self, unsigned int ns) -> double"""
6067  return _IMP_kernel.Optimizer_do_optimize(self, ns)
6068 
6069  def update_states(self):
6070  r"""update_states(Optimizer self)"""
6071  return _IMP_kernel.Optimizer_update_states(self)
6072 
6073  def __str__(self):
6074  r"""__str__(Optimizer self) -> std::string"""
6075  return _IMP_kernel.Optimizer___str__(self)
6076 
6077  def __repr__(self):
6078  r"""__repr__(Optimizer self) -> std::string"""
6079  return _IMP_kernel.Optimizer___repr__(self)
6080 
6081  @staticmethod
6082  def get_from(o):
6083  return _object_cast_to_Optimizer(o)
6084 
6085 
6086  def get_type_name(self):
6087  return self.__class__.__name__
6088  def do_show(self, out):
6089  pass
6090  def get_version_info(self):
6091  if"IMP" == "IMP":
6092  return VersionInfo(self.__module__,
6093  __import__(self.__module__).get_module_version())
6094  else:
6095  return IMP.VersionInfo(self.__module__,
6096  __import__(self.__module__).get_module_version())
6097  @staticmethod
6098  def get_from(o):
6099  return _object_cast_to_Optimizer(o)
6100 
6101  def __disown__(self):
6102  self.this.disown()
6103  _IMP_kernel.disown_Optimizer(self)
6104  return weakref.proxy(self)
6105 
6106  def do_destroy(self):
6107  r"""do_destroy(Optimizer self)"""
6108  return _IMP_kernel.Optimizer_do_destroy(self)
6109 
6110  def handle_set_has_required_score_states(self, arg0):
6111  r"""handle_set_has_required_score_states(Optimizer self, bool arg0)"""
6112  return _IMP_kernel.Optimizer_handle_set_has_required_score_states(self, arg0)
6113 
6114  def do_get_interactions(self):
6115  r"""do_get_interactions(Optimizer self) -> IMP::ModelObjectsTemps"""
6116  return _IMP_kernel.Optimizer_do_get_interactions(self)
6117 
6118 # Register Optimizer in _IMP_kernel:
6119 _IMP_kernel.Optimizer_swigregister(Optimizer)
6120 class AttributeOptimizer(Optimizer):
6121  r"""Proxy of C++ IMP::AttributeOptimizer class."""
6122 
6123  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6124 
6125  def __init__(self, *args):
6126  r"""
6127  __init__(AttributeOptimizer self, Model m, std::string name="Optimizer %1%") -> AttributeOptimizer
6128  __init__(AttributeOptimizer self) -> AttributeOptimizer
6129  """
6130  if self.__class__ == AttributeOptimizer:
6131  _self = None
6132  else:
6133  _self = self
6134  _IMP_kernel.AttributeOptimizer_swiginit(self, _IMP_kernel.new_AttributeOptimizer(_self, *args))
6135 
6136  if self.__class__ != AttributeOptimizer:
6137  _director_objects.register(self)
6138 
6139 
6140 
6141 
6142  def get_optimized_attributes(self):
6143  r"""get_optimized_attributes(AttributeOptimizer self) -> IMP::FloatIndexes"""
6144  return _IMP_kernel.AttributeOptimizer_get_optimized_attributes(self)
6145 
6146  def set_value(self, fi, v):
6147  r"""set_value(AttributeOptimizer self, FloatIndex fi, double v)"""
6148  return _IMP_kernel.AttributeOptimizer_set_value(self, fi, v)
6149 
6150  def get_value(self, fi):
6151  r"""get_value(AttributeOptimizer self, FloatIndex fi) -> IMP::Float"""
6152  return _IMP_kernel.AttributeOptimizer_get_value(self, fi)
6153 
6154  def get_derivative(self, fi):
6155  r"""get_derivative(AttributeOptimizer self, FloatIndex fi) -> IMP::Float"""
6156  return _IMP_kernel.AttributeOptimizer_get_derivative(self, fi)
6157 
6158  def get_width(self, k):
6159  r"""get_width(AttributeOptimizer self, FloatKey k) -> double"""
6160  return _IMP_kernel.AttributeOptimizer_get_width(self, k)
6161 
6162  def set_scaled_value(self, fi, v):
6163  r"""set_scaled_value(AttributeOptimizer self, FloatIndex fi, IMP::Float v)"""
6164  return _IMP_kernel.AttributeOptimizer_set_scaled_value(self, fi, v)
6165 
6166  def get_scaled_value(self, fi):
6167  r"""get_scaled_value(AttributeOptimizer self, FloatIndex fi) -> double"""
6168  return _IMP_kernel.AttributeOptimizer_get_scaled_value(self, fi)
6169 
6170  def get_scaled_derivative(self, fi):
6171  r"""get_scaled_derivative(AttributeOptimizer self, FloatIndex fi) -> double"""
6172  return _IMP_kernel.AttributeOptimizer_get_scaled_derivative(self, fi)
6173 
6174  def clear_range_cache(self):
6175  r"""clear_range_cache(AttributeOptimizer self)"""
6176  return _IMP_kernel.AttributeOptimizer_clear_range_cache(self)
6177 
6178  def __str__(self):
6179  r"""__str__(AttributeOptimizer self) -> std::string"""
6180  return _IMP_kernel.AttributeOptimizer___str__(self)
6181 
6182  def __repr__(self):
6183  r"""__repr__(AttributeOptimizer self) -> std::string"""
6184  return _IMP_kernel.AttributeOptimizer___repr__(self)
6185 
6186  @staticmethod
6187  def get_from(o):
6188  return _object_cast_to_AttributeOptimizer(o)
6189 
6190 
6191  def get_type_name(self):
6192  return self.__class__.__name__
6193  def do_show(self, out):
6194  pass
6195  def get_version_info(self):
6196  if"IMP" == "IMP":
6197  return VersionInfo(self.__module__,
6198  __import__(self.__module__).get_module_version())
6199  else:
6200  return IMP.VersionInfo(self.__module__,
6201  __import__(self.__module__).get_module_version())
6202  @staticmethod
6203  def get_from(o):
6204  return _object_cast_to_AttributeOptimizer(o)
6205 
6206  __swig_destroy__ = _IMP_kernel.delete_AttributeOptimizer
6207  def __disown__(self):
6208  self.this.disown()
6209  _IMP_kernel.disown_AttributeOptimizer(self)
6210  return weakref.proxy(self)
6211 
6212  def do_destroy(self):
6213  r"""do_destroy(AttributeOptimizer self)"""
6214  return _IMP_kernel.AttributeOptimizer_do_destroy(self)
6215 
6216  def handle_set_has_required_score_states(self, arg0):
6217  r"""handle_set_has_required_score_states(AttributeOptimizer self, bool arg0)"""
6218  return _IMP_kernel.AttributeOptimizer_handle_set_has_required_score_states(self, arg0)
6219 
6220  def do_get_inputs(self):
6221  r"""do_get_inputs(AttributeOptimizer self) -> IMP::ModelObjectsTemp"""
6222  return _IMP_kernel.AttributeOptimizer_do_get_inputs(self)
6223 
6224  def do_get_outputs(self):
6225  r"""do_get_outputs(AttributeOptimizer self) -> IMP::ModelObjectsTemp"""
6226  return _IMP_kernel.AttributeOptimizer_do_get_outputs(self)
6227 
6228  def do_get_interactions(self):
6229  r"""do_get_interactions(AttributeOptimizer self) -> IMP::ModelObjectsTemps"""
6230  return _IMP_kernel.AttributeOptimizer_do_get_interactions(self)
6231 
6232  def do_optimize(self, ns):
6233  r"""do_optimize(AttributeOptimizer self, unsigned int ns) -> double"""
6234  return _IMP_kernel.AttributeOptimizer_do_optimize(self, ns)
6235 
6236 # Register AttributeOptimizer in _IMP_kernel:
6237 _IMP_kernel.AttributeOptimizer_swigregister(AttributeOptimizer)
6238 class ConfigurationSet(Object):
6239  r"""Proxy of C++ IMP::ConfigurationSet class."""
6240 
6241  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6242 
6243  def __init__(self, *args):
6244  r"""__init__(ConfigurationSet self, Model m, std::string name="ConfigurationSet %1%") -> ConfigurationSet"""
6245  _IMP_kernel.ConfigurationSet_swiginit(self, _IMP_kernel.new_ConfigurationSet(*args))
6246 
6247  def save_configuration(self):
6248  r"""save_configuration(ConfigurationSet self)"""
6249  return _IMP_kernel.ConfigurationSet_save_configuration(self)
6250 
6251  def get_number_of_configurations(self):
6252  r"""get_number_of_configurations(ConfigurationSet self) -> unsigned int"""
6253  return _IMP_kernel.ConfigurationSet_get_number_of_configurations(self)
6254 
6255  def load_configuration(self, i):
6256  r"""load_configuration(ConfigurationSet self, int i)"""
6257  return _IMP_kernel.ConfigurationSet_load_configuration(self, i)
6258 
6259  def remove_configuration(self, i):
6260  r"""remove_configuration(ConfigurationSet self, unsigned int i)"""
6261  return _IMP_kernel.ConfigurationSet_remove_configuration(self, i)
6262 
6263  def get_model(self):
6264  r"""get_model(ConfigurationSet self) -> Model"""
6265  return _IMP_kernel.ConfigurationSet_get_model(self)
6266 
6267  def get_version_info(self):
6268  r"""get_version_info(ConfigurationSet self) -> VersionInfo"""
6269  return _IMP_kernel.ConfigurationSet_get_version_info(self)
6270  __swig_destroy__ = _IMP_kernel.delete_ConfigurationSet
6271 
6272  def __str__(self):
6273  r"""__str__(ConfigurationSet self) -> std::string"""
6274  return _IMP_kernel.ConfigurationSet___str__(self)
6275 
6276  def __repr__(self):
6277  r"""__repr__(ConfigurationSet self) -> std::string"""
6278  return _IMP_kernel.ConfigurationSet___repr__(self)
6279 
6280  @staticmethod
6281  def get_from(o):
6282  return _object_cast_to_ConfigurationSet(o)
6283 
6284 
6285 # Register ConfigurationSet in _IMP_kernel:
6286 _IMP_kernel.ConfigurationSet_swigregister(ConfigurationSet)
6287 class SaveToConfigurationSetOptimizerState(OptimizerState):
6288  r"""Proxy of C++ IMP::SaveToConfigurationSetOptimizerState class."""
6289 
6290  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6291 
6292  def __init__(self, cs):
6293  r"""__init__(SaveToConfigurationSetOptimizerState self, ConfigurationSet cs) -> SaveToConfigurationSetOptimizerState"""
6294  _IMP_kernel.SaveToConfigurationSetOptimizerState_swiginit(self, _IMP_kernel.new_SaveToConfigurationSetOptimizerState(cs))
6295 
6296  def get_version_info(self):
6297  r"""get_version_info(SaveToConfigurationSetOptimizerState self) -> VersionInfo"""
6298  return _IMP_kernel.SaveToConfigurationSetOptimizerState_get_version_info(self)
6299  __swig_destroy__ = _IMP_kernel.delete_SaveToConfigurationSetOptimizerState
6300 
6301  def __str__(self):
6302  r"""__str__(SaveToConfigurationSetOptimizerState self) -> std::string"""
6303  return _IMP_kernel.SaveToConfigurationSetOptimizerState___str__(self)
6304 
6305  def __repr__(self):
6306  r"""__repr__(SaveToConfigurationSetOptimizerState self) -> std::string"""
6307  return _IMP_kernel.SaveToConfigurationSetOptimizerState___repr__(self)
6308 
6309  @staticmethod
6310  def get_from(o):
6311  return _object_cast_to_SaveToConfigurationSetOptimizerState(o)
6312 
6313 
6314 # Register SaveToConfigurationSetOptimizerState in _IMP_kernel:
6315 _IMP_kernel.SaveToConfigurationSetOptimizerState_swigregister(SaveToConfigurationSetOptimizerState)
6316 class Configuration(Object):
6317  r"""Proxy of C++ IMP::Configuration class."""
6318 
6319  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6320 
6321  def __init__(self, *args):
6322  r"""
6323  __init__(Configuration self, Model m, std::string name="Configuration %1%") -> Configuration
6324  __init__(Configuration self, Model m, Configuration base, std::string name="Configuration %1%") -> Configuration
6325  """
6326  _IMP_kernel.Configuration_swiginit(self, _IMP_kernel.new_Configuration(*args))
6327 
6328  def load_configuration(self):
6329  r"""load_configuration(Configuration self)"""
6330  return _IMP_kernel.Configuration_load_configuration(self)
6331 
6332  def swap_configuration(self):
6333  r"""swap_configuration(Configuration self)"""
6334  return _IMP_kernel.Configuration_swap_configuration(self)
6335 
6336  def get_version_info(self):
6337  r"""get_version_info(Configuration self) -> VersionInfo"""
6338  return _IMP_kernel.Configuration_get_version_info(self)
6339  __swig_destroy__ = _IMP_kernel.delete_Configuration
6340 
6341  def __str__(self):
6342  r"""__str__(Configuration self) -> std::string"""
6343  return _IMP_kernel.Configuration___str__(self)
6344 
6345  def __repr__(self):
6346  r"""__repr__(Configuration self) -> std::string"""
6347  return _IMP_kernel.Configuration___repr__(self)
6348 
6349  @staticmethod
6350  def get_from(o):
6351  return _object_cast_to_Configuration(o)
6352 
6353 
6354 # Register Configuration in _IMP_kernel:
6355 _IMP_kernel.Configuration_swigregister(Configuration)
6356 class Sampler(Object):
6357  r"""Proxy of C++ IMP::Sampler class."""
6358 
6359  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6360 
6361  def __init__(self, *args):
6362  r"""__init__(Sampler self, Model m, std::string name="Sampler %1%") -> Sampler"""
6363  if self.__class__ == Sampler:
6364  _self = None
6365  else:
6366  _self = self
6367  _IMP_kernel.Sampler_swiginit(self, _IMP_kernel.new_Sampler(_self, *args))
6368 
6369  if self.__class__ != Sampler:
6370  _director_objects.register(self)
6371 
6372 
6373 
6374 
6375  def create_sample(self):
6376  r"""create_sample(Sampler self) -> ConfigurationSet"""
6377  return _IMP_kernel.Sampler_create_sample(self)
6378 
6379  def get_scoring_function(self):
6380  r"""get_scoring_function(Sampler self) -> ScoringFunction"""
6381  return _IMP_kernel.Sampler_get_scoring_function(self)
6382 
6383  def set_scoring_function(self, sf):
6384  r"""set_scoring_function(Sampler self, _ScoringFunctionAdaptor sf)"""
6385  return _IMP_kernel.Sampler_set_scoring_function(self, sf)
6386 
6387  def get_model(self):
6388  r"""get_model(Sampler self) -> Model"""
6389  return _IMP_kernel.Sampler_get_model(self)
6390 
6391  def do_sample(self):
6392  r"""do_sample(Sampler self) -> ConfigurationSet"""
6393  return _IMP_kernel.Sampler_do_sample(self)
6394  __swig_destroy__ = _IMP_kernel.delete_Sampler
6395 
6396  def __str__(self):
6397  r"""__str__(Sampler self) -> std::string"""
6398  return _IMP_kernel.Sampler___str__(self)
6399 
6400  def __repr__(self):
6401  r"""__repr__(Sampler self) -> std::string"""
6402  return _IMP_kernel.Sampler___repr__(self)
6403 
6404  @staticmethod
6405  def get_from(o):
6406  return _object_cast_to_Sampler(o)
6407 
6408 
6409  def get_type_name(self):
6410  return self.__class__.__name__
6411  def do_show(self, out):
6412  pass
6413  def get_version_info(self):
6414  if"IMP" == "IMP":
6415  return VersionInfo(self.__module__,
6416  __import__(self.__module__).get_module_version())
6417  else:
6418  return IMP.VersionInfo(self.__module__,
6419  __import__(self.__module__).get_module_version())
6420  @staticmethod
6421  def get_from(o):
6422  return _object_cast_to_Sampler(o)
6423 
6424  def __disown__(self):
6425  self.this.disown()
6426  _IMP_kernel.disown_Sampler(self)
6427  return weakref.proxy(self)
6428 
6429  def do_destroy(self):
6430  r"""do_destroy(Sampler self)"""
6431  return _IMP_kernel.Sampler_do_destroy(self)
6432 
6433 # Register Sampler in _IMP_kernel:
6434 _IMP_kernel.Sampler_swigregister(Sampler)
6435 class PairModifier(_ParticleInputs, _ParticleOutputs, Object):
6436  r"""Proxy of C++ IMP::PairModifier class."""
6437 
6438  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6439 
6440  def __init__(self, *args):
6441  r"""__init__(PairModifier self, std::string name="PairModifier %1%") -> PairModifier"""
6442  if self.__class__ == PairModifier:
6443  _self = None
6444  else:
6445  _self = self
6446  _IMP_kernel.PairModifier_swiginit(self, _IMP_kernel.new_PairModifier(_self, *args))
6447 
6448  if self.__class__ != PairModifier:
6449  _director_objects.register(self)
6450 
6451 
6452 
6453 
6454  def apply_index(self, m, v):
6455  r"""apply_index(PairModifier self, Model m, IMP::ParticleIndexPair const & v)"""
6456  return _IMP_kernel.PairModifier_apply_index(self, m, v)
6457 
6458  def apply_indexes(self, m, o, lower_bound, upper_bound):
6459  r"""apply_indexes(PairModifier self, Model m, IMP::ParticleIndexPairs const & o, unsigned int lower_bound, unsigned int upper_bound)"""
6460  return _IMP_kernel.PairModifier_apply_indexes(self, m, o, lower_bound, upper_bound)
6461 
6462  def apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis):
6463  r"""apply_indexes_moved(PairModifier self, Model m, IMP::ParticleIndexPairs const & o, unsigned int lower_bound, unsigned int upper_bound, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
6464  return _IMP_kernel.PairModifier_apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis)
6465 
6466  def __str__(self):
6467  r"""__str__(PairModifier self) -> std::string"""
6468  return _IMP_kernel.PairModifier___str__(self)
6469 
6470  def __repr__(self):
6471  r"""__repr__(PairModifier self) -> std::string"""
6472  return _IMP_kernel.PairModifier___repr__(self)
6473 
6474  @staticmethod
6475  def get_from(o):
6476  return _object_cast_to_PairModifier(o)
6477 
6478 
6479  def get_type_name(self):
6480  return self.__class__.__name__
6481  def do_show(self, out):
6482  pass
6483  def get_version_info(self):
6484  if"IMP" == "IMP":
6485  return VersionInfo(self.__module__,
6486  __import__(self.__module__).get_module_version())
6487  else:
6488  return IMP.VersionInfo(self.__module__,
6489  __import__(self.__module__).get_module_version())
6490  @staticmethod
6491  def get_from(o):
6492  return _object_cast_to_PairModifier(o)
6493 
6494  __swig_destroy__ = _IMP_kernel.delete_PairModifier
6495  def __disown__(self):
6496  self.this.disown()
6497  _IMP_kernel.disown_PairModifier(self)
6498  return weakref.proxy(self)
6499 
6500  def do_get_inputs(self, m, pis):
6501  r"""do_get_inputs(PairModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6502  return _IMP_kernel.PairModifier_do_get_inputs(self, m, pis)
6503 
6504  def do_get_outputs(self, m, pis):
6505  r"""do_get_outputs(PairModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6506  return _IMP_kernel.PairModifier_do_get_outputs(self, m, pis)
6507 
6508  def do_destroy(self):
6509  r"""do_destroy(PairModifier self)"""
6510  return _IMP_kernel.PairModifier_do_destroy(self)
6511 
6512 # Register PairModifier in _IMP_kernel:
6513 _IMP_kernel.PairModifier_swigregister(PairModifier)
6514 class PairScore(_ParticleInputs, Object):
6515  r"""Proxy of C++ IMP::PairScore class."""
6516 
6517  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6518 
6519  def __init__(self, *args):
6520  r"""__init__(PairScore self, std::string name="PairScore %1%") -> PairScore"""
6521  if self.__class__ == PairScore:
6522  _self = None
6523  else:
6524  _self = self
6525  _IMP_kernel.PairScore_swiginit(self, _IMP_kernel.new_PairScore(_self, *args))
6526 
6527  if self.__class__ != PairScore:
6528  _director_objects.register(self)
6529 
6530 
6531 
6532 
6533  def evaluate_index(self, m, vt, da):
6534  r"""evaluate_index(PairScore self, Model m, IMP::ParticleIndexPair const & vt, DerivativeAccumulator da) -> double"""
6535  return _IMP_kernel.PairScore_evaluate_index(self, m, vt, da)
6536 
6537  def evaluate_indexes(self, m, o, da, lower_bound, upper_bound):
6538  r"""evaluate_indexes(PairScore self, Model m, IMP::ParticleIndexPairs const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound) -> double"""
6539  return _IMP_kernel.PairScore_evaluate_indexes(self, m, o, da, lower_bound, upper_bound)
6540 
6541  def evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score):
6542  r"""evaluate_indexes_scores(PairScore self, Model m, IMP::ParticleIndexPairs const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score) -> double"""
6543  return _IMP_kernel.PairScore_evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score)
6544 
6545  def evaluate_indexes_delta(self, m, o, da, indexes, score):
6546  r"""evaluate_indexes_delta(PairScore self, Model m, IMP::ParticleIndexPairs const & o, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score) -> double"""
6547  return _IMP_kernel.PairScore_evaluate_indexes_delta(self, m, o, da, indexes, score)
6548 
6549  def evaluate_if_good_index(self, m, vt, da, max):
6550  r"""evaluate_if_good_index(PairScore self, Model m, IMP::ParticleIndexPair const & vt, DerivativeAccumulator da, double max) -> double"""
6551  return _IMP_kernel.PairScore_evaluate_if_good_index(self, m, vt, da, max)
6552 
6553  def evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound):
6554  r"""evaluate_if_good_indexes(PairScore self, Model m, IMP::ParticleIndexPairs const & o, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound) -> double"""
6555  return _IMP_kernel.PairScore_evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound)
6556 
6557  def create_current_decomposition(self, m, vt):
6558  r"""create_current_decomposition(PairScore self, Model m, IMP::ParticleIndexPair const & vt) -> IMP::Restraints"""
6559  return _IMP_kernel.PairScore_create_current_decomposition(self, m, vt)
6560 
6561  def do_create_current_decomposition(self, m, vt):
6562  r"""do_create_current_decomposition(PairScore self, Model m, IMP::ParticleIndexPair const & vt) -> IMP::Restraints"""
6563  return _IMP_kernel.PairScore_do_create_current_decomposition(self, m, vt)
6564  __swig_destroy__ = _IMP_kernel.delete_PairScore
6565 
6566  def __str__(self):
6567  r"""__str__(PairScore self) -> std::string"""
6568  return _IMP_kernel.PairScore___str__(self)
6569 
6570  def __repr__(self):
6571  r"""__repr__(PairScore self) -> std::string"""
6572  return _IMP_kernel.PairScore___repr__(self)
6573 
6574  @staticmethod
6575  def get_from(o):
6576  return _object_cast_to_PairScore(o)
6577 
6578 
6579  def get_type_name(self):
6580  return self.__class__.__name__
6581  def do_show(self, out):
6582  pass
6583  def get_version_info(self):
6584  if"IMP" == "IMP":
6585  return VersionInfo(self.__module__,
6586  __import__(self.__module__).get_module_version())
6587  else:
6588  return IMP.VersionInfo(self.__module__,
6589  __import__(self.__module__).get_module_version())
6590  @staticmethod
6591  def get_from(o):
6592  return _object_cast_to_PairScore(o)
6593 
6594  def __disown__(self):
6595  self.this.disown()
6596  _IMP_kernel.disown_PairScore(self)
6597  return weakref.proxy(self)
6598 
6599  def do_get_inputs(self, m, pis):
6600  r"""do_get_inputs(PairScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6601  return _IMP_kernel.PairScore_do_get_inputs(self, m, pis)
6602 
6603  def do_destroy(self):
6604  r"""do_destroy(PairScore self)"""
6605  return _IMP_kernel.PairScore_do_destroy(self)
6606 
6607 # Register PairScore in _IMP_kernel:
6608 _IMP_kernel.PairScore_swigregister(PairScore)
6609 class PairPredicate(_ParticleInputs, Object):
6610  r"""Proxy of C++ IMP::PairPredicate class."""
6611 
6612  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6613 
6614  def __init__(self, *args):
6615  r"""__init__(PairPredicate self, std::string name="PairPredicate %1%") -> PairPredicate"""
6616  if self.__class__ == PairPredicate:
6617  _self = None
6618  else:
6619  _self = self
6620  _IMP_kernel.PairPredicate_swiginit(self, _IMP_kernel.new_PairPredicate(_self, *args))
6621 
6622  if self.__class__ != PairPredicate:
6623  _director_objects.register(self)
6624 
6625 
6626 
6627 
6628  def setup_for_get_value_index_in_batch(self, arg0):
6629  r"""setup_for_get_value_index_in_batch(PairPredicate self, Model arg0)"""
6630  return _IMP_kernel.PairPredicate_setup_for_get_value_index_in_batch(self, arg0)
6631 
6632  def get_value_index_in_batch(self, m, vt):
6633  r"""get_value_index_in_batch(PairPredicate self, Model m, IMP::ParticleIndexPair const & vt) -> int"""
6634  return _IMP_kernel.PairPredicate_get_value_index_in_batch(self, m, vt)
6635 
6636  def __call__(self, m, vt):
6637  r"""__call__(PairPredicate self, Model m, IMP::ParticleIndexPair const & vt) -> int"""
6638  return _IMP_kernel.PairPredicate___call__(self, m, vt)
6639 
6640  def get_value_index(self, *args):
6641  r"""
6642  get_value_index(PairPredicate self, Model m, IMP::ParticleIndexPair const & vt) -> int
6643  get_value_index(PairPredicate self, Model m, IMP::ParticleIndexPairs const & o) -> IMP::Ints
6644  """
6645  return _IMP_kernel.PairPredicate_get_value_index(self, *args)
6646  __swig_destroy__ = _IMP_kernel.delete_PairPredicate
6647 
6648  def __str__(self):
6649  r"""__str__(PairPredicate self) -> std::string"""
6650  return _IMP_kernel.PairPredicate___str__(self)
6651 
6652  def __repr__(self):
6653  r"""__repr__(PairPredicate self) -> std::string"""
6654  return _IMP_kernel.PairPredicate___repr__(self)
6655 
6656  @staticmethod
6657  def get_from(o):
6658  return _object_cast_to_PairPredicate(o)
6659 
6660 
6661  def get_type_name(self):
6662  return self.__class__.__name__
6663  def do_show(self, out):
6664  pass
6665  def get_version_info(self):
6666  if"IMP" == "IMP":
6667  return VersionInfo(self.__module__,
6668  __import__(self.__module__).get_module_version())
6669  else:
6670  return IMP.VersionInfo(self.__module__,
6671  __import__(self.__module__).get_module_version())
6672  @staticmethod
6673  def get_from(o):
6674  return _object_cast_to_PairPredicate(o)
6675 
6676  def __disown__(self):
6677  self.this.disown()
6678  _IMP_kernel.disown_PairPredicate(self)
6679  return weakref.proxy(self)
6680 
6681  def do_get_inputs(self, m, pis):
6682  r"""do_get_inputs(PairPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6683  return _IMP_kernel.PairPredicate_do_get_inputs(self, m, pis)
6684 
6685  def do_destroy(self):
6686  r"""do_destroy(PairPredicate self)"""
6687  return _IMP_kernel.PairPredicate_do_destroy(self)
6688 
6689 # Register PairPredicate in _IMP_kernel:
6690 _IMP_kernel.PairPredicate_swigregister(PairPredicate)
6691 class PairContainer(Container):
6692  r"""Proxy of C++ IMP::PairContainer class."""
6693 
6694  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6695 
6696  def apply_generic(self, m):
6697  r"""apply_generic(PairContainer self, PairModifier m)"""
6698  return _IMP_kernel.PairContainer_apply_generic(self, m)
6699 
6700  def apply_generic_moved(self, m, moved_pis, reset_pis):
6701  r"""apply_generic_moved(PairContainer self, PairModifier m, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
6702  return _IMP_kernel.PairContainer_apply_generic_moved(self, m, moved_pis, reset_pis)
6703 
6704  def apply(self, sm):
6705  r"""apply(PairContainer self, PairModifier sm)"""
6706  return _IMP_kernel.PairContainer_apply(self, sm)
6707 
6708  def apply_moved(self, sm, moved_pis, reset_pis):
6709  r"""apply_moved(PairContainer self, PairModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
6710  return _IMP_kernel.PairContainer_apply_moved(self, sm, moved_pis, reset_pis)
6711 
6712  def get_range_indexes(self):
6713  r"""get_range_indexes(PairContainer self) -> IMP::ParticleIndexPairs"""
6714  return _IMP_kernel.PairContainer_get_range_indexes(self)
6715 
6716  def get_contents(self):
6717  r"""get_contents(PairContainer self) -> IMP::ParticleIndexPairs const &"""
6718  return _IMP_kernel.PairContainer_get_contents(self)
6719 
6720  def get_indexes(self):
6721  r"""get_indexes(PairContainer self) -> IMP::ParticleIndexPairs"""
6722  return _IMP_kernel.PairContainer_get_indexes(self)
6723 
6724  def get(self, *args):
6725  r"""
6726  get(PairContainer self) -> IMP::ParticlePairsTemp
6727  get(PairContainer self, unsigned int i) -> IMP::ParticlePair
6728  """
6729  return _IMP_kernel.PairContainer_get(self, *args)
6730 
6731  def get_number(self):
6732  r"""get_number(PairContainer self) -> unsigned int"""
6733  return _IMP_kernel.PairContainer_get_number(self)
6734 
6735  def __init__(self, *args):
6736  r"""
6737  __init__(PairContainer self, Model m, std::string name="PairContainer %1%") -> PairContainer
6738  __init__(PairContainer self) -> PairContainer
6739  """
6740  if self.__class__ == PairContainer:
6741  _self = None
6742  else:
6743  _self = self
6744  _IMP_kernel.PairContainer_swiginit(self, _IMP_kernel.new_PairContainer(_self, *args))
6745 
6746  if self.__class__ != PairContainer:
6747  _director_objects.register(self)
6748 
6749 
6750 
6751 
6752  def do_apply(self, sm):
6753  r"""do_apply(PairContainer self, PairModifier sm)"""
6754  return _IMP_kernel.PairContainer_do_apply(self, sm)
6755 
6756  def do_apply_moved(self, sm, moved_pis, reset_pis):
6757  r"""do_apply_moved(PairContainer self, PairModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
6758  return _IMP_kernel.PairContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
6759 
6760  def do_get_provides_access(self):
6761  r"""do_get_provides_access(PairContainer self) -> bool"""
6762  return _IMP_kernel.PairContainer_do_get_provides_access(self)
6763  __swig_destroy__ = _IMP_kernel.delete_PairContainer
6764 
6765  def __str__(self):
6766  r"""__str__(PairContainer self) -> std::string"""
6767  return _IMP_kernel.PairContainer___str__(self)
6768 
6769  def __repr__(self):
6770  r"""__repr__(PairContainer self) -> std::string"""
6771  return _IMP_kernel.PairContainer___repr__(self)
6772 
6773  @staticmethod
6774  def get_from(o):
6775  return _object_cast_to_PairContainer(o)
6776 
6777 
6778  def get_type_name(self):
6779  return self.__class__.__name__
6780  def do_show(self, out):
6781  pass
6782  def get_version_info(self):
6783  if"IMP" == "IMP":
6784  return VersionInfo(self.__module__,
6785  __import__(self.__module__).get_module_version())
6786  else:
6787  return IMP.VersionInfo(self.__module__,
6788  __import__(self.__module__).get_module_version())
6789  @staticmethod
6790  def get_from(o):
6791  return _object_cast_to_PairContainer(o)
6792 
6793  def __disown__(self):
6794  self.this.disown()
6795  _IMP_kernel.disown_PairContainer(self)
6796  return weakref.proxy(self)
6797 
6798  def do_destroy(self):
6799  r"""do_destroy(PairContainer self)"""
6800  return _IMP_kernel.PairContainer_do_destroy(self)
6801 
6802  def handle_set_has_required_score_states(self, arg0):
6803  r"""handle_set_has_required_score_states(PairContainer self, bool arg0)"""
6804  return _IMP_kernel.PairContainer_handle_set_has_required_score_states(self, arg0)
6805 
6806  def do_get_inputs(self):
6807  r"""do_get_inputs(PairContainer self) -> IMP::ModelObjectsTemp"""
6808  return _IMP_kernel.PairContainer_do_get_inputs(self)
6809 
6810  def do_get_interactions(self):
6811  r"""do_get_interactions(PairContainer self) -> IMP::ModelObjectsTemps"""
6812  return _IMP_kernel.PairContainer_do_get_interactions(self)
6813 
6814  def do_get_contents_hash(self):
6815  r"""do_get_contents_hash(PairContainer self) -> std::size_t"""
6816  return _IMP_kernel.PairContainer_do_get_contents_hash(self)
6817 
6818 # Register PairContainer in _IMP_kernel:
6819 _IMP_kernel.PairContainer_swigregister(PairContainer)
6820 class _PairContainerAdaptor(_InputAdaptor):
6821  r"""Proxy of C++ IMP::PairContainerAdaptor class."""
6822 
6823  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6824  __repr__ = _swig_repr
6825 
6826  def __init__(self, *args):
6827  r"""
6828  __init__(_PairContainerAdaptor self) -> _PairContainerAdaptor
6829  __init__(_PairContainerAdaptor self, PairContainer c) -> _PairContainerAdaptor
6830  __init__(_PairContainerAdaptor self, IMP::ParticlePairsTemp const & t) -> _PairContainerAdaptor
6831  """
6832  _IMP_kernel._PairContainerAdaptor_swiginit(self, _IMP_kernel.new__PairContainerAdaptor(*args))
6833 
6834  def set_name_if_default(self, name):
6835  r"""set_name_if_default(_PairContainerAdaptor self, std::string name)"""
6836  return _IMP_kernel._PairContainerAdaptor_set_name_if_default(self, name)
6837  __swig_destroy__ = _IMP_kernel.delete__PairContainerAdaptor
6838 
6839 # Register _PairContainerAdaptor in _IMP_kernel:
6840 _IMP_kernel._PairContainerAdaptor_swigregister(_PairContainerAdaptor)
6841 class QuadModifier(_ParticleInputs, _ParticleOutputs, Object):
6842  r"""Proxy of C++ IMP::QuadModifier class."""
6843 
6844  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6845 
6846  def __init__(self, *args):
6847  r"""__init__(QuadModifier self, std::string name="QuadModifier %1%") -> QuadModifier"""
6848  if self.__class__ == QuadModifier:
6849  _self = None
6850  else:
6851  _self = self
6852  _IMP_kernel.QuadModifier_swiginit(self, _IMP_kernel.new_QuadModifier(_self, *args))
6853 
6854  if self.__class__ != QuadModifier:
6855  _director_objects.register(self)
6856 
6857 
6858 
6859 
6860  def apply_index(self, m, v):
6861  r"""apply_index(QuadModifier self, Model m, IMP::ParticleIndexQuad const & v)"""
6862  return _IMP_kernel.QuadModifier_apply_index(self, m, v)
6863 
6864  def apply_indexes(self, m, o, lower_bound, upper_bound):
6865  r"""apply_indexes(QuadModifier self, Model m, IMP::ParticleIndexQuads const & o, unsigned int lower_bound, unsigned int upper_bound)"""
6866  return _IMP_kernel.QuadModifier_apply_indexes(self, m, o, lower_bound, upper_bound)
6867 
6868  def apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis):
6869  r"""apply_indexes_moved(QuadModifier self, Model m, IMP::ParticleIndexQuads const & o, unsigned int lower_bound, unsigned int upper_bound, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
6870  return _IMP_kernel.QuadModifier_apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis)
6871 
6872  def __str__(self):
6873  r"""__str__(QuadModifier self) -> std::string"""
6874  return _IMP_kernel.QuadModifier___str__(self)
6875 
6876  def __repr__(self):
6877  r"""__repr__(QuadModifier self) -> std::string"""
6878  return _IMP_kernel.QuadModifier___repr__(self)
6879 
6880  @staticmethod
6881  def get_from(o):
6882  return _object_cast_to_QuadModifier(o)
6883 
6884 
6885  def get_type_name(self):
6886  return self.__class__.__name__
6887  def do_show(self, out):
6888  pass
6889  def get_version_info(self):
6890  if"IMP" == "IMP":
6891  return VersionInfo(self.__module__,
6892  __import__(self.__module__).get_module_version())
6893  else:
6894  return IMP.VersionInfo(self.__module__,
6895  __import__(self.__module__).get_module_version())
6896  @staticmethod
6897  def get_from(o):
6898  return _object_cast_to_QuadModifier(o)
6899 
6900  __swig_destroy__ = _IMP_kernel.delete_QuadModifier
6901  def __disown__(self):
6902  self.this.disown()
6903  _IMP_kernel.disown_QuadModifier(self)
6904  return weakref.proxy(self)
6905 
6906  def do_get_inputs(self, m, pis):
6907  r"""do_get_inputs(QuadModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6908  return _IMP_kernel.QuadModifier_do_get_inputs(self, m, pis)
6909 
6910  def do_get_outputs(self, m, pis):
6911  r"""do_get_outputs(QuadModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
6912  return _IMP_kernel.QuadModifier_do_get_outputs(self, m, pis)
6913 
6914  def do_destroy(self):
6915  r"""do_destroy(QuadModifier self)"""
6916  return _IMP_kernel.QuadModifier_do_destroy(self)
6917 
6918 # Register QuadModifier in _IMP_kernel:
6919 _IMP_kernel.QuadModifier_swigregister(QuadModifier)
6920 class QuadScore(_ParticleInputs, Object):
6921  r"""Proxy of C++ IMP::QuadScore class."""
6922 
6923  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
6924 
6925  def __init__(self, *args):
6926  r"""__init__(QuadScore self, std::string name="QuadScore %1%") -> QuadScore"""
6927  if self.__class__ == QuadScore:
6928  _self = None
6929  else:
6930  _self = self
6931  _IMP_kernel.QuadScore_swiginit(self, _IMP_kernel.new_QuadScore(_self, *args))
6932 
6933  if self.__class__ != QuadScore:
6934  _director_objects.register(self)
6935 
6936 
6937 
6938 
6939  def evaluate_index(self, m, vt, da):
6940  r"""evaluate_index(QuadScore self, Model m, IMP::ParticleIndexQuad const & vt, DerivativeAccumulator da) -> double"""
6941  return _IMP_kernel.QuadScore_evaluate_index(self, m, vt, da)
6942 
6943  def evaluate_indexes(self, m, o, da, lower_bound, upper_bound):
6944  r"""evaluate_indexes(QuadScore self, Model m, IMP::ParticleIndexQuads const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound) -> double"""
6945  return _IMP_kernel.QuadScore_evaluate_indexes(self, m, o, da, lower_bound, upper_bound)
6946 
6947  def evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score):
6948  r"""evaluate_indexes_scores(QuadScore self, Model m, IMP::ParticleIndexQuads const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score) -> double"""
6949  return _IMP_kernel.QuadScore_evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score)
6950 
6951  def evaluate_indexes_delta(self, m, o, da, indexes, score):
6952  r"""evaluate_indexes_delta(QuadScore self, Model m, IMP::ParticleIndexQuads const & o, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score) -> double"""
6953  return _IMP_kernel.QuadScore_evaluate_indexes_delta(self, m, o, da, indexes, score)
6954 
6955  def evaluate_if_good_index(self, m, vt, da, max):
6956  r"""evaluate_if_good_index(QuadScore self, Model m, IMP::ParticleIndexQuad const & vt, DerivativeAccumulator da, double max) -> double"""
6957  return _IMP_kernel.QuadScore_evaluate_if_good_index(self, m, vt, da, max)
6958 
6959  def evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound):
6960  r"""evaluate_if_good_indexes(QuadScore self, Model m, IMP::ParticleIndexQuads const & o, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound) -> double"""
6961  return _IMP_kernel.QuadScore_evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound)
6962 
6963  def create_current_decomposition(self, m, vt):
6964  r"""create_current_decomposition(QuadScore self, Model m, IMP::ParticleIndexQuad const & vt) -> IMP::Restraints"""
6965  return _IMP_kernel.QuadScore_create_current_decomposition(self, m, vt)
6966 
6967  def do_create_current_decomposition(self, m, vt):
6968  r"""do_create_current_decomposition(QuadScore self, Model m, IMP::ParticleIndexQuad const & vt) -> IMP::Restraints"""
6969  return _IMP_kernel.QuadScore_do_create_current_decomposition(self, m, vt)
6970  __swig_destroy__ = _IMP_kernel.delete_QuadScore
6971 
6972  def __str__(self):
6973  r"""__str__(QuadScore self) -> std::string"""
6974  return _IMP_kernel.QuadScore___str__(self)
6975 
6976  def __repr__(self):
6977  r"""__repr__(QuadScore self) -> std::string"""
6978  return _IMP_kernel.QuadScore___repr__(self)
6979 
6980  @staticmethod
6981  def get_from(o):
6982  return _object_cast_to_QuadScore(o)
6983 
6984 
6985  def get_type_name(self):
6986  return self.__class__.__name__
6987  def do_show(self, out):
6988  pass
6989  def get_version_info(self):
6990  if"IMP" == "IMP":
6991  return VersionInfo(self.__module__,
6992  __import__(self.__module__).get_module_version())
6993  else:
6994  return IMP.VersionInfo(self.__module__,
6995  __import__(self.__module__).get_module_version())
6996  @staticmethod
6997  def get_from(o):
6998  return _object_cast_to_QuadScore(o)
6999 
7000  def __disown__(self):
7001  self.this.disown()
7002  _IMP_kernel.disown_QuadScore(self)
7003  return weakref.proxy(self)
7004 
7005  def do_get_inputs(self, m, pis):
7006  r"""do_get_inputs(QuadScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7007  return _IMP_kernel.QuadScore_do_get_inputs(self, m, pis)
7008 
7009  def do_destroy(self):
7010  r"""do_destroy(QuadScore self)"""
7011  return _IMP_kernel.QuadScore_do_destroy(self)
7012 
7013 # Register QuadScore in _IMP_kernel:
7014 _IMP_kernel.QuadScore_swigregister(QuadScore)
7015 class QuadPredicate(_ParticleInputs, Object):
7016  r"""Proxy of C++ IMP::QuadPredicate class."""
7017 
7018  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7019 
7020  def __init__(self, *args):
7021  r"""__init__(QuadPredicate self, std::string name="QuadPredicate %1%") -> QuadPredicate"""
7022  if self.__class__ == QuadPredicate:
7023  _self = None
7024  else:
7025  _self = self
7026  _IMP_kernel.QuadPredicate_swiginit(self, _IMP_kernel.new_QuadPredicate(_self, *args))
7027 
7028  if self.__class__ != QuadPredicate:
7029  _director_objects.register(self)
7030 
7031 
7032 
7033 
7034  def setup_for_get_value_index_in_batch(self, arg0):
7035  r"""setup_for_get_value_index_in_batch(QuadPredicate self, Model arg0)"""
7036  return _IMP_kernel.QuadPredicate_setup_for_get_value_index_in_batch(self, arg0)
7037 
7038  def get_value_index_in_batch(self, m, vt):
7039  r"""get_value_index_in_batch(QuadPredicate self, Model m, IMP::ParticleIndexQuad const & vt) -> int"""
7040  return _IMP_kernel.QuadPredicate_get_value_index_in_batch(self, m, vt)
7041 
7042  def __call__(self, m, vt):
7043  r"""__call__(QuadPredicate self, Model m, IMP::ParticleIndexQuad const & vt) -> int"""
7044  return _IMP_kernel.QuadPredicate___call__(self, m, vt)
7045 
7046  def get_value_index(self, *args):
7047  r"""
7048  get_value_index(QuadPredicate self, Model m, IMP::ParticleIndexQuad const & vt) -> int
7049  get_value_index(QuadPredicate self, Model m, IMP::ParticleIndexQuads const & o) -> IMP::Ints
7050  """
7051  return _IMP_kernel.QuadPredicate_get_value_index(self, *args)
7052  __swig_destroy__ = _IMP_kernel.delete_QuadPredicate
7053 
7054  def __str__(self):
7055  r"""__str__(QuadPredicate self) -> std::string"""
7056  return _IMP_kernel.QuadPredicate___str__(self)
7057 
7058  def __repr__(self):
7059  r"""__repr__(QuadPredicate self) -> std::string"""
7060  return _IMP_kernel.QuadPredicate___repr__(self)
7061 
7062  @staticmethod
7063  def get_from(o):
7064  return _object_cast_to_QuadPredicate(o)
7065 
7066 
7067  def get_type_name(self):
7068  return self.__class__.__name__
7069  def do_show(self, out):
7070  pass
7071  def get_version_info(self):
7072  if"IMP" == "IMP":
7073  return VersionInfo(self.__module__,
7074  __import__(self.__module__).get_module_version())
7075  else:
7076  return IMP.VersionInfo(self.__module__,
7077  __import__(self.__module__).get_module_version())
7078  @staticmethod
7079  def get_from(o):
7080  return _object_cast_to_QuadPredicate(o)
7081 
7082  def __disown__(self):
7083  self.this.disown()
7084  _IMP_kernel.disown_QuadPredicate(self)
7085  return weakref.proxy(self)
7086 
7087  def do_get_inputs(self, m, pis):
7088  r"""do_get_inputs(QuadPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7089  return _IMP_kernel.QuadPredicate_do_get_inputs(self, m, pis)
7090 
7091  def do_destroy(self):
7092  r"""do_destroy(QuadPredicate self)"""
7093  return _IMP_kernel.QuadPredicate_do_destroy(self)
7094 
7095 # Register QuadPredicate in _IMP_kernel:
7096 _IMP_kernel.QuadPredicate_swigregister(QuadPredicate)
7097 class QuadContainer(Container):
7098  r"""Proxy of C++ IMP::QuadContainer class."""
7099 
7100  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7101 
7102  def apply_generic(self, m):
7103  r"""apply_generic(QuadContainer self, QuadModifier m)"""
7104  return _IMP_kernel.QuadContainer_apply_generic(self, m)
7105 
7106  def apply_generic_moved(self, m, moved_pis, reset_pis):
7107  r"""apply_generic_moved(QuadContainer self, QuadModifier m, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7108  return _IMP_kernel.QuadContainer_apply_generic_moved(self, m, moved_pis, reset_pis)
7109 
7110  def apply(self, sm):
7111  r"""apply(QuadContainer self, QuadModifier sm)"""
7112  return _IMP_kernel.QuadContainer_apply(self, sm)
7113 
7114  def apply_moved(self, sm, moved_pis, reset_pis):
7115  r"""apply_moved(QuadContainer self, QuadModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7116  return _IMP_kernel.QuadContainer_apply_moved(self, sm, moved_pis, reset_pis)
7117 
7118  def get_range_indexes(self):
7119  r"""get_range_indexes(QuadContainer self) -> IMP::ParticleIndexQuads"""
7120  return _IMP_kernel.QuadContainer_get_range_indexes(self)
7121 
7122  def get_contents(self):
7123  r"""get_contents(QuadContainer self) -> IMP::ParticleIndexQuads const &"""
7124  return _IMP_kernel.QuadContainer_get_contents(self)
7125 
7126  def get_indexes(self):
7127  r"""get_indexes(QuadContainer self) -> IMP::ParticleIndexQuads"""
7128  return _IMP_kernel.QuadContainer_get_indexes(self)
7129 
7130  def get(self, *args):
7131  r"""
7132  get(QuadContainer self) -> IMP::ParticleQuadsTemp
7133  get(QuadContainer self, unsigned int i) -> IMP::ParticleQuad
7134  """
7135  return _IMP_kernel.QuadContainer_get(self, *args)
7136 
7137  def get_number(self):
7138  r"""get_number(QuadContainer self) -> unsigned int"""
7139  return _IMP_kernel.QuadContainer_get_number(self)
7140 
7141  def __init__(self, *args):
7142  r"""
7143  __init__(QuadContainer self, Model m, std::string name="QuadContainer %1%") -> QuadContainer
7144  __init__(QuadContainer self) -> QuadContainer
7145  """
7146  if self.__class__ == QuadContainer:
7147  _self = None
7148  else:
7149  _self = self
7150  _IMP_kernel.QuadContainer_swiginit(self, _IMP_kernel.new_QuadContainer(_self, *args))
7151 
7152  if self.__class__ != QuadContainer:
7153  _director_objects.register(self)
7154 
7155 
7156 
7157 
7158  def do_apply(self, sm):
7159  r"""do_apply(QuadContainer self, QuadModifier sm)"""
7160  return _IMP_kernel.QuadContainer_do_apply(self, sm)
7161 
7162  def do_apply_moved(self, sm, moved_pis, reset_pis):
7163  r"""do_apply_moved(QuadContainer self, QuadModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7164  return _IMP_kernel.QuadContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
7165 
7166  def do_get_provides_access(self):
7167  r"""do_get_provides_access(QuadContainer self) -> bool"""
7168  return _IMP_kernel.QuadContainer_do_get_provides_access(self)
7169  __swig_destroy__ = _IMP_kernel.delete_QuadContainer
7170 
7171  def __str__(self):
7172  r"""__str__(QuadContainer self) -> std::string"""
7173  return _IMP_kernel.QuadContainer___str__(self)
7174 
7175  def __repr__(self):
7176  r"""__repr__(QuadContainer self) -> std::string"""
7177  return _IMP_kernel.QuadContainer___repr__(self)
7178 
7179  @staticmethod
7180  def get_from(o):
7181  return _object_cast_to_QuadContainer(o)
7182 
7183 
7184  def get_type_name(self):
7185  return self.__class__.__name__
7186  def do_show(self, out):
7187  pass
7188  def get_version_info(self):
7189  if"IMP" == "IMP":
7190  return VersionInfo(self.__module__,
7191  __import__(self.__module__).get_module_version())
7192  else:
7193  return IMP.VersionInfo(self.__module__,
7194  __import__(self.__module__).get_module_version())
7195  @staticmethod
7196  def get_from(o):
7197  return _object_cast_to_QuadContainer(o)
7198 
7199  def __disown__(self):
7200  self.this.disown()
7201  _IMP_kernel.disown_QuadContainer(self)
7202  return weakref.proxy(self)
7203 
7204  def do_destroy(self):
7205  r"""do_destroy(QuadContainer self)"""
7206  return _IMP_kernel.QuadContainer_do_destroy(self)
7207 
7208  def handle_set_has_required_score_states(self, arg0):
7209  r"""handle_set_has_required_score_states(QuadContainer self, bool arg0)"""
7210  return _IMP_kernel.QuadContainer_handle_set_has_required_score_states(self, arg0)
7211 
7212  def do_get_inputs(self):
7213  r"""do_get_inputs(QuadContainer self) -> IMP::ModelObjectsTemp"""
7214  return _IMP_kernel.QuadContainer_do_get_inputs(self)
7215 
7216  def do_get_interactions(self):
7217  r"""do_get_interactions(QuadContainer self) -> IMP::ModelObjectsTemps"""
7218  return _IMP_kernel.QuadContainer_do_get_interactions(self)
7219 
7220  def do_get_contents_hash(self):
7221  r"""do_get_contents_hash(QuadContainer self) -> std::size_t"""
7222  return _IMP_kernel.QuadContainer_do_get_contents_hash(self)
7223 
7224 # Register QuadContainer in _IMP_kernel:
7225 _IMP_kernel.QuadContainer_swigregister(QuadContainer)
7226 class _QuadContainerAdaptor(_InputAdaptor):
7227  r"""Proxy of C++ IMP::QuadContainerAdaptor class."""
7228 
7229  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7230  __repr__ = _swig_repr
7231 
7232  def __init__(self, *args):
7233  r"""
7234  __init__(_QuadContainerAdaptor self) -> _QuadContainerAdaptor
7235  __init__(_QuadContainerAdaptor self, QuadContainer c) -> _QuadContainerAdaptor
7236  __init__(_QuadContainerAdaptor self, IMP::ParticleQuadsTemp const & t) -> _QuadContainerAdaptor
7237  """
7238  _IMP_kernel._QuadContainerAdaptor_swiginit(self, _IMP_kernel.new__QuadContainerAdaptor(*args))
7239 
7240  def set_name_if_default(self, name):
7241  r"""set_name_if_default(_QuadContainerAdaptor self, std::string name)"""
7242  return _IMP_kernel._QuadContainerAdaptor_set_name_if_default(self, name)
7243  __swig_destroy__ = _IMP_kernel.delete__QuadContainerAdaptor
7244 
7245 # Register _QuadContainerAdaptor in _IMP_kernel:
7246 _IMP_kernel._QuadContainerAdaptor_swigregister(_QuadContainerAdaptor)
7247 class SingletonModifier(_ParticleInputs, _ParticleOutputs, Object):
7248  r"""Proxy of C++ IMP::SingletonModifier class."""
7249 
7250  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7251 
7252  def __init__(self, *args):
7253  r"""__init__(SingletonModifier self, std::string name="SingletonModifier %1%") -> SingletonModifier"""
7254  if self.__class__ == SingletonModifier:
7255  _self = None
7256  else:
7257  _self = self
7258  _IMP_kernel.SingletonModifier_swiginit(self, _IMP_kernel.new_SingletonModifier(_self, *args))
7259 
7260  if self.__class__ != SingletonModifier:
7261  _director_objects.register(self)
7262 
7263 
7264 
7265 
7266  def apply_index(self, m, v):
7267  r"""apply_index(SingletonModifier self, Model m, ParticleIndex v)"""
7268  return _IMP_kernel.SingletonModifier_apply_index(self, m, v)
7269 
7270  def apply_indexes(self, m, o, lower_bound, upper_bound):
7271  r"""apply_indexes(SingletonModifier self, Model m, IMP::ParticleIndexes const & o, unsigned int lower_bound, unsigned int upper_bound)"""
7272  return _IMP_kernel.SingletonModifier_apply_indexes(self, m, o, lower_bound, upper_bound)
7273 
7274  def apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis):
7275  r"""apply_indexes_moved(SingletonModifier self, Model m, IMP::ParticleIndexes const & o, unsigned int lower_bound, unsigned int upper_bound, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7276  return _IMP_kernel.SingletonModifier_apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis)
7277 
7278  def __str__(self):
7279  r"""__str__(SingletonModifier self) -> std::string"""
7280  return _IMP_kernel.SingletonModifier___str__(self)
7281 
7282  def __repr__(self):
7283  r"""__repr__(SingletonModifier self) -> std::string"""
7284  return _IMP_kernel.SingletonModifier___repr__(self)
7285 
7286  @staticmethod
7287  def get_from(o):
7288  return _object_cast_to_SingletonModifier(o)
7289 
7290 
7291  def get_type_name(self):
7292  return self.__class__.__name__
7293  def do_show(self, out):
7294  pass
7295  def get_version_info(self):
7296  if"IMP" == "IMP":
7297  return VersionInfo(self.__module__,
7298  __import__(self.__module__).get_module_version())
7299  else:
7300  return IMP.VersionInfo(self.__module__,
7301  __import__(self.__module__).get_module_version())
7302  @staticmethod
7303  def get_from(o):
7304  return _object_cast_to_SingletonModifier(o)
7305 
7306  __swig_destroy__ = _IMP_kernel.delete_SingletonModifier
7307  def __disown__(self):
7308  self.this.disown()
7309  _IMP_kernel.disown_SingletonModifier(self)
7310  return weakref.proxy(self)
7311 
7312  def do_get_inputs(self, m, pis):
7313  r"""do_get_inputs(SingletonModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7314  return _IMP_kernel.SingletonModifier_do_get_inputs(self, m, pis)
7315 
7316  def do_get_outputs(self, m, pis):
7317  r"""do_get_outputs(SingletonModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7318  return _IMP_kernel.SingletonModifier_do_get_outputs(self, m, pis)
7319 
7320  def do_destroy(self):
7321  r"""do_destroy(SingletonModifier self)"""
7322  return _IMP_kernel.SingletonModifier_do_destroy(self)
7323 
7324 # Register SingletonModifier in _IMP_kernel:
7325 _IMP_kernel.SingletonModifier_swigregister(SingletonModifier)
7326 class SingletonScore(_ParticleInputs, Object):
7327  r"""Proxy of C++ IMP::SingletonScore class."""
7328 
7329  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7330 
7331  def __init__(self, *args):
7332  r"""__init__(SingletonScore self, std::string name="SingletonScore %1%") -> SingletonScore"""
7333  if self.__class__ == SingletonScore:
7334  _self = None
7335  else:
7336  _self = self
7337  _IMP_kernel.SingletonScore_swiginit(self, _IMP_kernel.new_SingletonScore(_self, *args))
7338 
7339  if self.__class__ != SingletonScore:
7340  _director_objects.register(self)
7341 
7342 
7343 
7344 
7345  def evaluate_index(self, m, vt, da):
7346  r"""evaluate_index(SingletonScore self, Model m, ParticleIndex vt, DerivativeAccumulator da) -> double"""
7347  return _IMP_kernel.SingletonScore_evaluate_index(self, m, vt, da)
7348 
7349  def evaluate_indexes(self, m, o, da, lower_bound, upper_bound):
7350  r"""evaluate_indexes(SingletonScore self, Model m, IMP::ParticleIndexes const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound) -> double"""
7351  return _IMP_kernel.SingletonScore_evaluate_indexes(self, m, o, da, lower_bound, upper_bound)
7352 
7353  def evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score):
7354  r"""evaluate_indexes_scores(SingletonScore self, Model m, IMP::ParticleIndexes const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score) -> double"""
7355  return _IMP_kernel.SingletonScore_evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score)
7356 
7357  def evaluate_indexes_delta(self, m, o, da, indexes, score):
7358  r"""evaluate_indexes_delta(SingletonScore self, Model m, IMP::ParticleIndexes const & o, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score) -> double"""
7359  return _IMP_kernel.SingletonScore_evaluate_indexes_delta(self, m, o, da, indexes, score)
7360 
7361  def evaluate_if_good_index(self, m, vt, da, max):
7362  r"""evaluate_if_good_index(SingletonScore self, Model m, ParticleIndex vt, DerivativeAccumulator da, double max) -> double"""
7363  return _IMP_kernel.SingletonScore_evaluate_if_good_index(self, m, vt, da, max)
7364 
7365  def evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound):
7366  r"""evaluate_if_good_indexes(SingletonScore self, Model m, IMP::ParticleIndexes const & o, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound) -> double"""
7367  return _IMP_kernel.SingletonScore_evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound)
7368 
7369  def create_current_decomposition(self, m, vt):
7370  r"""create_current_decomposition(SingletonScore self, Model m, ParticleIndex vt) -> IMP::Restraints"""
7371  return _IMP_kernel.SingletonScore_create_current_decomposition(self, m, vt)
7372 
7373  def do_create_current_decomposition(self, m, vt):
7374  r"""do_create_current_decomposition(SingletonScore self, Model m, ParticleIndex vt) -> IMP::Restraints"""
7375  return _IMP_kernel.SingletonScore_do_create_current_decomposition(self, m, vt)
7376  __swig_destroy__ = _IMP_kernel.delete_SingletonScore
7377 
7378  def __str__(self):
7379  r"""__str__(SingletonScore self) -> std::string"""
7380  return _IMP_kernel.SingletonScore___str__(self)
7381 
7382  def __repr__(self):
7383  r"""__repr__(SingletonScore self) -> std::string"""
7384  return _IMP_kernel.SingletonScore___repr__(self)
7385 
7386  @staticmethod
7387  def get_from(o):
7388  return _object_cast_to_SingletonScore(o)
7389 
7390 
7391  def get_type_name(self):
7392  return self.__class__.__name__
7393  def do_show(self, out):
7394  pass
7395  def get_version_info(self):
7396  if"IMP" == "IMP":
7397  return VersionInfo(self.__module__,
7398  __import__(self.__module__).get_module_version())
7399  else:
7400  return IMP.VersionInfo(self.__module__,
7401  __import__(self.__module__).get_module_version())
7402  @staticmethod
7403  def get_from(o):
7404  return _object_cast_to_SingletonScore(o)
7405 
7406  def __disown__(self):
7407  self.this.disown()
7408  _IMP_kernel.disown_SingletonScore(self)
7409  return weakref.proxy(self)
7410 
7411  def do_get_inputs(self, m, pis):
7412  r"""do_get_inputs(SingletonScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7413  return _IMP_kernel.SingletonScore_do_get_inputs(self, m, pis)
7414 
7415  def do_destroy(self):
7416  r"""do_destroy(SingletonScore self)"""
7417  return _IMP_kernel.SingletonScore_do_destroy(self)
7418 
7419 # Register SingletonScore in _IMP_kernel:
7420 _IMP_kernel.SingletonScore_swigregister(SingletonScore)
7421 class SingletonPredicate(_ParticleInputs, Object):
7422  r"""Proxy of C++ IMP::SingletonPredicate class."""
7423 
7424  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7425 
7426  def __init__(self, *args):
7427  r"""__init__(SingletonPredicate self, std::string name="SingletonPredicate %1%") -> SingletonPredicate"""
7428  if self.__class__ == SingletonPredicate:
7429  _self = None
7430  else:
7431  _self = self
7432  _IMP_kernel.SingletonPredicate_swiginit(self, _IMP_kernel.new_SingletonPredicate(_self, *args))
7433 
7434  if self.__class__ != SingletonPredicate:
7435  _director_objects.register(self)
7436 
7437 
7438 
7439 
7440  def setup_for_get_value_index_in_batch(self, arg0):
7441  r"""setup_for_get_value_index_in_batch(SingletonPredicate self, Model arg0)"""
7442  return _IMP_kernel.SingletonPredicate_setup_for_get_value_index_in_batch(self, arg0)
7443 
7444  def get_value_index_in_batch(self, m, vt):
7445  r"""get_value_index_in_batch(SingletonPredicate self, Model m, ParticleIndex vt) -> int"""
7446  return _IMP_kernel.SingletonPredicate_get_value_index_in_batch(self, m, vt)
7447 
7448  def __call__(self, m, vt):
7449  r"""__call__(SingletonPredicate self, Model m, ParticleIndex vt) -> int"""
7450  return _IMP_kernel.SingletonPredicate___call__(self, m, vt)
7451 
7452  def get_value_index(self, *args):
7453  r"""
7454  get_value_index(SingletonPredicate self, Model m, ParticleIndex vt) -> int
7455  get_value_index(SingletonPredicate self, Model m, IMP::ParticleIndexes const & o) -> IMP::Ints
7456  """
7457  return _IMP_kernel.SingletonPredicate_get_value_index(self, *args)
7458  __swig_destroy__ = _IMP_kernel.delete_SingletonPredicate
7459 
7460  def __str__(self):
7461  r"""__str__(SingletonPredicate self) -> std::string"""
7462  return _IMP_kernel.SingletonPredicate___str__(self)
7463 
7464  def __repr__(self):
7465  r"""__repr__(SingletonPredicate self) -> std::string"""
7466  return _IMP_kernel.SingletonPredicate___repr__(self)
7467 
7468  @staticmethod
7469  def get_from(o):
7470  return _object_cast_to_SingletonPredicate(o)
7471 
7472 
7473  def get_type_name(self):
7474  return self.__class__.__name__
7475  def do_show(self, out):
7476  pass
7477  def get_version_info(self):
7478  if"IMP" == "IMP":
7479  return VersionInfo(self.__module__,
7480  __import__(self.__module__).get_module_version())
7481  else:
7482  return IMP.VersionInfo(self.__module__,
7483  __import__(self.__module__).get_module_version())
7484  @staticmethod
7485  def get_from(o):
7486  return _object_cast_to_SingletonPredicate(o)
7487 
7488  def __disown__(self):
7489  self.this.disown()
7490  _IMP_kernel.disown_SingletonPredicate(self)
7491  return weakref.proxy(self)
7492 
7493  def do_get_inputs(self, m, pis):
7494  r"""do_get_inputs(SingletonPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7495  return _IMP_kernel.SingletonPredicate_do_get_inputs(self, m, pis)
7496 
7497  def do_destroy(self):
7498  r"""do_destroy(SingletonPredicate self)"""
7499  return _IMP_kernel.SingletonPredicate_do_destroy(self)
7500 
7501 # Register SingletonPredicate in _IMP_kernel:
7502 _IMP_kernel.SingletonPredicate_swigregister(SingletonPredicate)
7503 class SingletonContainer(Container):
7504  r"""Proxy of C++ IMP::SingletonContainer class."""
7505 
7506  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7507 
7508  def apply_generic(self, m):
7509  r"""apply_generic(SingletonContainer self, SingletonModifier m)"""
7510  return _IMP_kernel.SingletonContainer_apply_generic(self, m)
7511 
7512  def apply_generic_moved(self, m, moved_pis, reset_pis):
7513  r"""apply_generic_moved(SingletonContainer self, SingletonModifier m, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7514  return _IMP_kernel.SingletonContainer_apply_generic_moved(self, m, moved_pis, reset_pis)
7515 
7516  def apply(self, sm):
7517  r"""apply(SingletonContainer self, SingletonModifier sm)"""
7518  return _IMP_kernel.SingletonContainer_apply(self, sm)
7519 
7520  def apply_moved(self, sm, moved_pis, reset_pis):
7521  r"""apply_moved(SingletonContainer self, SingletonModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7522  return _IMP_kernel.SingletonContainer_apply_moved(self, sm, moved_pis, reset_pis)
7523 
7524  def get_range_indexes(self):
7525  r"""get_range_indexes(SingletonContainer self) -> IMP::ParticleIndexes"""
7526  return _IMP_kernel.SingletonContainer_get_range_indexes(self)
7527 
7528  def get_contents(self):
7529  r"""get_contents(SingletonContainer self) -> IMP::ParticleIndexes const &"""
7530  return _IMP_kernel.SingletonContainer_get_contents(self)
7531 
7532  def get_indexes(self):
7533  r"""get_indexes(SingletonContainer self) -> IMP::ParticleIndexes"""
7534  return _IMP_kernel.SingletonContainer_get_indexes(self)
7535 
7536  def get(self, *args):
7537  r"""
7538  get(SingletonContainer self) -> IMP::ParticlesTemp
7539  get(SingletonContainer self, unsigned int i) -> Particle
7540  """
7541  return _IMP_kernel.SingletonContainer_get(self, *args)
7542 
7543  def get_number(self):
7544  r"""get_number(SingletonContainer self) -> unsigned int"""
7545  return _IMP_kernel.SingletonContainer_get_number(self)
7546 
7547  def __init__(self, *args):
7548  r"""
7549  __init__(SingletonContainer self, Model m, std::string name="SingletonContainer %1%") -> SingletonContainer
7550  __init__(SingletonContainer self) -> SingletonContainer
7551  """
7552  if self.__class__ == SingletonContainer:
7553  _self = None
7554  else:
7555  _self = self
7556  _IMP_kernel.SingletonContainer_swiginit(self, _IMP_kernel.new_SingletonContainer(_self, *args))
7557 
7558  if self.__class__ != SingletonContainer:
7559  _director_objects.register(self)
7560 
7561 
7562 
7563 
7564  def do_apply(self, sm):
7565  r"""do_apply(SingletonContainer self, SingletonModifier sm)"""
7566  return _IMP_kernel.SingletonContainer_do_apply(self, sm)
7567 
7568  def do_apply_moved(self, sm, moved_pis, reset_pis):
7569  r"""do_apply_moved(SingletonContainer self, SingletonModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7570  return _IMP_kernel.SingletonContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
7571 
7572  def do_get_provides_access(self):
7573  r"""do_get_provides_access(SingletonContainer self) -> bool"""
7574  return _IMP_kernel.SingletonContainer_do_get_provides_access(self)
7575  __swig_destroy__ = _IMP_kernel.delete_SingletonContainer
7576 
7577  def __str__(self):
7578  r"""__str__(SingletonContainer self) -> std::string"""
7579  return _IMP_kernel.SingletonContainer___str__(self)
7580 
7581  def __repr__(self):
7582  r"""__repr__(SingletonContainer self) -> std::string"""
7583  return _IMP_kernel.SingletonContainer___repr__(self)
7584 
7585  @staticmethod
7586  def get_from(o):
7587  return _object_cast_to_SingletonContainer(o)
7588 
7589 
7590  def get_type_name(self):
7591  return self.__class__.__name__
7592  def do_show(self, out):
7593  pass
7594  def get_version_info(self):
7595  if"IMP" == "IMP":
7596  return VersionInfo(self.__module__,
7597  __import__(self.__module__).get_module_version())
7598  else:
7599  return IMP.VersionInfo(self.__module__,
7600  __import__(self.__module__).get_module_version())
7601  @staticmethod
7602  def get_from(o):
7603  return _object_cast_to_SingletonContainer(o)
7604 
7605  def __disown__(self):
7606  self.this.disown()
7607  _IMP_kernel.disown_SingletonContainer(self)
7608  return weakref.proxy(self)
7609 
7610  def do_destroy(self):
7611  r"""do_destroy(SingletonContainer self)"""
7612  return _IMP_kernel.SingletonContainer_do_destroy(self)
7613 
7614  def handle_set_has_required_score_states(self, arg0):
7615  r"""handle_set_has_required_score_states(SingletonContainer self, bool arg0)"""
7616  return _IMP_kernel.SingletonContainer_handle_set_has_required_score_states(self, arg0)
7617 
7618  def do_get_inputs(self):
7619  r"""do_get_inputs(SingletonContainer self) -> IMP::ModelObjectsTemp"""
7620  return _IMP_kernel.SingletonContainer_do_get_inputs(self)
7621 
7622  def do_get_interactions(self):
7623  r"""do_get_interactions(SingletonContainer self) -> IMP::ModelObjectsTemps"""
7624  return _IMP_kernel.SingletonContainer_do_get_interactions(self)
7625 
7626  def do_get_contents_hash(self):
7627  r"""do_get_contents_hash(SingletonContainer self) -> std::size_t"""
7628  return _IMP_kernel.SingletonContainer_do_get_contents_hash(self)
7629 
7630 # Register SingletonContainer in _IMP_kernel:
7631 _IMP_kernel.SingletonContainer_swigregister(SingletonContainer)
7632 class _SingletonContainerAdaptor(_InputAdaptor):
7633  r"""Proxy of C++ IMP::SingletonContainerAdaptor class."""
7634 
7635  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7636  __repr__ = _swig_repr
7637 
7638  def __init__(self, *args):
7639  r"""
7640  __init__(_SingletonContainerAdaptor self) -> _SingletonContainerAdaptor
7641  __init__(_SingletonContainerAdaptor self, SingletonContainer c) -> _SingletonContainerAdaptor
7642  __init__(_SingletonContainerAdaptor self, IMP::ParticlesTemp const & t) -> _SingletonContainerAdaptor
7643  """
7644  _IMP_kernel._SingletonContainerAdaptor_swiginit(self, _IMP_kernel.new__SingletonContainerAdaptor(*args))
7645 
7646  def set_name_if_default(self, name):
7647  r"""set_name_if_default(_SingletonContainerAdaptor self, std::string name)"""
7648  return _IMP_kernel._SingletonContainerAdaptor_set_name_if_default(self, name)
7649  __swig_destroy__ = _IMP_kernel.delete__SingletonContainerAdaptor
7650 
7651 # Register _SingletonContainerAdaptor in _IMP_kernel:
7652 _IMP_kernel._SingletonContainerAdaptor_swigregister(_SingletonContainerAdaptor)
7653 class TripletModifier(_ParticleInputs, _ParticleOutputs, Object):
7654  r"""Proxy of C++ IMP::TripletModifier class."""
7655 
7656  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7657 
7658  def __init__(self, *args):
7659  r"""__init__(TripletModifier self, std::string name="TripletModifier %1%") -> TripletModifier"""
7660  if self.__class__ == TripletModifier:
7661  _self = None
7662  else:
7663  _self = self
7664  _IMP_kernel.TripletModifier_swiginit(self, _IMP_kernel.new_TripletModifier(_self, *args))
7665 
7666  if self.__class__ != TripletModifier:
7667  _director_objects.register(self)
7668 
7669 
7670 
7671 
7672  def apply_index(self, m, v):
7673  r"""apply_index(TripletModifier self, Model m, IMP::ParticleIndexTriplet const & v)"""
7674  return _IMP_kernel.TripletModifier_apply_index(self, m, v)
7675 
7676  def apply_indexes(self, m, o, lower_bound, upper_bound):
7677  r"""apply_indexes(TripletModifier self, Model m, IMP::ParticleIndexTriplets const & o, unsigned int lower_bound, unsigned int upper_bound)"""
7678  return _IMP_kernel.TripletModifier_apply_indexes(self, m, o, lower_bound, upper_bound)
7679 
7680  def apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis):
7681  r"""apply_indexes_moved(TripletModifier self, Model m, IMP::ParticleIndexTriplets const & o, unsigned int lower_bound, unsigned int upper_bound, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7682  return _IMP_kernel.TripletModifier_apply_indexes_moved(self, m, o, lower_bound, upper_bound, moved_pis, reset_pis)
7683 
7684  def __str__(self):
7685  r"""__str__(TripletModifier self) -> std::string"""
7686  return _IMP_kernel.TripletModifier___str__(self)
7687 
7688  def __repr__(self):
7689  r"""__repr__(TripletModifier self) -> std::string"""
7690  return _IMP_kernel.TripletModifier___repr__(self)
7691 
7692  @staticmethod
7693  def get_from(o):
7694  return _object_cast_to_TripletModifier(o)
7695 
7696 
7697  def get_type_name(self):
7698  return self.__class__.__name__
7699  def do_show(self, out):
7700  pass
7701  def get_version_info(self):
7702  if"IMP" == "IMP":
7703  return VersionInfo(self.__module__,
7704  __import__(self.__module__).get_module_version())
7705  else:
7706  return IMP.VersionInfo(self.__module__,
7707  __import__(self.__module__).get_module_version())
7708  @staticmethod
7709  def get_from(o):
7710  return _object_cast_to_TripletModifier(o)
7711 
7712  __swig_destroy__ = _IMP_kernel.delete_TripletModifier
7713  def __disown__(self):
7714  self.this.disown()
7715  _IMP_kernel.disown_TripletModifier(self)
7716  return weakref.proxy(self)
7717 
7718  def do_get_inputs(self, m, pis):
7719  r"""do_get_inputs(TripletModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7720  return _IMP_kernel.TripletModifier_do_get_inputs(self, m, pis)
7721 
7722  def do_get_outputs(self, m, pis):
7723  r"""do_get_outputs(TripletModifier self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7724  return _IMP_kernel.TripletModifier_do_get_outputs(self, m, pis)
7725 
7726  def do_destroy(self):
7727  r"""do_destroy(TripletModifier self)"""
7728  return _IMP_kernel.TripletModifier_do_destroy(self)
7729 
7730 # Register TripletModifier in _IMP_kernel:
7731 _IMP_kernel.TripletModifier_swigregister(TripletModifier)
7732 class TripletScore(_ParticleInputs, Object):
7733  r"""Proxy of C++ IMP::TripletScore class."""
7734 
7735  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7736 
7737  def __init__(self, *args):
7738  r"""__init__(TripletScore self, std::string name="TripletScore %1%") -> TripletScore"""
7739  if self.__class__ == TripletScore:
7740  _self = None
7741  else:
7742  _self = self
7743  _IMP_kernel.TripletScore_swiginit(self, _IMP_kernel.new_TripletScore(_self, *args))
7744 
7745  if self.__class__ != TripletScore:
7746  _director_objects.register(self)
7747 
7748 
7749 
7750 
7751  def evaluate_index(self, m, vt, da):
7752  r"""evaluate_index(TripletScore self, Model m, IMP::ParticleIndexTriplet const & vt, DerivativeAccumulator da) -> double"""
7753  return _IMP_kernel.TripletScore_evaluate_index(self, m, vt, da)
7754 
7755  def evaluate_indexes(self, m, o, da, lower_bound, upper_bound):
7756  r"""evaluate_indexes(TripletScore self, Model m, IMP::ParticleIndexTriplets const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound) -> double"""
7757  return _IMP_kernel.TripletScore_evaluate_indexes(self, m, o, da, lower_bound, upper_bound)
7758 
7759  def evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score):
7760  r"""evaluate_indexes_scores(TripletScore self, Model m, IMP::ParticleIndexTriplets const & o, DerivativeAccumulator da, unsigned int lower_bound, unsigned int upper_bound, std::vector< double,std::allocator< double > > & score) -> double"""
7761  return _IMP_kernel.TripletScore_evaluate_indexes_scores(self, m, o, da, lower_bound, upper_bound, score)
7762 
7763  def evaluate_indexes_delta(self, m, o, da, indexes, score):
7764  r"""evaluate_indexes_delta(TripletScore self, Model m, IMP::ParticleIndexTriplets const & o, DerivativeAccumulator da, std::vector< unsigned int,std::allocator< unsigned int > > const & indexes, std::vector< double,std::allocator< double > > & score) -> double"""
7765  return _IMP_kernel.TripletScore_evaluate_indexes_delta(self, m, o, da, indexes, score)
7766 
7767  def evaluate_if_good_index(self, m, vt, da, max):
7768  r"""evaluate_if_good_index(TripletScore self, Model m, IMP::ParticleIndexTriplet const & vt, DerivativeAccumulator da, double max) -> double"""
7769  return _IMP_kernel.TripletScore_evaluate_if_good_index(self, m, vt, da, max)
7770 
7771  def evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound):
7772  r"""evaluate_if_good_indexes(TripletScore self, Model m, IMP::ParticleIndexTriplets const & o, DerivativeAccumulator da, double max, unsigned int lower_bound, unsigned int upper_bound) -> double"""
7773  return _IMP_kernel.TripletScore_evaluate_if_good_indexes(self, m, o, da, max, lower_bound, upper_bound)
7774 
7775  def create_current_decomposition(self, m, vt):
7776  r"""create_current_decomposition(TripletScore self, Model m, IMP::ParticleIndexTriplet const & vt) -> IMP::Restraints"""
7777  return _IMP_kernel.TripletScore_create_current_decomposition(self, m, vt)
7778 
7779  def do_create_current_decomposition(self, m, vt):
7780  r"""do_create_current_decomposition(TripletScore self, Model m, IMP::ParticleIndexTriplet const & vt) -> IMP::Restraints"""
7781  return _IMP_kernel.TripletScore_do_create_current_decomposition(self, m, vt)
7782  __swig_destroy__ = _IMP_kernel.delete_TripletScore
7783 
7784  def __str__(self):
7785  r"""__str__(TripletScore self) -> std::string"""
7786  return _IMP_kernel.TripletScore___str__(self)
7787 
7788  def __repr__(self):
7789  r"""__repr__(TripletScore self) -> std::string"""
7790  return _IMP_kernel.TripletScore___repr__(self)
7791 
7792  @staticmethod
7793  def get_from(o):
7794  return _object_cast_to_TripletScore(o)
7795 
7796 
7797  def get_type_name(self):
7798  return self.__class__.__name__
7799  def do_show(self, out):
7800  pass
7801  def get_version_info(self):
7802  if"IMP" == "IMP":
7803  return VersionInfo(self.__module__,
7804  __import__(self.__module__).get_module_version())
7805  else:
7806  return IMP.VersionInfo(self.__module__,
7807  __import__(self.__module__).get_module_version())
7808  @staticmethod
7809  def get_from(o):
7810  return _object_cast_to_TripletScore(o)
7811 
7812  def __disown__(self):
7813  self.this.disown()
7814  _IMP_kernel.disown_TripletScore(self)
7815  return weakref.proxy(self)
7816 
7817  def do_get_inputs(self, m, pis):
7818  r"""do_get_inputs(TripletScore self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7819  return _IMP_kernel.TripletScore_do_get_inputs(self, m, pis)
7820 
7821  def do_destroy(self):
7822  r"""do_destroy(TripletScore self)"""
7823  return _IMP_kernel.TripletScore_do_destroy(self)
7824 
7825 # Register TripletScore in _IMP_kernel:
7826 _IMP_kernel.TripletScore_swigregister(TripletScore)
7827 class TripletPredicate(_ParticleInputs, Object):
7828  r"""Proxy of C++ IMP::TripletPredicate class."""
7829 
7830  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7831 
7832  def __init__(self, *args):
7833  r"""__init__(TripletPredicate self, std::string name="TripletPredicate %1%") -> TripletPredicate"""
7834  if self.__class__ == TripletPredicate:
7835  _self = None
7836  else:
7837  _self = self
7838  _IMP_kernel.TripletPredicate_swiginit(self, _IMP_kernel.new_TripletPredicate(_self, *args))
7839 
7840  if self.__class__ != TripletPredicate:
7841  _director_objects.register(self)
7842 
7843 
7844 
7845 
7846  def setup_for_get_value_index_in_batch(self, arg0):
7847  r"""setup_for_get_value_index_in_batch(TripletPredicate self, Model arg0)"""
7848  return _IMP_kernel.TripletPredicate_setup_for_get_value_index_in_batch(self, arg0)
7849 
7850  def get_value_index_in_batch(self, m, vt):
7851  r"""get_value_index_in_batch(TripletPredicate self, Model m, IMP::ParticleIndexTriplet const & vt) -> int"""
7852  return _IMP_kernel.TripletPredicate_get_value_index_in_batch(self, m, vt)
7853 
7854  def __call__(self, m, vt):
7855  r"""__call__(TripletPredicate self, Model m, IMP::ParticleIndexTriplet const & vt) -> int"""
7856  return _IMP_kernel.TripletPredicate___call__(self, m, vt)
7857 
7858  def get_value_index(self, *args):
7859  r"""
7860  get_value_index(TripletPredicate self, Model m, IMP::ParticleIndexTriplet const & vt) -> int
7861  get_value_index(TripletPredicate self, Model m, IMP::ParticleIndexTriplets const & o) -> IMP::Ints
7862  """
7863  return _IMP_kernel.TripletPredicate_get_value_index(self, *args)
7864  __swig_destroy__ = _IMP_kernel.delete_TripletPredicate
7865 
7866  def __str__(self):
7867  r"""__str__(TripletPredicate self) -> std::string"""
7868  return _IMP_kernel.TripletPredicate___str__(self)
7869 
7870  def __repr__(self):
7871  r"""__repr__(TripletPredicate self) -> std::string"""
7872  return _IMP_kernel.TripletPredicate___repr__(self)
7873 
7874  @staticmethod
7875  def get_from(o):
7876  return _object_cast_to_TripletPredicate(o)
7877 
7878 
7879  def get_type_name(self):
7880  return self.__class__.__name__
7881  def do_show(self, out):
7882  pass
7883  def get_version_info(self):
7884  if"IMP" == "IMP":
7885  return VersionInfo(self.__module__,
7886  __import__(self.__module__).get_module_version())
7887  else:
7888  return IMP.VersionInfo(self.__module__,
7889  __import__(self.__module__).get_module_version())
7890  @staticmethod
7891  def get_from(o):
7892  return _object_cast_to_TripletPredicate(o)
7893 
7894  def __disown__(self):
7895  self.this.disown()
7896  _IMP_kernel.disown_TripletPredicate(self)
7897  return weakref.proxy(self)
7898 
7899  def do_get_inputs(self, m, pis):
7900  r"""do_get_inputs(TripletPredicate self, Model m, IMP::ParticleIndexes const & pis) -> IMP::ModelObjectsTemp"""
7901  return _IMP_kernel.TripletPredicate_do_get_inputs(self, m, pis)
7902 
7903  def do_destroy(self):
7904  r"""do_destroy(TripletPredicate self)"""
7905  return _IMP_kernel.TripletPredicate_do_destroy(self)
7906 
7907 # Register TripletPredicate in _IMP_kernel:
7908 _IMP_kernel.TripletPredicate_swigregister(TripletPredicate)
7909 class TripletContainer(Container):
7910  r"""Proxy of C++ IMP::TripletContainer class."""
7911 
7912  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
7913 
7914  def apply_generic(self, m):
7915  r"""apply_generic(TripletContainer self, TripletModifier m)"""
7916  return _IMP_kernel.TripletContainer_apply_generic(self, m)
7917 
7918  def apply_generic_moved(self, m, moved_pis, reset_pis):
7919  r"""apply_generic_moved(TripletContainer self, TripletModifier m, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7920  return _IMP_kernel.TripletContainer_apply_generic_moved(self, m, moved_pis, reset_pis)
7921 
7922  def apply(self, sm):
7923  r"""apply(TripletContainer self, TripletModifier sm)"""
7924  return _IMP_kernel.TripletContainer_apply(self, sm)
7925 
7926  def apply_moved(self, sm, moved_pis, reset_pis):
7927  r"""apply_moved(TripletContainer self, TripletModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7928  return _IMP_kernel.TripletContainer_apply_moved(self, sm, moved_pis, reset_pis)
7929 
7930  def get_range_indexes(self):
7931  r"""get_range_indexes(TripletContainer self) -> IMP::ParticleIndexTriplets"""
7932  return _IMP_kernel.TripletContainer_get_range_indexes(self)
7933 
7934  def get_contents(self):
7935  r"""get_contents(TripletContainer self) -> IMP::ParticleIndexTriplets const &"""
7936  return _IMP_kernel.TripletContainer_get_contents(self)
7937 
7938  def get_indexes(self):
7939  r"""get_indexes(TripletContainer self) -> IMP::ParticleIndexTriplets"""
7940  return _IMP_kernel.TripletContainer_get_indexes(self)
7941 
7942  def get(self, *args):
7943  r"""
7944  get(TripletContainer self) -> IMP::ParticleTripletsTemp
7945  get(TripletContainer self, unsigned int i) -> IMP::ParticleTriplet
7946  """
7947  return _IMP_kernel.TripletContainer_get(self, *args)
7948 
7949  def get_number(self):
7950  r"""get_number(TripletContainer self) -> unsigned int"""
7951  return _IMP_kernel.TripletContainer_get_number(self)
7952 
7953  def __init__(self, *args):
7954  r"""
7955  __init__(TripletContainer self, Model m, std::string name="TripletContainer %1%") -> TripletContainer
7956  __init__(TripletContainer self) -> TripletContainer
7957  """
7958  if self.__class__ == TripletContainer:
7959  _self = None
7960  else:
7961  _self = self
7962  _IMP_kernel.TripletContainer_swiginit(self, _IMP_kernel.new_TripletContainer(_self, *args))
7963 
7964  if self.__class__ != TripletContainer:
7965  _director_objects.register(self)
7966 
7967 
7968 
7969 
7970  def do_apply(self, sm):
7971  r"""do_apply(TripletContainer self, TripletModifier sm)"""
7972  return _IMP_kernel.TripletContainer_do_apply(self, sm)
7973 
7974  def do_apply_moved(self, sm, moved_pis, reset_pis):
7975  r"""do_apply_moved(TripletContainer self, TripletModifier sm, IMP::ParticleIndexes const & moved_pis, IMP::ParticleIndexes const & reset_pis)"""
7976  return _IMP_kernel.TripletContainer_do_apply_moved(self, sm, moved_pis, reset_pis)
7977 
7978  def do_get_provides_access(self):
7979  r"""do_get_provides_access(TripletContainer self) -> bool"""
7980  return _IMP_kernel.TripletContainer_do_get_provides_access(self)
7981  __swig_destroy__ = _IMP_kernel.delete_TripletContainer
7982 
7983  def __str__(self):
7984  r"""__str__(TripletContainer self) -> std::string"""
7985  return _IMP_kernel.TripletContainer___str__(self)
7986 
7987  def __repr__(self):
7988  r"""__repr__(TripletContainer self) -> std::string"""
7989  return _IMP_kernel.TripletContainer___repr__(self)
7990 
7991  @staticmethod
7992  def get_from(o):
7993  return _object_cast_to_TripletContainer(o)
7994 
7995 
7996  def get_type_name(self):
7997  return self.__class__.__name__
7998  def do_show(self, out):
7999  pass
8000  def get_version_info(self):
8001  if"IMP" == "IMP":
8002  return VersionInfo(self.__module__,
8003  __import__(self.__module__).get_module_version())
8004  else:
8005  return IMP.VersionInfo(self.__module__,
8006  __import__(self.__module__).get_module_version())
8007  @staticmethod
8008  def get_from(o):
8009  return _object_cast_to_TripletContainer(o)
8010 
8011  def __disown__(self):
8012  self.this.disown()
8013  _IMP_kernel.disown_TripletContainer(self)
8014  return weakref.proxy(self)
8015 
8016  def do_destroy(self):
8017  r"""do_destroy(TripletContainer self)"""
8018  return _IMP_kernel.TripletContainer_do_destroy(self)
8019 
8020  def handle_set_has_required_score_states(self, arg0):
8021  r"""handle_set_has_required_score_states(TripletContainer self, bool arg0)"""
8022  return _IMP_kernel.TripletContainer_handle_set_has_required_score_states(self, arg0)
8023 
8024  def do_get_inputs(self):
8025  r"""do_get_inputs(TripletContainer self) -> IMP::ModelObjectsTemp"""
8026  return _IMP_kernel.TripletContainer_do_get_inputs(self)
8027 
8028  def do_get_interactions(self):
8029  r"""do_get_interactions(TripletContainer self) -> IMP::ModelObjectsTemps"""
8030  return _IMP_kernel.TripletContainer_do_get_interactions(self)
8031 
8032  def do_get_contents_hash(self):
8033  r"""do_get_contents_hash(TripletContainer self) -> std::size_t"""
8034  return _IMP_kernel.TripletContainer_do_get_contents_hash(self)
8035 
8036 # Register TripletContainer in _IMP_kernel:
8037 _IMP_kernel.TripletContainer_swigregister(TripletContainer)
8038 class _TripletContainerAdaptor(_InputAdaptor):
8039  r"""Proxy of C++ IMP::TripletContainerAdaptor class."""
8040 
8041  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8042  __repr__ = _swig_repr
8043 
8044  def __init__(self, *args):
8045  r"""
8046  __init__(_TripletContainerAdaptor self) -> _TripletContainerAdaptor
8047  __init__(_TripletContainerAdaptor self, TripletContainer c) -> _TripletContainerAdaptor
8048  __init__(_TripletContainerAdaptor self, IMP::ParticleTripletsTemp const & t) -> _TripletContainerAdaptor
8049  """
8050  _IMP_kernel._TripletContainerAdaptor_swiginit(self, _IMP_kernel.new__TripletContainerAdaptor(*args))
8051 
8052  def set_name_if_default(self, name):
8053  r"""set_name_if_default(_TripletContainerAdaptor self, std::string name)"""
8054  return _IMP_kernel._TripletContainerAdaptor_set_name_if_default(self, name)
8055  __swig_destroy__ = _IMP_kernel.delete__TripletContainerAdaptor
8056 
8057 # Register _TripletContainerAdaptor in _IMP_kernel:
8058 _IMP_kernel._TripletContainerAdaptor_swigregister(_TripletContainerAdaptor)
8059 
8060 def write_particles_to_buffer(particles, keys):
8061  r"""write_particles_to_buffer(IMP::ParticlesTemp const & particles, IMP::FloatKeys const & keys) -> IMP::Vector< char,std::allocator< char > >"""
8062  return _IMP_kernel.write_particles_to_buffer(particles, keys)
8063 
8064 def read_particles_from_buffer(buffer, particles, keys):
8065  r"""read_particles_from_buffer(IMP::Vector< char,std::allocator< char > > const & buffer, IMP::ParticlesTemp const & particles, IMP::FloatKeys const & keys)"""
8066  return _IMP_kernel.read_particles_from_buffer(buffer, particles, keys)
8067 
8068 def get_particles(m, ps):
8069  r"""get_particles(Model m, IMP::ParticleIndexes const & ps) -> IMP::ParticlesTemp"""
8070  return _IMP_kernel.get_particles(m, ps)
8071 
8072 def get_indexes(*args):
8073  r"""
8074  get_indexes(IMP::ParticlesTemp const & ps) -> IMP::ParticleIndexes
8075  get_indexes(IMP::ParticlePairsTemp const & ps) -> IMP::ParticleIndexPairs
8076  """
8077  return _IMP_kernel.get_indexes(*args)
8078 class _ParticleIndexAdaptor(object):
8079  r"""Proxy of C++ IMP::ParticleIndexAdaptor class."""
8080 
8081  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8082  __repr__ = _swig_repr
8083 
8084  def __init__(self, *args):
8085  r"""
8086  __init__(_ParticleIndexAdaptor self, Particle p) -> _ParticleIndexAdaptor
8087  __init__(_ParticleIndexAdaptor self, ParticleIndex pi) -> _ParticleIndexAdaptor
8088  __init__(_ParticleIndexAdaptor self, Decorator d) -> _ParticleIndexAdaptor
8089  """
8090  _IMP_kernel._ParticleIndexAdaptor_swiginit(self, _IMP_kernel.new__ParticleIndexAdaptor(*args))
8091  __swig_destroy__ = _IMP_kernel.delete__ParticleIndexAdaptor
8092 
8093 # Register _ParticleIndexAdaptor in _IMP_kernel:
8094 _IMP_kernel._ParticleIndexAdaptor_swigregister(_ParticleIndexAdaptor)
8095 class _ParticleIndexesAdaptor(_InputAdaptor):
8096  r"""Proxy of C++ IMP::ParticleIndexesAdaptor class."""
8097 
8098  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8099  __repr__ = _swig_repr
8100 
8101  def __init__(self, *args):
8102  r"""
8103  __init__(_ParticleIndexesAdaptor self, IMP::ParticlesTemp const & ps) -> _ParticleIndexesAdaptor
8104  __init__(_ParticleIndexesAdaptor self, IMP::ParticleIndexes const & pi) -> _ParticleIndexesAdaptor
8105  __init__(_ParticleIndexesAdaptor self) -> _ParticleIndexesAdaptor
8106  """
8107  _IMP_kernel._ParticleIndexesAdaptor_swiginit(self, _IMP_kernel.new__ParticleIndexesAdaptor(*args))
8108  __swig_destroy__ = _IMP_kernel.delete__ParticleIndexesAdaptor
8109 
8110 # Register _ParticleIndexesAdaptor in _IMP_kernel:
8111 _IMP_kernel._ParticleIndexesAdaptor_swigregister(_ParticleIndexesAdaptor)
8112 class _ParticleIndexPairsAdaptor(object):
8113  r"""Proxy of C++ IMP::ParticleIndexPairsAdaptor class."""
8114 
8115  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8116  __repr__ = _swig_repr
8117 
8118  def __init__(self, *args):
8119  r"""
8120  __init__(_ParticleIndexPairsAdaptor self, IMP::ParticlePairsTemp const & ps) -> _ParticleIndexPairsAdaptor
8121  __init__(_ParticleIndexPairsAdaptor self, IMP::ParticleIndexPairs const & pi) -> _ParticleIndexPairsAdaptor
8122  __init__(_ParticleIndexPairsAdaptor self) -> _ParticleIndexPairsAdaptor
8123  """
8124  _IMP_kernel._ParticleIndexPairsAdaptor_swiginit(self, _IMP_kernel.new__ParticleIndexPairsAdaptor(*args))
8125  __swig_destroy__ = _IMP_kernel.delete__ParticleIndexPairsAdaptor
8126 
8127 # Register _ParticleIndexPairsAdaptor in _IMP_kernel:
8128 _IMP_kernel._ParticleIndexPairsAdaptor_swigregister(_ParticleIndexPairsAdaptor)
8129 class _ConstRestraint(Restraint):
8130  r"""Proxy of C++ IMP::internal::_ConstRestraint class."""
8131 
8132  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8133 
8134  def __init__(self, *args):
8135  r"""
8136  __init__(_ConstRestraint self, Model m, IMP::ParticleIndexes const & pis, double v) -> _ConstRestraint
8137  __init__(_ConstRestraint self) -> _ConstRestraint
8138  """
8139  _IMP_kernel._ConstRestraint_swiginit(self, _IMP_kernel.new__ConstRestraint(*args))
8140 
8141  def get_value(self):
8142  r"""get_value(_ConstRestraint self) -> double"""
8143  return _IMP_kernel._ConstRestraint_get_value(self)
8144 
8145  def do_create_decomposition(self):
8146  r"""do_create_decomposition(_ConstRestraint self) -> IMP::Restraints"""
8147  return _IMP_kernel._ConstRestraint_do_create_decomposition(self)
8148 
8149  def do_get_inputs(self):
8150  r"""do_get_inputs(_ConstRestraint self) -> IMP::ModelObjectsTemp"""
8151  return _IMP_kernel._ConstRestraint_do_get_inputs(self)
8152 
8153  def get_version_info(self):
8154  r"""get_version_info(_ConstRestraint self) -> VersionInfo"""
8155  return _IMP_kernel._ConstRestraint_get_version_info(self)
8156  __swig_destroy__ = _IMP_kernel.delete__ConstRestraint
8157 
8158  def __str__(self):
8159  r"""__str__(_ConstRestraint self) -> std::string"""
8160  return _IMP_kernel._ConstRestraint___str__(self)
8161 
8162  def __repr__(self):
8163  r"""__repr__(_ConstRestraint self) -> std::string"""
8164  return _IMP_kernel._ConstRestraint___repr__(self)
8165 
8166  @staticmethod
8167  def get_from(o):
8168  return _object_cast_to__ConstRestraint(o)
8169 
8170 
8171  def _get_as_binary(self):
8172  r"""_get_as_binary(_ConstRestraint self) -> PyObject *"""
8173  return _IMP_kernel._ConstRestraint__get_as_binary(self)
8174 
8175  def _set_from_binary(self, p):
8176  r"""_set_from_binary(_ConstRestraint self, PyObject * p)"""
8177  return _IMP_kernel._ConstRestraint__set_from_binary(self, p)
8178 
8179  def __getstate__(self):
8180  p = self._get_as_binary()
8181  if len(self.__dict__) > 1:
8182  d = self.__dict__.copy()
8183  del d['this']
8184  p = (d, p)
8185  return p
8186 
8187  def __setstate__(self, p):
8188  if not hasattr(self, 'this'):
8189  self.__init__()
8190  if isinstance(p, tuple):
8191  d, p = p
8192  self.__dict__.update(d)
8193  return self._set_from_binary(p)
8194 
8195 
8196 # Register _ConstRestraint in _IMP_kernel:
8197 _IMP_kernel._ConstRestraint_swigregister(_ConstRestraint)
8198 class _ConstSingletonScore(SingletonScore):
8199  r"""Proxy of C++ IMP::internal::_ConstSingletonScore class."""
8200 
8201  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8202 
8203  def __init__(self, *args):
8204  r"""
8205  __init__(_ConstSingletonScore self, double v) -> _ConstSingletonScore
8206  __init__(_ConstSingletonScore self) -> _ConstSingletonScore
8207  """
8208  _IMP_kernel._ConstSingletonScore_swiginit(self, _IMP_kernel.new__ConstSingletonScore(*args))
8209 
8210  def do_get_inputs(self, arg2, arg3):
8211  r"""do_get_inputs(_ConstSingletonScore self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
8212  return _IMP_kernel._ConstSingletonScore_do_get_inputs(self, arg2, arg3)
8213 
8214  def get_version_info(self):
8215  r"""get_version_info(_ConstSingletonScore self) -> VersionInfo"""
8216  return _IMP_kernel._ConstSingletonScore_get_version_info(self)
8217  __swig_destroy__ = _IMP_kernel.delete__ConstSingletonScore
8218 
8219  def __str__(self):
8220  r"""__str__(_ConstSingletonScore self) -> std::string"""
8221  return _IMP_kernel._ConstSingletonScore___str__(self)
8222 
8223  def __repr__(self):
8224  r"""__repr__(_ConstSingletonScore self) -> std::string"""
8225  return _IMP_kernel._ConstSingletonScore___repr__(self)
8226 
8227  @staticmethod
8228  def get_from(o):
8229  return _object_cast_to__ConstSingletonScore(o)
8230 
8231 
8232  def _get_as_binary(self):
8233  r"""_get_as_binary(_ConstSingletonScore self) -> PyObject *"""
8234  return _IMP_kernel._ConstSingletonScore__get_as_binary(self)
8235 
8236  def _set_from_binary(self, p):
8237  r"""_set_from_binary(_ConstSingletonScore self, PyObject * p)"""
8238  return _IMP_kernel._ConstSingletonScore__set_from_binary(self, p)
8239 
8240  def __getstate__(self):
8241  p = self._get_as_binary()
8242  if len(self.__dict__) > 1:
8243  d = self.__dict__.copy()
8244  del d['this']
8245  p = (d, p)
8246  return p
8247 
8248  def __setstate__(self, p):
8249  if not hasattr(self, 'this'):
8250  self.__init__()
8251  if isinstance(p, tuple):
8252  d, p = p
8253  self.__dict__.update(d)
8254  return self._set_from_binary(p)
8255 
8256 
8257 # Register _ConstSingletonScore in _IMP_kernel:
8258 _IMP_kernel._ConstSingletonScore_swigregister(_ConstSingletonScore)
8259 class _ConstPairScore(PairScore):
8260  r"""Proxy of C++ IMP::internal::_ConstPairScore class."""
8261 
8262  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8263 
8264  def __init__(self, *args):
8265  r"""
8266  __init__(_ConstPairScore self, double v) -> _ConstPairScore
8267  __init__(_ConstPairScore self) -> _ConstPairScore
8268  """
8269  _IMP_kernel._ConstPairScore_swiginit(self, _IMP_kernel.new__ConstPairScore(*args))
8270 
8271  def do_get_inputs(self, arg2, arg3):
8272  r"""do_get_inputs(_ConstPairScore self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
8273  return _IMP_kernel._ConstPairScore_do_get_inputs(self, arg2, arg3)
8274 
8275  def get_version_info(self):
8276  r"""get_version_info(_ConstPairScore self) -> VersionInfo"""
8277  return _IMP_kernel._ConstPairScore_get_version_info(self)
8278  __swig_destroy__ = _IMP_kernel.delete__ConstPairScore
8279 
8280  def __str__(self):
8281  r"""__str__(_ConstPairScore self) -> std::string"""
8282  return _IMP_kernel._ConstPairScore___str__(self)
8283 
8284  def __repr__(self):
8285  r"""__repr__(_ConstPairScore self) -> std::string"""
8286  return _IMP_kernel._ConstPairScore___repr__(self)
8287 
8288  @staticmethod
8289  def get_from(o):
8290  return _object_cast_to__ConstPairScore(o)
8291 
8292 
8293  def _get_as_binary(self):
8294  r"""_get_as_binary(_ConstPairScore self) -> PyObject *"""
8295  return _IMP_kernel._ConstPairScore__get_as_binary(self)
8296 
8297  def _set_from_binary(self, p):
8298  r"""_set_from_binary(_ConstPairScore self, PyObject * p)"""
8299  return _IMP_kernel._ConstPairScore__set_from_binary(self, p)
8300 
8301  def __getstate__(self):
8302  p = self._get_as_binary()
8303  if len(self.__dict__) > 1:
8304  d = self.__dict__.copy()
8305  del d['this']
8306  p = (d, p)
8307  return p
8308 
8309  def __setstate__(self, p):
8310  if not hasattr(self, 'this'):
8311  self.__init__()
8312  if isinstance(p, tuple):
8313  d, p = p
8314  self.__dict__.update(d)
8315  return self._set_from_binary(p)
8316 
8317 
8318 # Register _ConstPairScore in _IMP_kernel:
8319 _IMP_kernel._ConstPairScore_swigregister(_ConstPairScore)
8320 class _TrivialDecorator(Decorator):
8321  r"""Proxy of C++ IMP::internal::_TrivialDecorator class."""
8322 
8323  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8324 
8325  def __init__(self, *args):
8326  r"""
8327  __init__(_TrivialDecorator self) -> _TrivialDecorator
8328  __init__(_TrivialDecorator self, Model m, ParticleIndex id) -> _TrivialDecorator
8329  __init__(_TrivialDecorator self, _ParticleAdaptor d) -> _TrivialDecorator
8330  """
8331  _IMP_kernel._TrivialDecorator_swiginit(self, _IMP_kernel.new__TrivialDecorator(*args))
8332 
8333  def show(self, *args):
8334  r"""show(_TrivialDecorator self, _ostream out=std::cout)"""
8335  return _IMP_kernel._TrivialDecorator_show(self, *args)
8336 
8337  @staticmethod
8338  def setup_particle(*args):
8339  r"""
8340  setup_particle(Model m, ParticleIndex pi) -> _TrivialDecorator
8341  setup_particle(_ParticleAdaptor pa) -> _TrivialDecorator
8342  """
8343  return _IMP_kernel._TrivialDecorator_setup_particle(*args)
8344 
8345  @staticmethod
8346  def get_is_setup(*args):
8347  r"""
8348  get_is_setup(_ParticleAdaptor p) -> bool
8349  get_is_setup(Model m, ParticleIndex pi) -> bool
8350  """
8351  return _IMP_kernel._TrivialDecorator_get_is_setup(*args)
8352 
8353  def add_attribute(self, *args):
8354  r"""
8355  add_attribute(_TrivialDecorator self, FloatKey k, IMP::Float v, bool opt)
8356  add_attribute(_TrivialDecorator self, FloatKey a0, IMP::Float a1)
8357  add_attribute(_TrivialDecorator self, IntKey a0, IMP::Int a1)
8358  add_attribute(_TrivialDecorator self, FloatsKey a0, IMP::Floats a1)
8359  add_attribute(_TrivialDecorator self, IntsKey a0, IMP::Ints a1)
8360  add_attribute(_TrivialDecorator self, StringKey a0, IMP::String a1)
8361  add_attribute(_TrivialDecorator self, ParticleIndexKey a0, Particle a1)
8362  add_attribute(_TrivialDecorator self, ObjectKey a0, Object a1)
8363  add_attribute(_TrivialDecorator self, SparseFloatKey a0, IMP::Float a1)
8364  add_attribute(_TrivialDecorator self, SparseIntKey a0, IMP::Int a1)
8365  add_attribute(_TrivialDecorator self, SparseStringKey a0, IMP::String a1)
8366  add_attribute(_TrivialDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8367  """
8368  return _IMP_kernel._TrivialDecorator_add_attribute(self, *args)
8369 
8370  def get_value(self, *args):
8371  r"""
8372  get_value(_TrivialDecorator self, FloatKey a0) -> IMP::Float
8373  get_value(_TrivialDecorator self, IntKey a0) -> IMP::Int
8374  get_value(_TrivialDecorator self, FloatsKey a0) -> IMP::Floats
8375  get_value(_TrivialDecorator self, IntsKey a0) -> IMP::Ints
8376  get_value(_TrivialDecorator self, StringKey a0) -> IMP::String
8377  get_value(_TrivialDecorator self, ParticleIndexKey a0) -> Particle
8378  get_value(_TrivialDecorator self, ObjectKey a0) -> Object
8379  get_value(_TrivialDecorator self, SparseFloatKey a0) -> IMP::Float
8380  get_value(_TrivialDecorator self, SparseIntKey a0) -> IMP::Int
8381  get_value(_TrivialDecorator self, SparseStringKey a0) -> IMP::String
8382  get_value(_TrivialDecorator self, SparseParticleIndexKey a0) -> ParticleIndex
8383  """
8384  return _IMP_kernel._TrivialDecorator_get_value(self, *args)
8385 
8386  def set_value(self, *args):
8387  r"""
8388  set_value(_TrivialDecorator self, FloatKey a0, IMP::Float a1)
8389  set_value(_TrivialDecorator self, IntKey a0, IMP::Int a1)
8390  set_value(_TrivialDecorator self, FloatsKey a0, IMP::Floats a1)
8391  set_value(_TrivialDecorator self, IntsKey a0, IMP::Ints a1)
8392  set_value(_TrivialDecorator self, StringKey a0, IMP::String a1)
8393  set_value(_TrivialDecorator self, ParticleIndexKey a0, Particle a1)
8394  set_value(_TrivialDecorator self, ObjectKey a0, Object a1)
8395  set_value(_TrivialDecorator self, SparseFloatKey a0, IMP::Float a1)
8396  set_value(_TrivialDecorator self, SparseIntKey a0, IMP::Int a1)
8397  set_value(_TrivialDecorator self, SparseStringKey a0, IMP::String a1)
8398  set_value(_TrivialDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8399  """
8400  return _IMP_kernel._TrivialDecorator_set_value(self, *args)
8401 
8402  def remove_attribute(self, *args):
8403  r"""
8404  remove_attribute(_TrivialDecorator self, FloatKey a0)
8405  remove_attribute(_TrivialDecorator self, IntKey a0)
8406  remove_attribute(_TrivialDecorator self, FloatsKey a0)
8407  remove_attribute(_TrivialDecorator self, IntsKey a0)
8408  remove_attribute(_TrivialDecorator self, StringKey a0)
8409  remove_attribute(_TrivialDecorator self, ParticleIndexKey a0)
8410  remove_attribute(_TrivialDecorator self, ObjectKey a0)
8411  remove_attribute(_TrivialDecorator self, SparseFloatKey a0)
8412  remove_attribute(_TrivialDecorator self, SparseIntKey a0)
8413  remove_attribute(_TrivialDecorator self, SparseStringKey a0)
8414  remove_attribute(_TrivialDecorator self, SparseParticleIndexKey a0)
8415  """
8416  return _IMP_kernel._TrivialDecorator_remove_attribute(self, *args)
8417 
8418  def has_attribute(self, *args):
8419  r"""
8420  has_attribute(_TrivialDecorator self, FloatKey a0) -> bool
8421  has_attribute(_TrivialDecorator self, IntKey a0) -> bool
8422  has_attribute(_TrivialDecorator self, FloatsKey a0) -> bool
8423  has_attribute(_TrivialDecorator self, IntsKey a0) -> bool
8424  has_attribute(_TrivialDecorator self, StringKey a0) -> bool
8425  has_attribute(_TrivialDecorator self, ParticleIndexKey a0) -> bool
8426  has_attribute(_TrivialDecorator self, ObjectKey a0) -> bool
8427  has_attribute(_TrivialDecorator self, SparseFloatKey a0) -> bool
8428  has_attribute(_TrivialDecorator self, SparseIntKey a0) -> bool
8429  has_attribute(_TrivialDecorator self, SparseStringKey a0) -> bool
8430  has_attribute(_TrivialDecorator self, SparseParticleIndexKey a0) -> bool
8431  """
8432  return _IMP_kernel._TrivialDecorator_has_attribute(self, *args)
8433 
8434  def get_derivative(self, a0):
8435  r"""get_derivative(_TrivialDecorator self, FloatKey a0) -> double"""
8436  return _IMP_kernel._TrivialDecorator_get_derivative(self, a0)
8437 
8438  def get_name(self):
8439  r"""get_name(_TrivialDecorator self) -> std::string"""
8440  return _IMP_kernel._TrivialDecorator_get_name(self)
8441 
8442  def clear_caches(self):
8443  r"""clear_caches(_TrivialDecorator self)"""
8444  return _IMP_kernel._TrivialDecorator_clear_caches(self)
8445 
8446  def set_name(self, a0):
8447  r"""set_name(_TrivialDecorator self, std::string a0)"""
8448  return _IMP_kernel._TrivialDecorator_set_name(self, a0)
8449 
8450  def set_check_level(self, a0):
8451  r"""set_check_level(_TrivialDecorator self, IMP::CheckLevel a0)"""
8452  return _IMP_kernel._TrivialDecorator_set_check_level(self, a0)
8453 
8454  def add_to_derivative(self, a0, a1, a2):
8455  r"""add_to_derivative(_TrivialDecorator self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8456  return _IMP_kernel._TrivialDecorator_add_to_derivative(self, a0, a1, a2)
8457 
8458  def set_is_optimized(self, a0, a1):
8459  r"""set_is_optimized(_TrivialDecorator self, FloatKey a0, bool a1)"""
8460  return _IMP_kernel._TrivialDecorator_set_is_optimized(self, a0, a1)
8461 
8462  def get_is_optimized(self, a0):
8463  r"""get_is_optimized(_TrivialDecorator self, FloatKey a0) -> bool"""
8464  return _IMP_kernel._TrivialDecorator_get_is_optimized(self, a0)
8465 
8466  def get_check_level(self):
8467  r"""get_check_level(_TrivialDecorator self) -> IMP::CheckLevel"""
8468  return _IMP_kernel._TrivialDecorator_get_check_level(self)
8469 
8470  def __eq__(self, *args):
8471  r"""
8472  __eq__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8473  __eq__(_TrivialDecorator self, Particle d) -> bool
8474  """
8475  return _IMP_kernel._TrivialDecorator___eq__(self, *args)
8476 
8477  def __ne__(self, *args):
8478  r"""
8479  __ne__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8480  __ne__(_TrivialDecorator self, Particle d) -> bool
8481  """
8482  return _IMP_kernel._TrivialDecorator___ne__(self, *args)
8483 
8484  def __le__(self, *args):
8485  r"""
8486  __le__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8487  __le__(_TrivialDecorator self, Particle d) -> bool
8488  """
8489  return _IMP_kernel._TrivialDecorator___le__(self, *args)
8490 
8491  def __lt__(self, *args):
8492  r"""
8493  __lt__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8494  __lt__(_TrivialDecorator self, Particle d) -> bool
8495  """
8496  return _IMP_kernel._TrivialDecorator___lt__(self, *args)
8497 
8498  def __ge__(self, *args):
8499  r"""
8500  __ge__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8501  __ge__(_TrivialDecorator self, Particle d) -> bool
8502  """
8503  return _IMP_kernel._TrivialDecorator___ge__(self, *args)
8504 
8505  def __gt__(self, *args):
8506  r"""
8507  __gt__(_TrivialDecorator self, _TrivialDecorator o) -> bool
8508  __gt__(_TrivialDecorator self, Particle d) -> bool
8509  """
8510  return _IMP_kernel._TrivialDecorator___gt__(self, *args)
8511 
8512  def __hash__(self):
8513  r"""__hash__(_TrivialDecorator self) -> std::size_t"""
8514  return _IMP_kernel._TrivialDecorator___hash__(self)
8515 
8516  def __str__(self):
8517  r"""__str__(_TrivialDecorator self) -> std::string"""
8518  return _IMP_kernel._TrivialDecorator___str__(self)
8519 
8520  def __repr__(self):
8521  r"""__repr__(_TrivialDecorator self) -> std::string"""
8522  return _IMP_kernel._TrivialDecorator___repr__(self)
8523 
8524  def _get_as_binary(self):
8525  r"""_get_as_binary(_TrivialDecorator self) -> PyObject *"""
8526  return _IMP_kernel._TrivialDecorator__get_as_binary(self)
8527 
8528  def _set_from_binary(self, p):
8529  r"""_set_from_binary(_TrivialDecorator self, PyObject * p)"""
8530  return _IMP_kernel._TrivialDecorator__set_from_binary(self, p)
8531 
8532  def __getstate__(self):
8533  p = self._get_as_binary()
8534  if len(self.__dict__) > 1:
8535  d = self.__dict__.copy()
8536  del d['this']
8537  p = (d, p)
8538  return p
8539 
8540  def __setstate__(self, p):
8541  if not hasattr(self, 'this'):
8542  self.__init__()
8543  if isinstance(p, tuple):
8544  d, p = p
8545  self.__dict__.update(d)
8546  return self._set_from_binary(p)
8547 
8548  __swig_destroy__ = _IMP_kernel.delete__TrivialDecorator
8549 
8550 # Register _TrivialDecorator in _IMP_kernel:
8551 _IMP_kernel._TrivialDecorator_swigregister(_TrivialDecorator)
8552 class _TrivialDerivedDecorator(_TrivialDecorator):
8553  r"""Proxy of C++ IMP::internal::_TrivialDerivedDecorator class."""
8554 
8555  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8556 
8557  def __init__(self, *args):
8558  r"""
8559  __init__(_TrivialDerivedDecorator self) -> _TrivialDerivedDecorator
8560  __init__(_TrivialDerivedDecorator self, Model m, ParticleIndex id) -> _TrivialDerivedDecorator
8561  __init__(_TrivialDerivedDecorator self, _ParticleAdaptor d) -> _TrivialDerivedDecorator
8562  """
8563  _IMP_kernel._TrivialDerivedDecorator_swiginit(self, _IMP_kernel.new__TrivialDerivedDecorator(*args))
8564 
8565  def show(self, *args):
8566  r"""show(_TrivialDerivedDecorator self, _ostream out=std::cout)"""
8567  return _IMP_kernel._TrivialDerivedDecorator_show(self, *args)
8568 
8569  @staticmethod
8570  def setup_particle(*args):
8571  r"""
8572  setup_particle(Model m, ParticleIndex pi) -> _TrivialDerivedDecorator
8573  setup_particle(_ParticleAdaptor pa) -> _TrivialDerivedDecorator
8574  """
8575  return _IMP_kernel._TrivialDerivedDecorator_setup_particle(*args)
8576 
8577  @staticmethod
8578  def get_is_setup(*args):
8579  r"""
8580  get_is_setup(_ParticleAdaptor p) -> bool
8581  get_is_setup(Model m, ParticleIndex pi) -> bool
8582  """
8583  return _IMP_kernel._TrivialDerivedDecorator_get_is_setup(*args)
8584 
8585  def add_attribute(self, *args):
8586  r"""
8587  add_attribute(_TrivialDerivedDecorator self, FloatKey k, IMP::Float v, bool opt)
8588  add_attribute(_TrivialDerivedDecorator self, FloatKey a0, IMP::Float a1)
8589  add_attribute(_TrivialDerivedDecorator self, IntKey a0, IMP::Int a1)
8590  add_attribute(_TrivialDerivedDecorator self, FloatsKey a0, IMP::Floats a1)
8591  add_attribute(_TrivialDerivedDecorator self, IntsKey a0, IMP::Ints a1)
8592  add_attribute(_TrivialDerivedDecorator self, StringKey a0, IMP::String a1)
8593  add_attribute(_TrivialDerivedDecorator self, ParticleIndexKey a0, Particle a1)
8594  add_attribute(_TrivialDerivedDecorator self, ObjectKey a0, Object a1)
8595  add_attribute(_TrivialDerivedDecorator self, SparseFloatKey a0, IMP::Float a1)
8596  add_attribute(_TrivialDerivedDecorator self, SparseIntKey a0, IMP::Int a1)
8597  add_attribute(_TrivialDerivedDecorator self, SparseStringKey a0, IMP::String a1)
8598  add_attribute(_TrivialDerivedDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8599  """
8600  return _IMP_kernel._TrivialDerivedDecorator_add_attribute(self, *args)
8601 
8602  def get_value(self, *args):
8603  r"""
8604  get_value(_TrivialDerivedDecorator self, FloatKey a0) -> IMP::Float
8605  get_value(_TrivialDerivedDecorator self, IntKey a0) -> IMP::Int
8606  get_value(_TrivialDerivedDecorator self, FloatsKey a0) -> IMP::Floats
8607  get_value(_TrivialDerivedDecorator self, IntsKey a0) -> IMP::Ints
8608  get_value(_TrivialDerivedDecorator self, StringKey a0) -> IMP::String
8609  get_value(_TrivialDerivedDecorator self, ParticleIndexKey a0) -> Particle
8610  get_value(_TrivialDerivedDecorator self, ObjectKey a0) -> Object
8611  get_value(_TrivialDerivedDecorator self, SparseFloatKey a0) -> IMP::Float
8612  get_value(_TrivialDerivedDecorator self, SparseIntKey a0) -> IMP::Int
8613  get_value(_TrivialDerivedDecorator self, SparseStringKey a0) -> IMP::String
8614  get_value(_TrivialDerivedDecorator self, SparseParticleIndexKey a0) -> ParticleIndex
8615  """
8616  return _IMP_kernel._TrivialDerivedDecorator_get_value(self, *args)
8617 
8618  def set_value(self, *args):
8619  r"""
8620  set_value(_TrivialDerivedDecorator self, FloatKey a0, IMP::Float a1)
8621  set_value(_TrivialDerivedDecorator self, IntKey a0, IMP::Int a1)
8622  set_value(_TrivialDerivedDecorator self, FloatsKey a0, IMP::Floats a1)
8623  set_value(_TrivialDerivedDecorator self, IntsKey a0, IMP::Ints a1)
8624  set_value(_TrivialDerivedDecorator self, StringKey a0, IMP::String a1)
8625  set_value(_TrivialDerivedDecorator self, ParticleIndexKey a0, Particle a1)
8626  set_value(_TrivialDerivedDecorator self, ObjectKey a0, Object a1)
8627  set_value(_TrivialDerivedDecorator self, SparseFloatKey a0, IMP::Float a1)
8628  set_value(_TrivialDerivedDecorator self, SparseIntKey a0, IMP::Int a1)
8629  set_value(_TrivialDerivedDecorator self, SparseStringKey a0, IMP::String a1)
8630  set_value(_TrivialDerivedDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8631  """
8632  return _IMP_kernel._TrivialDerivedDecorator_set_value(self, *args)
8633 
8634  def remove_attribute(self, *args):
8635  r"""
8636  remove_attribute(_TrivialDerivedDecorator self, FloatKey a0)
8637  remove_attribute(_TrivialDerivedDecorator self, IntKey a0)
8638  remove_attribute(_TrivialDerivedDecorator self, FloatsKey a0)
8639  remove_attribute(_TrivialDerivedDecorator self, IntsKey a0)
8640  remove_attribute(_TrivialDerivedDecorator self, StringKey a0)
8641  remove_attribute(_TrivialDerivedDecorator self, ParticleIndexKey a0)
8642  remove_attribute(_TrivialDerivedDecorator self, ObjectKey a0)
8643  remove_attribute(_TrivialDerivedDecorator self, SparseFloatKey a0)
8644  remove_attribute(_TrivialDerivedDecorator self, SparseIntKey a0)
8645  remove_attribute(_TrivialDerivedDecorator self, SparseStringKey a0)
8646  remove_attribute(_TrivialDerivedDecorator self, SparseParticleIndexKey a0)
8647  """
8648  return _IMP_kernel._TrivialDerivedDecorator_remove_attribute(self, *args)
8649 
8650  def has_attribute(self, *args):
8651  r"""
8652  has_attribute(_TrivialDerivedDecorator self, FloatKey a0) -> bool
8653  has_attribute(_TrivialDerivedDecorator self, IntKey a0) -> bool
8654  has_attribute(_TrivialDerivedDecorator self, FloatsKey a0) -> bool
8655  has_attribute(_TrivialDerivedDecorator self, IntsKey a0) -> bool
8656  has_attribute(_TrivialDerivedDecorator self, StringKey a0) -> bool
8657  has_attribute(_TrivialDerivedDecorator self, ParticleIndexKey a0) -> bool
8658  has_attribute(_TrivialDerivedDecorator self, ObjectKey a0) -> bool
8659  has_attribute(_TrivialDerivedDecorator self, SparseFloatKey a0) -> bool
8660  has_attribute(_TrivialDerivedDecorator self, SparseIntKey a0) -> bool
8661  has_attribute(_TrivialDerivedDecorator self, SparseStringKey a0) -> bool
8662  has_attribute(_TrivialDerivedDecorator self, SparseParticleIndexKey a0) -> bool
8663  """
8664  return _IMP_kernel._TrivialDerivedDecorator_has_attribute(self, *args)
8665 
8666  def get_derivative(self, a0):
8667  r"""get_derivative(_TrivialDerivedDecorator self, FloatKey a0) -> double"""
8668  return _IMP_kernel._TrivialDerivedDecorator_get_derivative(self, a0)
8669 
8670  def get_name(self):
8671  r"""get_name(_TrivialDerivedDecorator self) -> std::string"""
8672  return _IMP_kernel._TrivialDerivedDecorator_get_name(self)
8673 
8674  def clear_caches(self):
8675  r"""clear_caches(_TrivialDerivedDecorator self)"""
8676  return _IMP_kernel._TrivialDerivedDecorator_clear_caches(self)
8677 
8678  def set_name(self, a0):
8679  r"""set_name(_TrivialDerivedDecorator self, std::string a0)"""
8680  return _IMP_kernel._TrivialDerivedDecorator_set_name(self, a0)
8681 
8682  def set_check_level(self, a0):
8683  r"""set_check_level(_TrivialDerivedDecorator self, IMP::CheckLevel a0)"""
8684  return _IMP_kernel._TrivialDerivedDecorator_set_check_level(self, a0)
8685 
8686  def add_to_derivative(self, a0, a1, a2):
8687  r"""add_to_derivative(_TrivialDerivedDecorator self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8688  return _IMP_kernel._TrivialDerivedDecorator_add_to_derivative(self, a0, a1, a2)
8689 
8690  def set_is_optimized(self, a0, a1):
8691  r"""set_is_optimized(_TrivialDerivedDecorator self, FloatKey a0, bool a1)"""
8692  return _IMP_kernel._TrivialDerivedDecorator_set_is_optimized(self, a0, a1)
8693 
8694  def get_is_optimized(self, a0):
8695  r"""get_is_optimized(_TrivialDerivedDecorator self, FloatKey a0) -> bool"""
8696  return _IMP_kernel._TrivialDerivedDecorator_get_is_optimized(self, a0)
8697 
8698  def get_check_level(self):
8699  r"""get_check_level(_TrivialDerivedDecorator self) -> IMP::CheckLevel"""
8700  return _IMP_kernel._TrivialDerivedDecorator_get_check_level(self)
8701 
8702  def __eq__(self, *args):
8703  r"""
8704  __eq__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8705  __eq__(_TrivialDerivedDecorator self, Particle d) -> bool
8706  """
8707  return _IMP_kernel._TrivialDerivedDecorator___eq__(self, *args)
8708 
8709  def __ne__(self, *args):
8710  r"""
8711  __ne__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8712  __ne__(_TrivialDerivedDecorator self, Particle d) -> bool
8713  """
8714  return _IMP_kernel._TrivialDerivedDecorator___ne__(self, *args)
8715 
8716  def __le__(self, *args):
8717  r"""
8718  __le__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8719  __le__(_TrivialDerivedDecorator self, Particle d) -> bool
8720  """
8721  return _IMP_kernel._TrivialDerivedDecorator___le__(self, *args)
8722 
8723  def __lt__(self, *args):
8724  r"""
8725  __lt__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8726  __lt__(_TrivialDerivedDecorator self, Particle d) -> bool
8727  """
8728  return _IMP_kernel._TrivialDerivedDecorator___lt__(self, *args)
8729 
8730  def __ge__(self, *args):
8731  r"""
8732  __ge__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8733  __ge__(_TrivialDerivedDecorator self, Particle d) -> bool
8734  """
8735  return _IMP_kernel._TrivialDerivedDecorator___ge__(self, *args)
8736 
8737  def __gt__(self, *args):
8738  r"""
8739  __gt__(_TrivialDerivedDecorator self, _TrivialDerivedDecorator o) -> bool
8740  __gt__(_TrivialDerivedDecorator self, Particle d) -> bool
8741  """
8742  return _IMP_kernel._TrivialDerivedDecorator___gt__(self, *args)
8743 
8744  def __hash__(self):
8745  r"""__hash__(_TrivialDerivedDecorator self) -> std::size_t"""
8746  return _IMP_kernel._TrivialDerivedDecorator___hash__(self)
8747 
8748  def __str__(self):
8749  r"""__str__(_TrivialDerivedDecorator self) -> std::string"""
8750  return _IMP_kernel._TrivialDerivedDecorator___str__(self)
8751 
8752  def __repr__(self):
8753  r"""__repr__(_TrivialDerivedDecorator self) -> std::string"""
8754  return _IMP_kernel._TrivialDerivedDecorator___repr__(self)
8755 
8756  def _get_as_binary(self):
8757  r"""_get_as_binary(_TrivialDerivedDecorator self) -> PyObject *"""
8758  return _IMP_kernel._TrivialDerivedDecorator__get_as_binary(self)
8759 
8760  def _set_from_binary(self, p):
8761  r"""_set_from_binary(_TrivialDerivedDecorator self, PyObject * p)"""
8762  return _IMP_kernel._TrivialDerivedDecorator__set_from_binary(self, p)
8763 
8764  def __getstate__(self):
8765  p = self._get_as_binary()
8766  if len(self.__dict__) > 1:
8767  d = self.__dict__.copy()
8768  del d['this']
8769  p = (d, p)
8770  return p
8771 
8772  def __setstate__(self, p):
8773  if not hasattr(self, 'this'):
8774  self.__init__()
8775  if isinstance(p, tuple):
8776  d, p = p
8777  self.__dict__.update(d)
8778  return self._set_from_binary(p)
8779 
8780  __swig_destroy__ = _IMP_kernel.delete__TrivialDerivedDecorator
8781 
8782 # Register _TrivialDerivedDecorator in _IMP_kernel:
8783 _IMP_kernel._TrivialDerivedDecorator_swigregister(_TrivialDerivedDecorator)
8784 class _TrivialTraitsDecorator(Decorator):
8785  r"""Proxy of C++ IMP::internal::_TrivialTraitsDecorator class."""
8786 
8787  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
8788 
8789  def get_decorator_traits(self):
8790  r"""get_decorator_traits(_TrivialTraitsDecorator self) -> StringKey"""
8791  return _IMP_kernel._TrivialTraitsDecorator_get_decorator_traits(self)
8792 
8793  @staticmethod
8794  def get_default_decorator_traits():
8795  r"""get_default_decorator_traits() -> StringKey"""
8796  return _IMP_kernel._TrivialTraitsDecorator_get_default_decorator_traits()
8797 
8798  def __init__(self, *args):
8799  r"""
8800  __init__(_TrivialTraitsDecorator self) -> _TrivialTraitsDecorator
8801  __init__(_TrivialTraitsDecorator self, Model m, ParticleIndex id, StringKey tr=get_default_key()) -> _TrivialTraitsDecorator
8802  __init__(_TrivialTraitsDecorator self, _ParticleAdaptor d, StringKey tr=get_default_key()) -> _TrivialTraitsDecorator
8803  """
8804  _IMP_kernel._TrivialTraitsDecorator_swiginit(self, _IMP_kernel.new__TrivialTraitsDecorator(*args))
8805 
8806  def show(self, *args):
8807  r"""show(_TrivialTraitsDecorator self, _ostream out=std::cout)"""
8808  return _IMP_kernel._TrivialTraitsDecorator_show(self, *args)
8809 
8810  @staticmethod
8811  def setup_particle(*args):
8812  r"""
8813  setup_particle(Model m, ParticleIndex pi, StringKey tr=IMP::internal::_TrivialTraitsDecorator::get_default_decorator_traits()) -> _TrivialTraitsDecorator
8814  setup_particle(_ParticleAdaptor d, StringKey tr=IMP::internal::_TrivialTraitsDecorator::get_default_decorator_traits()) -> _TrivialTraitsDecorator
8815  """
8816  return _IMP_kernel._TrivialTraitsDecorator_setup_particle(*args)
8817 
8818  @staticmethod
8819  def get_is_setup(*args):
8820  r"""
8821  get_is_setup(_ParticleAdaptor p, StringKey tr=get_default_key()) -> bool
8822  get_is_setup(Model m, ParticleIndex pi, StringKey k=get_default_key()) -> bool
8823  """
8824  return _IMP_kernel._TrivialTraitsDecorator_get_is_setup(*args)
8825 
8826  @staticmethod
8827  def get_default_key():
8828  r"""get_default_key() -> StringKey"""
8829  return _IMP_kernel._TrivialTraitsDecorator_get_default_key()
8830 
8831  def add_attribute(self, *args):
8832  r"""
8833  add_attribute(_TrivialTraitsDecorator self, FloatKey k, IMP::Float v, bool opt)
8834  add_attribute(_TrivialTraitsDecorator self, FloatKey a0, IMP::Float a1)
8835  add_attribute(_TrivialTraitsDecorator self, IntKey a0, IMP::Int a1)
8836  add_attribute(_TrivialTraitsDecorator self, FloatsKey a0, IMP::Floats a1)
8837  add_attribute(_TrivialTraitsDecorator self, IntsKey a0, IMP::Ints a1)
8838  add_attribute(_TrivialTraitsDecorator self, StringKey a0, IMP::String a1)
8839  add_attribute(_TrivialTraitsDecorator self, ParticleIndexKey a0, Particle a1)
8840  add_attribute(_TrivialTraitsDecorator self, ObjectKey a0, Object a1)
8841  add_attribute(_TrivialTraitsDecorator self, SparseFloatKey a0, IMP::Float a1)
8842  add_attribute(_TrivialTraitsDecorator self, SparseIntKey a0, IMP::Int a1)
8843  add_attribute(_TrivialTraitsDecorator self, SparseStringKey a0, IMP::String a1)
8844  add_attribute(_TrivialTraitsDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8845  """
8846  return _IMP_kernel._TrivialTraitsDecorator_add_attribute(self, *args)
8847 
8848  def get_value(self, *args):
8849  r"""
8850  get_value(_TrivialTraitsDecorator self, FloatKey a0) -> IMP::Float
8851  get_value(_TrivialTraitsDecorator self, IntKey a0) -> IMP::Int
8852  get_value(_TrivialTraitsDecorator self, FloatsKey a0) -> IMP::Floats
8853  get_value(_TrivialTraitsDecorator self, IntsKey a0) -> IMP::Ints
8854  get_value(_TrivialTraitsDecorator self, StringKey a0) -> IMP::String
8855  get_value(_TrivialTraitsDecorator self, ParticleIndexKey a0) -> Particle
8856  get_value(_TrivialTraitsDecorator self, ObjectKey a0) -> Object
8857  get_value(_TrivialTraitsDecorator self, SparseFloatKey a0) -> IMP::Float
8858  get_value(_TrivialTraitsDecorator self, SparseIntKey a0) -> IMP::Int
8859  get_value(_TrivialTraitsDecorator self, SparseStringKey a0) -> IMP::String
8860  get_value(_TrivialTraitsDecorator self, SparseParticleIndexKey a0) -> ParticleIndex
8861  """
8862  return _IMP_kernel._TrivialTraitsDecorator_get_value(self, *args)
8863 
8864  def set_value(self, *args):
8865  r"""
8866  set_value(_TrivialTraitsDecorator self, FloatKey a0, IMP::Float a1)
8867  set_value(_TrivialTraitsDecorator self, IntKey a0, IMP::Int a1)
8868  set_value(_TrivialTraitsDecorator self, FloatsKey a0, IMP::Floats a1)
8869  set_value(_TrivialTraitsDecorator self, IntsKey a0, IMP::Ints a1)
8870  set_value(_TrivialTraitsDecorator self, StringKey a0, IMP::String a1)
8871  set_value(_TrivialTraitsDecorator self, ParticleIndexKey a0, Particle a1)
8872  set_value(_TrivialTraitsDecorator self, ObjectKey a0, Object a1)
8873  set_value(_TrivialTraitsDecorator self, SparseFloatKey a0, IMP::Float a1)
8874  set_value(_TrivialTraitsDecorator self, SparseIntKey a0, IMP::Int a1)
8875  set_value(_TrivialTraitsDecorator self, SparseStringKey a0, IMP::String a1)
8876  set_value(_TrivialTraitsDecorator self, SparseParticleIndexKey a0, ParticleIndex a1)
8877  """
8878  return _IMP_kernel._TrivialTraitsDecorator_set_value(self, *args)
8879 
8880  def remove_attribute(self, *args):
8881  r"""
8882  remove_attribute(_TrivialTraitsDecorator self, FloatKey a0)
8883  remove_attribute(_TrivialTraitsDecorator self, IntKey a0)
8884  remove_attribute(_TrivialTraitsDecorator self, FloatsKey a0)
8885  remove_attribute(_TrivialTraitsDecorator self, IntsKey a0)
8886  remove_attribute(_TrivialTraitsDecorator self, StringKey a0)
8887  remove_attribute(_TrivialTraitsDecorator self, ParticleIndexKey a0)
8888  remove_attribute(_TrivialTraitsDecorator self, ObjectKey a0)
8889  remove_attribute(_TrivialTraitsDecorator self, SparseFloatKey a0)
8890  remove_attribute(_TrivialTraitsDecorator self, SparseIntKey a0)
8891  remove_attribute(_TrivialTraitsDecorator self, SparseStringKey a0)
8892  remove_attribute(_TrivialTraitsDecorator self, SparseParticleIndexKey a0)
8893  """
8894  return _IMP_kernel._TrivialTraitsDecorator_remove_attribute(self, *args)
8895 
8896  def has_attribute(self, *args):
8897  r"""
8898  has_attribute(_TrivialTraitsDecorator self, FloatKey a0) -> bool
8899  has_attribute(_TrivialTraitsDecorator self, IntKey a0) -> bool
8900  has_attribute(_TrivialTraitsDecorator self, FloatsKey a0) -> bool
8901  has_attribute(_TrivialTraitsDecorator self, IntsKey a0) -> bool
8902  has_attribute(_TrivialTraitsDecorator self, StringKey a0) -> bool
8903  has_attribute(_TrivialTraitsDecorator self, ParticleIndexKey a0) -> bool
8904  has_attribute(_TrivialTraitsDecorator self, ObjectKey a0) -> bool
8905  has_attribute(_TrivialTraitsDecorator self, SparseFloatKey a0) -> bool
8906  has_attribute(_TrivialTraitsDecorator self, SparseIntKey a0) -> bool
8907  has_attribute(_TrivialTraitsDecorator self, SparseStringKey a0) -> bool
8908  has_attribute(_TrivialTraitsDecorator self, SparseParticleIndexKey a0) -> bool
8909  """
8910  return _IMP_kernel._TrivialTraitsDecorator_has_attribute(self, *args)
8911 
8912  def get_derivative(self, a0):
8913  r"""get_derivative(_TrivialTraitsDecorator self, FloatKey a0) -> double"""
8914  return _IMP_kernel._TrivialTraitsDecorator_get_derivative(self, a0)
8915 
8916  def get_name(self):
8917  r"""get_name(_TrivialTraitsDecorator self) -> std::string"""
8918  return _IMP_kernel._TrivialTraitsDecorator_get_name(self)
8919 
8920  def clear_caches(self):
8921  r"""clear_caches(_TrivialTraitsDecorator self)"""
8922  return _IMP_kernel._TrivialTraitsDecorator_clear_caches(self)
8923 
8924  def set_name(self, a0):
8925  r"""set_name(_TrivialTraitsDecorator self, std::string a0)"""
8926  return _IMP_kernel._TrivialTraitsDecorator_set_name(self, a0)
8927 
8928  def set_check_level(self, a0):
8929  r"""set_check_level(_TrivialTraitsDecorator self, IMP::CheckLevel a0)"""
8930  return _IMP_kernel._TrivialTraitsDecorator_set_check_level(self, a0)
8931 
8932  def add_to_derivative(self, a0, a1, a2):
8933  r"""add_to_derivative(_TrivialTraitsDecorator self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
8934  return _IMP_kernel._TrivialTraitsDecorator_add_to_derivative(self, a0, a1, a2)
8935 
8936  def set_is_optimized(self, a0, a1):
8937  r"""set_is_optimized(_TrivialTraitsDecorator self, FloatKey a0, bool a1)"""
8938  return _IMP_kernel._TrivialTraitsDecorator_set_is_optimized(self, a0, a1)
8939 
8940  def get_is_optimized(self, a0):
8941  r"""get_is_optimized(_TrivialTraitsDecorator self, FloatKey a0) -> bool"""
8942  return _IMP_kernel._TrivialTraitsDecorator_get_is_optimized(self, a0)
8943 
8944  def get_check_level(self):
8945  r"""get_check_level(_TrivialTraitsDecorator self) -> IMP::CheckLevel"""
8946  return _IMP_kernel._TrivialTraitsDecorator_get_check_level(self)
8947 
8948  def __eq__(self, *args):
8949  r"""
8950  __eq__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8951  __eq__(_TrivialTraitsDecorator self, Particle d) -> bool
8952  """
8953  return _IMP_kernel._TrivialTraitsDecorator___eq__(self, *args)
8954 
8955  def __ne__(self, *args):
8956  r"""
8957  __ne__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8958  __ne__(_TrivialTraitsDecorator self, Particle d) -> bool
8959  """
8960  return _IMP_kernel._TrivialTraitsDecorator___ne__(self, *args)
8961 
8962  def __le__(self, *args):
8963  r"""
8964  __le__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8965  __le__(_TrivialTraitsDecorator self, Particle d) -> bool
8966  """
8967  return _IMP_kernel._TrivialTraitsDecorator___le__(self, *args)
8968 
8969  def __lt__(self, *args):
8970  r"""
8971  __lt__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8972  __lt__(_TrivialTraitsDecorator self, Particle d) -> bool
8973  """
8974  return _IMP_kernel._TrivialTraitsDecorator___lt__(self, *args)
8975 
8976  def __ge__(self, *args):
8977  r"""
8978  __ge__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8979  __ge__(_TrivialTraitsDecorator self, Particle d) -> bool
8980  """
8981  return _IMP_kernel._TrivialTraitsDecorator___ge__(self, *args)
8982 
8983  def __gt__(self, *args):
8984  r"""
8985  __gt__(_TrivialTraitsDecorator self, _TrivialTraitsDecorator o) -> bool
8986  __gt__(_TrivialTraitsDecorator self, Particle d) -> bool
8987  """
8988  return _IMP_kernel._TrivialTraitsDecorator___gt__(self, *args)
8989 
8990  def __hash__(self):
8991  r"""__hash__(_TrivialTraitsDecorator self) -> std::size_t"""
8992  return _IMP_kernel._TrivialTraitsDecorator___hash__(self)
8993 
8994  def __str__(self):
8995  r"""__str__(_TrivialTraitsDecorator self) -> std::string"""
8996  return _IMP_kernel._TrivialTraitsDecorator___str__(self)
8997 
8998  def __repr__(self):
8999  r"""__repr__(_TrivialTraitsDecorator self) -> std::string"""
9000  return _IMP_kernel._TrivialTraitsDecorator___repr__(self)
9001  __swig_destroy__ = _IMP_kernel.delete__TrivialTraitsDecorator
9002 
9003 # Register _TrivialTraitsDecorator in _IMP_kernel:
9004 _IMP_kernel._TrivialTraitsDecorator_swigregister(_TrivialTraitsDecorator)
9005 
9006 def __lshift__(*args):
9007  r"""
9008  __lshift__(_ostream out, _TrivialDecorator n) -> _ostream
9009  __lshift__(_ostream out, _TrivialDerivedDecorator n) -> _ostream
9010  __lshift__(_ostream out, _TrivialTraitsDecorator n) -> _ostream
9011  """
9012  return _IMP_kernel.__lshift__(*args)
9013 class _ConstOptimizer(Optimizer):
9014  r"""Proxy of C++ IMP::internal::_ConstOptimizer class."""
9015 
9016  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9017 
9018  def __init__(self, *args):
9019  r"""
9020  __init__(_ConstOptimizer self, Model m) -> _ConstOptimizer
9021  __init__(_ConstOptimizer self) -> _ConstOptimizer
9022  """
9023  _IMP_kernel._ConstOptimizer_swiginit(self, _IMP_kernel.new__ConstOptimizer(*args))
9024 
9025  def do_optimize(self, max_steps):
9026  r"""do_optimize(_ConstOptimizer self, unsigned int max_steps) -> IMP::Float"""
9027  return _IMP_kernel._ConstOptimizer_do_optimize(self, max_steps)
9028 
9029  def get_version_info(self):
9030  r"""get_version_info(_ConstOptimizer self) -> VersionInfo"""
9031  return _IMP_kernel._ConstOptimizer_get_version_info(self)
9032  __swig_destroy__ = _IMP_kernel.delete__ConstOptimizer
9033 
9034  def __str__(self):
9035  r"""__str__(_ConstOptimizer self) -> std::string"""
9036  return _IMP_kernel._ConstOptimizer___str__(self)
9037 
9038  def __repr__(self):
9039  r"""__repr__(_ConstOptimizer self) -> std::string"""
9040  return _IMP_kernel._ConstOptimizer___repr__(self)
9041 
9042  @staticmethod
9043  def get_from(o):
9044  return _object_cast_to__ConstOptimizer(o)
9045 
9046 
9047  def _get_as_binary(self):
9048  r"""_get_as_binary(_ConstOptimizer self) -> PyObject *"""
9049  return _IMP_kernel._ConstOptimizer__get_as_binary(self)
9050 
9051  def _set_from_binary(self, p):
9052  r"""_set_from_binary(_ConstOptimizer self, PyObject * p)"""
9053  return _IMP_kernel._ConstOptimizer__set_from_binary(self, p)
9054 
9055  def __getstate__(self):
9056  p = self._get_as_binary()
9057  if len(self.__dict__) > 1:
9058  d = self.__dict__.copy()
9059  del d['this']
9060  p = (d, p)
9061  return p
9062 
9063  def __setstate__(self, p):
9064  if not hasattr(self, 'this'):
9065  self.__init__()
9066  if isinstance(p, tuple):
9067  d, p = p
9068  self.__dict__.update(d)
9069  return self._set_from_binary(p)
9070 
9071 
9072 # Register _ConstOptimizer in _IMP_kernel:
9073 _IMP_kernel._ConstOptimizer_swigregister(_ConstOptimizer)
9074 
9075 def get_particle(p):
9076  r"""get_particle(Particle p) -> Particle"""
9077  return _IMP_kernel.get_particle(p)
9078 
9079 def _decorator_test(p):
9080  r"""_decorator_test(Particle p)"""
9081  return _IMP_kernel._decorator_test(p)
9082 
9083 def _overloaded_decorator(*args):
9084  r"""
9085  _overloaded_decorator(_TrivialDecorator a) -> int
9086  _overloaded_decorator(_TrivialDerivedDecorator a) -> int
9087  """
9088  return _IMP_kernel._overloaded_decorator(*args)
9089 
9090 def _take_particles(*args):
9091  r"""
9092  _take_particles(IMP::Particles const & ps) -> unsigned int
9093  _take_particles(Model m, IMP::Particles const & ps) -> unsigned int
9094  _take_particles(Model m, IMP::Particles const & ps, TextOutput out) -> unsigned int
9095  """
9096  return _IMP_kernel._take_particles(*args)
9097 
9098 def _give_particles(m):
9099  r"""_give_particles(Model m) -> IMP::Particles const &"""
9100  return _IMP_kernel._give_particles(m)
9101 
9102 def _pass_particles(ps):
9103  r"""_pass_particles(IMP::Particles const & ps) -> IMP::Particles const &"""
9104  return _IMP_kernel._pass_particles(ps)
9105 
9106 def _pass_particle(ps):
9107  r"""_pass_particle(Particle ps) -> Particle"""
9108  return _IMP_kernel._pass_particle(ps)
9109 
9110 def _pass_particle_pair(pp):
9111  r"""_pass_particle_pair(IMP::ParticlePair const & pp) -> IMP::ParticlePair const &"""
9112  return _IMP_kernel._pass_particle_pair(pp)
9113 
9114 def _give_particles_copy(m):
9115  r"""_give_particles_copy(Model m) -> IMP::Particles"""
9116  return _IMP_kernel._give_particles_copy(m)
9117 
9118 def _pass_float_keys(input):
9119  r"""_pass_float_keys(IMP::FloatKeys const & input) -> IMP::FloatKeys"""
9120  return _IMP_kernel._pass_float_keys(input)
9121 
9122 def _pass(*args):
9123  r"""
9124  _pass(IMP::Particles const & p) -> IMP::Particles const
9125  _pass(IMP::Restraints const & p) -> IMP::Restraints const &
9126  """
9127  return _IMP_kernel._pass(*args)
9128 
9129 def _pass_decorators(p):
9130  r"""_pass_decorators(IMP::internal::_TrivialDecorators const & p) -> IMP::internal::_TrivialDecorators const &"""
9131  return _IMP_kernel._pass_decorators(p)
9132 
9133 def _pass_decorator_traits(p):
9134  r"""_pass_decorator_traits(IMP::internal::_TrivialTraitsDecorators const & p) -> IMP::internal::_TrivialTraitsDecorators const &"""
9135  return _IMP_kernel._pass_decorator_traits(p)
9136 
9137 def _pass_particle_pairs(p):
9138  r"""_pass_particle_pairs(IMP::ParticlePairsTemp const & p) -> IMP::ParticlePairsTemp"""
9139  return _IMP_kernel._pass_particle_pairs(p)
9140 
9141 def _pass_particle_index_pairs(p):
9142  r"""_pass_particle_index_pairs(IMP::ParticleIndexPairs const & p) -> IMP::ParticleIndexPairs"""
9143  return _IMP_kernel._pass_particle_index_pairs(p)
9144 
9145 def _pass_model_objects(p):
9146  r"""_pass_model_objects(IMP::ModelObjectsTemp const & p) -> IMP::ModelObjectsTemp"""
9147  return _IMP_kernel._pass_model_objects(p)
9148 
9149 def _pass_particles_temps(ps):
9150  r"""_pass_particles_temps(IMP::ParticlesTemps const & ps) -> IMP::ParticlesTemps"""
9151  return _IMP_kernel._pass_particles_temps(ps)
9152 
9153 def _test_overload(*args):
9154  r"""
9155  _test_overload(IMP::Particles const & ps) -> int
9156  _test_overload(IMP::Restraints const & ps) -> int
9157  """
9158  return _IMP_kernel._test_overload(*args)
9159 
9160 def _get_range(m, k):
9161  r"""_get_range(Model m, FloatKey k) -> IMP::FloatRange"""
9162  return _IMP_kernel._get_range(m, k)
9163 
9164 def _create_particles_from_pdb(name, m):
9165  r"""_create_particles_from_pdb(std::string name, Model m) -> IMP::ParticleIndexes"""
9166  return _IMP_kernel._create_particles_from_pdb(name, m)
9167 class _LogPairScore(PairScore):
9168  r"""Proxy of C++ IMP::internal::_LogPairScore class."""
9169 
9170  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9171  __repr__ = _swig_repr
9172 
9173  def __init__(self):
9174  r"""__init__(_LogPairScore self) -> _LogPairScore"""
9175  _IMP_kernel._LogPairScore_swiginit(self, _IMP_kernel.new__LogPairScore())
9176 
9177  def do_get_inputs(self, arg2, arg3):
9178  r"""do_get_inputs(_LogPairScore self, Model arg2, IMP::ParticleIndexes const & arg3) -> IMP::ModelObjectsTemp"""
9179  return _IMP_kernel._LogPairScore_do_get_inputs(self, arg2, arg3)
9180 
9181  def get_version_info(self):
9182  r"""get_version_info(_LogPairScore self) -> VersionInfo"""
9183  return _IMP_kernel._LogPairScore_get_version_info(self)
9184  __swig_destroy__ = _IMP_kernel.delete__LogPairScore
9185 
9186  def get_particle_pairs(self):
9187  r"""get_particle_pairs(_LogPairScore self) -> IMP::ParticlePairsTemp"""
9188  return _IMP_kernel._LogPairScore_get_particle_pairs(self)
9189 
9190  def clear(self):
9191  r"""clear(_LogPairScore self)"""
9192  return _IMP_kernel._LogPairScore_clear(self)
9193 
9194  def get_contains(self, pp):
9195  r"""get_contains(_LogPairScore self, IMP::ParticlePair const & pp) -> bool"""
9196  return _IMP_kernel._LogPairScore_get_contains(self, pp)
9197 
9198 # Register _LogPairScore in _IMP_kernel:
9199 _IMP_kernel._LogPairScore_swigregister(_LogPairScore)
9200 
9201 def _overloaded_particles(*args):
9202  r"""
9203  _overloaded_particles(Particle arg1)
9204  _overloaded_particles(IMP::Particles const & arg1)
9205  _overloaded_particles(IMP::ParticlesTemp const & arg1)
9206  _overloaded_particles(Model arg1, IMP::ParticleIndexes const & arg2)
9207  _overloaded_particles(IMP::internal::_TrivialDecorators const & arg1)
9208  _overloaded_particles(_TrivialDecorator arg1)
9209  """
9210  return _IMP_kernel._overloaded_particles(*args)
9211 class _ImplicitParticles(object):
9212  r"""Proxy of C++ IMP::internal::_ImplicitParticles class."""
9213 
9214  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9215  __repr__ = _swig_repr
9216 
9217  def __init__(self, *args):
9218  r"""
9219  __init__(_ImplicitParticles self, Particle arg2) -> _ImplicitParticles
9220  __init__(_ImplicitParticles self, IMP::Particles const & arg2) -> _ImplicitParticles
9221  __init__(_ImplicitParticles self, IMP::ParticlesTemp const & arg2) -> _ImplicitParticles
9222  __init__(_ImplicitParticles self, Model arg2, IMP::ParticleIndexes const & arg3) -> _ImplicitParticles
9223  __init__(_ImplicitParticles self, IMP::internal::_TrivialDecorators const & arg2) -> _ImplicitParticles
9224  __init__(_ImplicitParticles self, _TrivialDecorator arg2) -> _ImplicitParticles
9225  """
9226  _IMP_kernel._ImplicitParticles_swiginit(self, _IMP_kernel.new__ImplicitParticles(*args))
9227  __swig_destroy__ = _IMP_kernel.delete__ImplicitParticles
9228 
9229 # Register _ImplicitParticles in _IMP_kernel:
9230 _IMP_kernel._ImplicitParticles_swigregister(_ImplicitParticles)
9231 
9232 def _implicit_particles(arg1):
9233  r"""_implicit_particles(_ImplicitParticles arg1)"""
9234  return _IMP_kernel._implicit_particles(arg1)
9235 
9236 def _take_particle_adaptor(pa):
9237  r"""_take_particle_adaptor(_ParticleAdaptor pa) -> ParticleIndex"""
9238  return _IMP_kernel._take_particle_adaptor(pa)
9239 
9240 def _take_particle_indexes_adaptor(pa):
9241  r"""_take_particle_indexes_adaptor(_ParticleIndexesAdaptor pa) -> IMP::ParticleIndexes"""
9242  return _IMP_kernel._take_particle_indexes_adaptor(pa)
9243 class ScopedSetFloatAttribute(_RAII):
9244  r"""Proxy of C++ IMP::ScopedSetAttribute< IMP::FloatKey,IMP::Float > class."""
9245 
9246  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9247 
9248  def __init__(self, *args):
9249  r"""
9250  __init__(ScopedSetFloatAttribute self) -> ScopedSetFloatAttribute
9251  __init__(ScopedSetFloatAttribute self, Particle p, FloatKey key, double const & value) -> ScopedSetFloatAttribute
9252  """
9253  _IMP_kernel.ScopedSetFloatAttribute_swiginit(self, _IMP_kernel.new_ScopedSetFloatAttribute(*args))
9254 
9255  def set(self, p, key, value):
9256  r"""set(ScopedSetFloatAttribute self, Particle p, FloatKey key, double const & value)"""
9257  return _IMP_kernel.ScopedSetFloatAttribute_set(self, p, key, value)
9258 
9259  def reset(self):
9260  r"""reset(ScopedSetFloatAttribute self)"""
9261  return _IMP_kernel.ScopedSetFloatAttribute_reset(self)
9262  __swig_destroy__ = _IMP_kernel.delete_ScopedSetFloatAttribute
9263 
9264  def show(self, *args):
9265  r"""show(ScopedSetFloatAttribute self, _ostream out=std::cout)"""
9266  return _IMP_kernel.ScopedSetFloatAttribute_show(self, *args)
9267 
9268  def __str__(self):
9269  r"""__str__(ScopedSetFloatAttribute self) -> std::string"""
9270  return _IMP_kernel.ScopedSetFloatAttribute___str__(self)
9271 
9272  def __repr__(self):
9273  r"""__repr__(ScopedSetFloatAttribute self) -> std::string"""
9274  return _IMP_kernel.ScopedSetFloatAttribute___repr__(self)
9275 
9276 # Register ScopedSetFloatAttribute in _IMP_kernel:
9277 _IMP_kernel.ScopedSetFloatAttribute_swigregister(ScopedSetFloatAttribute)
9278 
9279 def _get_module_data_path(module, file_name):
9280  r"""_get_module_data_path(std::string module, std::string file_name) -> std::string"""
9281  return _IMP_kernel._get_module_data_path(module, file_name)
9282 
9283 def _get_module_example_path(module, file_name):
9284  r"""_get_module_example_path(std::string module, std::string file_name) -> std::string"""
9285  return _IMP_kernel._get_module_example_path(module, file_name)
9286 
9287 #used_modules=[]
9288 #def show_used_modules():
9289 # for m in used_modules:
9290 # print "%-20s %s" % (m.get_module(), m.get_version())
9291 
9292 # Ensure that Windows gets the PATH set to include anything in the library
9293 # search path
9294 if sys.platform == 'win32' and 'IMP_LD_PATH' in os.environ:
9295  dirs = os.environ['IMP_LD_PATH'].split(":")
9296  pathcomps = os.environ['PATH'].split(";")
9297  for d in dirs:
9298  if d not in pathcomps:
9299  os.environ['PATH'] = d + ';' + os.environ['PATH']
9300 
9301 
9302 
9303 import sys
9304 import os
9305 
9307  """Allow command line tools to easily implement multiple commands.
9308  Typically, an IMP command line tool will use an instance of this class
9309  to provide a consistent interface to multiple distinct commands
9310  from a single binary, rather than providing a potentially large
9311  number of binaries. This is similar to the way a number of common
9312  command line tools outside of IMP function (e.g. Git provides a single
9313  `git` tool which implements multiple commands - `git add`, `git commit`,
9314  `git push` and so on).
9315 
9316  Each command is implemented with a Python module of the same name
9317  that can be imported from the module (for example, if `module_name`
9318  is `IMP.foo`, the `bar` command is provided by the `IMP.foo.bar` Python
9319  module, which would usually be found as `modules/foo/pyext/src/bar.py`).
9320  Each such module should have a docstring and a `%main()` method
9321  that takes no arguments (the module should also call its `%main()` method
9322  if it is run directly, i.e. with something like
9323  `if __name__=="__main__": %main()`). The encompassing module
9324  (`IMP.foo` in the example) should define `_all_commands` as a Python
9325  list of all valid commands.
9326 
9327  See the `multifit` and `cnmultifit` command line tools for example
9328  usage.
9329  """
9330 
9331  def __init__(self, short_help, long_help, module_name):
9332  """Constructor.
9333  @param short_help A few words that describe the command line tool.
9334  @param long_help Longer text, used in the `help` command.
9335  @param module_name Name of the module (e.g. `IMP.foo`) that
9336  implements the commands.
9337  """
9338  self.short_help = short_help
9339  self.long_help = long_help
9340  self.module_name = module_name
9341  self._all_commands = self.import_module()._all_commands
9342  self._progname = os.path.basename(sys.argv[0])
9343 
9344  def main(self):
9345  """Call this method to act upon the user-provided command line"""
9346  if len(sys.argv) <= 1:
9347  print(self.short_help + " Use '%s help' for help." % self._progname)
9348  else:
9349  command = sys.argv[1]
9350  if command in ('help', '--help', '-h'):
9351  if len(sys.argv) == 3:
9352  self.show_command_help(sys.argv[2])
9353  else:
9354  self.show_help()
9355  elif command == '--version':
9356  self.show_version()
9357  elif command in self._all_commands:
9358  self.do_command(command)
9359  else:
9360  self.unknown_command(command)
9361 
9362  def import_module(self, mod=None):
9363  modname = self.module_name
9364  if mod is not None:
9365  modname += "." + mod
9366  return __import__(modname, {}, {}, [''])
9367 
9368  def unknown_command(self, command):
9369  print("Unknown command: '%s'" % command)
9370  print("Use '%s help' for help." % self._progname)
9371  sys.exit(1)
9372 
9373  def _get_version(self):
9374  return self.import_module().get_module_version()
9375 
9376  def show_version(self):
9377  print(self._progname + ' ' + self._get_version())
9378 
9379  def show_help(self):
9380  ver = self._get_version()
9381  print("%s, version %s." % (self._progname, ver))
9382  print(self.long_help + """
9383 
9384 This program is part of IMP, the Integrative Modeling Platform,
9385 which is %s.
9386 For additional information about IMP, see <https://integrativemodeling.org>.
9387 
9388 Usage: %s <command> [options] [args]
9389 
9390 Commands:""" % (get_copyright(), self._progname))
9391  commands = self._all_commands[:] + ['help']
9392  commands.sort()
9393  cmdlen = max([len(c) for c in commands])
9394  for c in commands:
9395  if c == 'help':
9396  doc = 'Get help on using %s.' % self._progname
9397  else:
9398  doc = self.import_module(c).__doc__ or "<no help>"
9399  c += ' ' * (cmdlen - len(c))
9400  print(' ' + c + ' ' + doc)
9401  print("""
9402 Use "%s help <command>" for detailed help on any command
9403  or "%s --version" to see the version number.""" % (self._progname,
9404  self._progname))
9405 
9406  def do_command(self, command):
9407  mod = self.import_module(command)
9408  sys.argv[0] = self._progname + ' ' + command
9409  del sys.argv[1]
9410  mod.main()
9411 
9412  def show_command_help(self, command):
9413  if command == 'help':
9414  self.show_help()
9415  elif command in self._all_commands or command == 'help':
9416  mod = self.import_module(command)
9417  sys.argv = [self._progname + ' ' + command, '--help']
9418  mod.main()
9419  else:
9420  self.unknown_command(command)
9421 
9422 
9423 
9424 
9425 def get_networkx_graph(ig):
9426  import networkx
9427  g = networkx.DiGraph()
9428  if len(ig.get_vertices()) == 0:
9429  return g
9430 
9431  class NodeWrapper:
9432 
9433  def __init__(self, p):
9434  self.p = p
9435 
9436  def __str__(self):
9437  return self.p.get_name()
9438 
9439  def __call__(self, name):
9440  return self.p.__call__(name)
9441 
9442  for vi in ig.get_vertices():
9443  n = ig.get_vertex_name(vi)
9444  g.add_node(NodeWrapper(n))
9445  for vi in ig.get_vertices():
9446  n = ig.get_vertex_name(vi)
9447  for ni in ig.get_out_neighbors(vi):
9448  nn = ig.get_vertex_name(ni)
9449  g.add_edge(NodeWrapper(n), NodeWrapper(nn))
9450  return g
9451 
9452 
9453 def show_altgraph(g):
9454  def clean(name):
9455  try:
9456  n0 = name.get_name()
9457  except:
9458  n0 = str(name)
9459  n1 = str(n0).replace('"', '')
9460  n2 = n1.replace("\n", '')
9461  return n2
9462  import altgraph
9463  from altgraph import Graph, Dot
9464  graph = Graph.Graph()
9465  for i, v in enumerate(g.get_vertices()):
9466  graph.add_node(i) # , node_data=g.get_vertex_name(v)
9467  for i, v in enumerate(g.get_vertices()):
9468  for n in g.get_out_neighbors(v):
9469  graph.add_edge(v, n)
9470  dot = Dot.Dot(graph) # , graph_type="digraph"
9471  for i, v in enumerate(g.get_vertices()):
9472  dot.node_style(i, label=clean(g.get_vertex_name(v)))
9473  dot.display()
9474 
9475 
9476 def show_graphviz(g):
9477  import subprocess
9478  tfn = create_temporary_file_name("graph", ".dot")
9479  tfon = create_temporary_file_name("graph", ".pdf")
9480  st = g.get_graphviz_string()
9481  with open(tfn, "w") as fh:
9482  fh.write(st)
9483  try:
9484  print("running dot")
9485  sp = subprocess.Popen(["dot", "-Tpdf", tfn, "-o" + tfon])
9486  sp.wait()
9487  except:
9488  import sys
9489  sys.stderr.write("The dot command from the graphviz package was not found. Please make sure it is in the PATH passed to IMP.\n")
9490  return
9491  import platform
9492  if platform.system() == "Darwin":
9493  cmd = ["open"]
9494  else:
9495  cmd = ["gv", "acroread", "xpdf"]
9496  success = False
9497  for c in cmd:
9498  print("launching viewer " + c)
9499  try:
9500  subprocess.check_call([c, tfon])
9501  success = True
9502  break
9503  except:
9504  pass
9505  if not success:
9506  print("Could not display file. It is saved at " + tfon)
9507  return tfon
9508 
9509 
9510 
9511 
9512 import functools
9513 import contextlib
9514 
9515 def deprecated_module(version, module, help_message):
9516  """Mark a Python module as deprecated.
9517  @note The `module` argument would normally be `__name__`.
9518  @see [deprecation support](@ref deprecation)."""
9520  "Module %s is deprecated. %s\n" % (module, help_message))
9521 
9522 def deprecated_object(version, help_message):
9523  """Python decorator to mark a class as deprecated.
9524  @see [deprecation support](@ref deprecation)."""
9525  def wrapper(obj):
9526  orig_init = obj.__init__
9527 # Don't try to copy __module__ since __init__ may not have it
9528 # (e.g. if we subclassed object but didn't override __init__)
9529  @functools.wraps(orig_init, ('__name__', '__doc__'))
9530  def __init__(obj, *args, **keys):
9531  handle_use_deprecated("Object %s is deprecated. %s\n"
9532  % (type(obj), help_message))
9533  orig_init(obj, *args, **keys)
9534  obj.__init__ = __init__
9535  return obj
9536  return wrapper
9537 
9538 def deprecated_method(version, help_message):
9539  """Python decorator to mark a method as deprecated.
9540  @see [deprecation support](@ref deprecation)."""
9541  def out_wrapper(obj):
9542  @functools.wraps(obj)
9543  def wrapper(cls, *args, **keys):
9544  handle_use_deprecated("Method %s in %s is deprecated. %s\n"
9545  % (obj.__name__, type(cls), help_message))
9546  return obj(cls, *args, **keys)
9547  return wrapper
9548  return out_wrapper
9549 
9550 def deprecated_function(version, help_message):
9551  """Python decorator to mark a function as deprecated.
9552  @see [deprecation support](@ref deprecation)."""
9553  def out_wrapper(obj):
9554  @functools.wraps(obj)
9555  def wrapper(*args, **keys):
9556  handle_use_deprecated("Function %s is deprecated. %s\n"
9557  % (obj.__name__, help_message))
9558  return obj(*args, **keys)
9559  return wrapper
9560  return out_wrapper
9561 
9562 @contextlib.contextmanager
9563 def allow_deprecated(allow=True):
9564  """Context manager to temporarily allow (or disallow) deprecated code.
9565  @see [deprecation support](@ref deprecation)."""
9567  set_deprecation_exceptions(not allow)
9568  yield
9570 
9571 
9572 def _get_all_flags(ntokens):
9573  r"""_get_all_flags(unsigned int ntokens) -> IMP::Strings"""
9574  return _IMP_kernel._get_all_flags(ntokens)
9575 
9576 def _print_internal_help(out, description):
9577  r"""_print_internal_help(_ostream out, std::string description)"""
9578  return _IMP_kernel._print_internal_help(out, description)
9579 
9580 
9581 import argparse
9582 import sys
9583 
9584 class _PassThroughAction(argparse.Action):
9585  """Pass an argument through to the IMP Boost parser"""
9586  def __call__(self, parser, namespace, values, option_string=None):
9587  parser._boost_command_line.append(option_string)
9588  if values != []:
9589  parser._boost_command_line.append(values)
9590 # Terminate processing immediately if necessary (otherwise argparse
9591 # may fail if we're missing positional arguments)
9592  if option_string in ('-h', '--help', '--help_advanced', '--version'):
9593  parser._handle_boost()
9594 
9595 
9596 class ArgumentParser(argparse.ArgumentParser):
9597  """IMP-specific subclass of argparse.ArgumentParser.
9598  This adds options common to all IMP applications
9599  (see IMP::setup_from_argv()).
9600  """
9601 
9602  def __init__(self, *args, **kwargs):
9603 # Don't add --help option (since the Boost option parser handles it)
9604  kwargs['add_help'] = False
9605  super().__init__(*args, **kwargs)
9606  for ntoken in (0, 1):
9607  flags = _get_all_flags(ntoken)
9608  for f in flags:
9609  arg = ['-h', '--help'] if f == 'help' else ['--' + f]
9610  self.add_argument(*arg, help=argparse.SUPPRESS,
9611  nargs=None if ntoken else 0,
9612  action=_PassThroughAction,
9613  default=argparse.SUPPRESS)
9614 
9615  def parse_args(self, args=None, namespace=None):
9616  """Parse the command line and return optional and positional arguments.
9617  This functions in the same way as the method in the base class
9618  argparse.ArgumentParser, except that it also processes optional
9619  arguments common to all IMP applications (these are not returned
9620  in `args`, but can be obtained in the usual way, e.g. by calling
9621  IMP::get_string_flag()).
9622  @returns args
9623  """
9624  self._boost_command_line = [sys.argv[0]]
9625  ret = super().parse_args(args, namespace)
9626  if len(self._boost_command_line) > 1:
9627  self._handle_boost()
9628  return ret
9629 
9630  def _get_description(self):
9631  return self.format_help() + "\nOptions common to all IMP applications:"
9632 
9633  def print_help(self, file=None):
9634  _print_internal_help(file if file else sys.stdout,
9635  self._get_description())
9636 
9637  def _handle_boost(self):
9638  setup_from_argv(self._boost_command_line,
9639  self._get_description(),
9640  '==SUPPRESS==', 0)
9641 
9642 class RandomNumberGenerator(object):
9643  r"""Proxy of C++ IMP::RandomNumberGenerator class."""
9644 
9645  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
9646  __repr__ = _swig_repr
9647 
9648  def seed(self, x):
9649  r"""seed(RandomNumberGenerator self, int x)"""
9650  return _IMP_kernel.RandomNumberGenerator_seed(self, x)
9651 
9652  def __call__(self):
9653  r"""__call__(RandomNumberGenerator self) -> int"""
9654  return _IMP_kernel.RandomNumberGenerator___call__(self)
9655 
9656  def __init__(self):
9657  r"""__init__(RandomNumberGenerator self) -> RandomNumberGenerator"""
9658  _IMP_kernel.RandomNumberGenerator_swiginit(self, _IMP_kernel.new_RandomNumberGenerator())
9659  __swig_destroy__ = _IMP_kernel.delete_RandomNumberGenerator
9660 
9661 # Register RandomNumberGenerator in _IMP_kernel:
9662 _IMP_kernel.RandomNumberGenerator_swigregister(RandomNumberGenerator)
9663 
9664 def get_random_float_uniform(*args):
9665  r"""
9666  get_random_float_uniform() -> float
9667  get_random_float_uniform(float min, float max) -> float
9668  """
9669  return _IMP_kernel.get_random_float_uniform(*args)
9670 
9671 def get_random_double_uniform(*args):
9672  r"""
9673  get_random_double_uniform() -> double
9674  get_random_double_uniform(double min, double max) -> double
9675  """
9676  return _IMP_kernel.get_random_double_uniform(*args)
9677 
9678 def get_random_floats_normal(n, mean=0.0, stddev=1.0):
9679  r"""get_random_floats_normal(unsigned int n, float mean=0.0, float stddev=1.0) -> IMP::Vector< float,std::allocator< float > >"""
9680  return _IMP_kernel.get_random_floats_normal(n, mean, stddev)
9681 
9682 def get_random_doubles_normal(n, mean=0.0, stddev=1.0):
9683  r"""get_random_doubles_normal(unsigned int n, double mean=0.0, double stddev=1.0) -> IMP::Vector< double,std::allocator< double > >"""
9684  return _IMP_kernel.get_random_doubles_normal(n, mean, stddev)
9685 
9686 def get_random_floats_uniform(n):
9687  r"""get_random_floats_uniform(unsigned int n) -> IMP::Vector< float,std::allocator< float > >"""
9688  return _IMP_kernel.get_random_floats_uniform(n)
9689 
9690 def get_random_doubles_uniform(n):
9691  r"""get_random_doubles_uniform(unsigned int n) -> IMP::Vector< double,std::allocator< double > >"""
9692  return _IMP_kernel.get_random_doubles_uniform(n)
9693 
9694 def get_random_seed():
9695  r"""get_random_seed() -> boost::uint64_t"""
9696  return _IMP_kernel.get_random_seed()
9697 
9698 def _get_derivatives_numpy(m, k, m_pyobj):
9699  r"""_get_derivatives_numpy(Model m, FloatKey k, PyObject * m_pyobj) -> PyObject *"""
9700  return _IMP_kernel._get_derivatives_numpy(m, k, m_pyobj)
9701 
9702 def _get_floats_numpy(m, k, m_pyobj):
9703  r"""_get_floats_numpy(Model m, FloatKey k, PyObject * m_pyobj) -> PyObject *"""
9704  return _IMP_kernel._get_floats_numpy(m, k, m_pyobj)
9705 
9706 def _get_ints_numpy(m, k, m_pyobj):
9707  r"""_get_ints_numpy(Model m, IntKey k, PyObject * m_pyobj) -> PyObject *"""
9708  return _IMP_kernel._get_ints_numpy(m, k, m_pyobj)
9709 
9710 def _get_spheres_numpy(m, m_pyobj):
9711  r"""_get_spheres_numpy(Model m, PyObject * m_pyobj) -> PyObject *"""
9712  return _IMP_kernel._get_spheres_numpy(m, m_pyobj)
9713 
9714 def _get_sphere_derivatives_numpy(m, m_pyobj):
9715  r"""_get_sphere_derivatives_numpy(Model m, PyObject * m_pyobj) -> PyObject *"""
9716  return _IMP_kernel._get_sphere_derivatives_numpy(m, m_pyobj)
9717 
9718 try:
9719  import numpy
9720  ParticleIndex = numpy.intc
9721 except ImportError:
9722  pass
9723 
9724 
9725 def get_module_version():
9726  r"""get_module_version() -> std::string const"""
9727  return _IMP_kernel.get_module_version()
9728 
9729 def get_example_path(fname):
9730  r"""get_example_path(std::string fname) -> std::string"""
9731  return _IMP_kernel.get_example_path(fname)
9732 
9733 def get_data_path(fname):
9734  r"""get_data_path(std::string fname) -> std::string"""
9735  return _IMP_kernel.get_data_path(fname)
9736 
9737 from . import _version_check
9738 _version_check.check_version(get_module_version())
9739 __version__ = get_module_version()
9740 
9741 
9742 random_number_generator = cvar.random_number_generator
9743 
Particle * get_particle(ParticleIndex p) const
Get the particle from an index.
Definition: Model.h:489
def get_ints_numpy
Get the model's attribute array for IntKey k as a NumPy array.
Definition: __init__.py:5543
void add_int_flag(std::string name, size_t default_value, std::string description)
Allow command line tools to easily implement multiple commands.
Definition: __init__.py:9306
CheckLevel get_check_level()
Get the current audit mode.
Definition: exception.h:80
Key< 11 > TriggerKey
The type used to identify changed model properties.
Definition: base_types.h:82
bool get_is_quick_test()
Definition: flags.h:183
Key< 0 > FloatKey
The type used to identify float attributes in the Particles.
Definition: base_types.h:32
def allow_deprecated
Context manager to temporarily allow (or disallow) deprecated code.
Definition: __init__.py:9563
std::string get_unique_name(std::string templ)
Return a unique name produced from the string.
DependencyGraph get_dependency_graph(Model *m)
def get_floats_numpy
Get the model's attribute array for FloatKey k as a NumPy array.
Definition: __init__.py:5556
Objects get_live_objects()
Return pointers to all live objects.
Vector< char > write_particles_to_buffer(const ParticlesTemp &particles, const FloatKeys &keys)
return a binary buffer with the data
Key< 13 > SparseIntKey
The type used to identify sparse int attributes in the Particles.
Definition: base_types.h:90
def main
Call this method to act upon the user-provided command line.
Definition: __init__.py:9344
Key< 15 > SparseParticleIndexKey
The type used to identify sparse particle attributes in the Particles.
Definition: base_types.h:98
boost::graph DependencyGraph
Directed graph on the interactions between the various objects in the model.
ContainersTemp get_input_containers(const ModelObjectsTemp &mos)
Return all the input particles for a given ModelObject.
def deprecated_module
Mark a Python module as deprecated.
Definition: __init__.py:9515
Vector< VectorD< D > > get_vertices(const BoundingBoxD< D > &bb)
Return a list of the 2^D bounding points for the bounding box.
Definition: BoundingBoxD.h:281
Array< 4, WeakPointer< Particle >, Particle * > ParticleQuad
Definition: base_types.h:168
bool get_bool_flag(std::string name)
void handle_use_deprecated(std::string message)
Break in this method in gdb to find deprecated uses at runtime.
void set_progress_display(std::string description, unsigned int steps)
Set up the progress bar with the passed description.
def deprecated_function
Python decorator to mark a function as deprecated.
Definition: __init__.py:9550
virtual ::IMP::VersionInfo get_version_info() const override
Get information about the module and version of the object.
Definition: Model.h:643
void remove_attribute(TypeKey attribute_key, ParticleIndex particle)
remove particle attribute with the specified key
Index< ParticleIndexTag > ParticleIndex
Definition: base_types.h:178
ParticlesTemp get_particles(Model *m, const ParticleIndexes &ps)
Get the particles from a list of indexes.
Key< 6 > ParticleIndexesKey
The type used to identify a particle attribute in the Particles.
Definition: base_types.h:64
Array< 3, WeakPointer< Particle >, Particle * > ParticleTriplet
Definition: base_types.h:165
ContainersTemp get_output_containers(const ModelObjectsTemp &mos)
Return all the output particles for a given ModelObject.
void add_particle(RMF::FileHandle fh, Particle *hs)
virtual void clear_caches()
Definition: Object.h:270
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
void add_string_flag(std::string name, std::string default_value, std::string description)
LogLevel get_log_level()
Get the currently active global log level.
Definition: log.h:92
def get_sphere_derivatives_numpy
Get the model's XYZR attribute derivatives arrays as NumPy arrays.
Definition: __init__.py:5574
void set_deprecation_warnings(bool tf)
Toggle printing of warnings on using deprecated classes.
TextOutput create_temporary_file(std::string prefix="imp_temp", std::string suffix="")
Create a temporary file. The path can be extracted from the TextOutput.
ParticlesTemp get_output_particles(const ModelObjectsTemp &mos)
Return all the output particles for a given ModelObject.
ScoringFunction * create_scoring_function(RestraintType *rs, double weight=1.0, double max=NO_MAX, std::string name=std::string())
Create a ScoringFunction on a single restraint.
Definition: generic.h:23
void write_help(std::ostream &out=std::cerr)
Key< 2 > StringKey
The type used to identify string attributes in the Particles.
Definition: base_types.h:40
size_t get_int_flag(std::string name)
Key< 10 > FloatsKey
The type used to identify float vector attributes in the Particles.
Definition: base_types.h:60
void add_restraint(RMF::FileHandle fh, Restraint *hs)
boost::uint64_t get_random_seed()
Return the initial random seed.
Key< 3 > ParticleIndexKey
The type used to identify a particle attribute in the Particles.
Definition: base_types.h:44
Strings get_live_object_names()
Return the names of all live objects.
void add_to_progress_display(unsigned int step=1)
Set the current progress.
void add_attribute(TypeKey attribute_key, ParticleIndex particle, Type value)
add particle attribute with the specified key and initial value
void add_float_flag(std::string name, double default_value, std::string description)
virtual void do_destroy()
Definition: Object.h:274
Ints get_index(const ParticlesTemp &particles, const Subset &subset, const Subsets &excluded)
Common base class for heavy weight IMP objects.
Definition: Object.h:111
ParticleIndexes get_particle_indexes(ParticlesTemp const &particles)
def deprecated_method
Python decorator to mark a method as deprecated.
Definition: __init__.py:9538
void reset_log_timer()
Reset the log timer.
void add_restraints(RMF::FileHandle fh, const Restraints &hs)
void add_to_log(LogLevel level, std::string to_write)
Write a string to the log, for Python.
def parse_args
Parse the command line and return optional and positional arguments.
Definition: __init__.py:9615
void set_is_optimized(TypeKey attribute_key, ParticleIndex particle, bool true_or_false)
Key< 1 > IntKey
The type used to identify int attributes in the Particles.
Definition: base_types.h:36
Version and module information for Objects.
Definition: VersionInfo.h:29
Restraints create_decomposition(const RestraintsTemp &rs)
Return the decomposition of a list of restraints.
std::string get_relative_path(std::string base, std::string relative)
Return a path to a file relative to another file.
void set_deprecation_exceptions(bool tf)
Toggle whether an exception is thrown when a deprecated method is used.
def get_spheres_numpy
Get the model's XYZR attribute arrays as NumPy arrays.
Definition: __init__.py:5568
Key< 4 > ObjectKey
The type used to identify an Object attribute.
Definition: base_types.h:48
Interface to specialized Particle types (e.g. atoms)
Definition: Decorator.h:119
IMP-specific subclass of argparse.ArgumentParser.
Definition: __init__.py:9596
def get_derivatives_numpy
Get the model's attribute derivatives array for FloatKey k as a NumPy array.
Definition: __init__.py:5561
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
std::string get_absolute_path(std::string file)
Convert a possibly relative path to an absolute path.
std::string get_executable_name()
Return the name of the current executable.
void set_log_level(LogLevel l)
Set the current global log level.
unsigned int get_number_of_threads()
float get_random_float_uniform()
Return a uniformly distributed float number in range [0..1)
Definition: random_utils.h:138
def deprecated_object
Python decorator to mark a class as deprecated.
Definition: __init__.py:9522
ParticlesTemp get_input_particles(const ModelObjectsTemp &mos)
Return all the input particles for a given ModelObject.
void set_show_leaked_objects(bool tf)
Set whether to complain about objects not being properly cleaned up.
bool get_deprecation_exceptions()
Get whether an exception is thrown when a deprecated method is used.
void set_log_timer(bool tb)
Set whether log messages are tagged with the current log time.
void show_restraint_hierarchy(ScoringFunctionAdaptor rs, std::ostream &out=std::cout)
Print the hierarchy of restraints.
DependencyGraph get_pruned_dependency_graph(Model *m)
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
Object(std::string name)
Construct an object with the given name.
Array< 2, WeakPointer< Particle >, Particle * > ParticlePair
Definition: base_types.h:159
Key< 5 > IntsKey
The type used to identify int attributes in the Particles.
Definition: base_types.h:56
Restraints create_restraints(RMF::FileConstHandle fh, Model *m)
std::string show_graphviz(Graph g)
void set_check_level(CheckLevel l)
std::string get_string_flag(std::string name)
networkx::DiGraph get_networkx_graph(Graph g)
def __init__
Constructor.
Definition: __init__.py:9331
double get_random_double_uniform()
Return a uniformly distributed double number in range [0..1)
Definition: random_utils.h:173
Key< 8 > ModelKey
The type used to identify data stored directly in the model.
Definition: base_types.h:78
Key< 14 > SparseFloatKey
The type used to identify sparse float attributes in the Particles.
Definition: base_types.h:94
void show_altgraph(Graph g)
void update()
Sometimes it is useful to be able to make sure the model is up to date.
void setup_from_argv(int argc, char **argv, std::string description)
Parse the command line flags and return the positional arguments.
void add_bool_flag(std::string name, std::string description)
ParticleIndexes get_indexes(const ParticlesTemp &ps)
Get the indexes from a list of particles.
void read_particles_from_buffer(const Vector< char > &buffer, const ParticlesTemp &particles, const FloatKeys &keys)
load found attributes into the particles
Abstract single variable functor class for score functions.
Definition: UnaryFunction.h:27
void set_number_of_threads(unsigned int n)
double get_float_flag(std::string name)
void set_check_level(CheckLevel tf)
Control runtime checks in the code.
Definition: exception.h:72
ScoreStatesTemp get_update_order(ScoreStatesTemp input)
std::string get_module_version()
Return the version of this module, as a string.
std::string create_temporary_file_name(std::string prefix="imp_temp", std::string suffix="")
Create a temporary file.
Key< 12 > SparseStringKey
The type used to identify sparse string attributes in the Particles.
Definition: base_types.h:86
std::string get_copyright()
Get the IMP copyright notice.