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