IMP logo
IMP Reference Guide  develop.6701db5d00,2026/08/25
The Integrative Modeling Platform
bff/__init__.py
1 # This file was automatically generated by SWIG (https://www.swig.org).
2 # Version 4.5.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-2026 IMP Inventors. All rights reserved.
10 
11 
12 
13 
14 import typing
15 import _IMP_bff
16 
17 import builtins as __builtin__
18 
19 def _swig_repr(self):
20  try:
21  strthis = "proxy of " + self.this.__repr__()
22  except __builtin__.Exception:
23  strthis = ""
24  return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
25 
26 
27 def _swig_setattr_nondynamic_instance_variable(set):
28  def set_instance_attr(self, name, value):
29  if name == "this":
30  set(self, name, value)
31  elif name == "thisown":
32  self.this.own(value)
33  elif hasattr(self, name) and isinstance(getattr(type(self), name), property):
34  set(self, name, value)
35  else:
36  raise AttributeError("You cannot add instance attributes to %s" % self)
37  return set_instance_attr
38 
39 
40 def _swig_setattr_nondynamic_class_variable(set):
41  def set_class_attr(cls, name, value):
42  if hasattr(cls, name) and not isinstance(getattr(cls, name), property):
43  set(cls, name, value)
44  else:
45  raise AttributeError("You cannot add class attributes to %s" % cls)
46  return set_class_attr
47 
48 
49 class _SwigNonDynamicMeta(type):
50  """Meta class to enforce nondynamic attributes (no new attributes) for a class"""
51  __setattr__ = _swig_setattr_nondynamic_class_variable(type.__setattr__)
52 
53 
54 import weakref
55 
56 class IMP_BFF_SwigPyIterator(object):
57  r"""Proxy of C++ swig::IMP_BFF_SwigPyIterator class."""
58 
59  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
60 
61  def __init__(self, *args, **kwargs):
62  raise AttributeError("No constructor defined - class is abstract")
63  __repr__ = _swig_repr
64  __swig_destroy__ = _IMP_bff.delete_IMP_BFF_SwigPyIterator
65 
66  def value(self):
67  r"""value(IMP_BFF_SwigPyIterator self) -> PyObject *"""
68  return _IMP_bff.IMP_BFF_SwigPyIterator_value(self)
69 
70  def incr(self, n=1):
71  r"""incr(IMP_BFF_SwigPyIterator self, size_t n=1) -> IMP_BFF_SwigPyIterator"""
72  return _IMP_bff.IMP_BFF_SwigPyIterator_incr(self, n)
73 
74  def decr(self, n=1):
75  r"""decr(IMP_BFF_SwigPyIterator self, size_t n=1) -> IMP_BFF_SwigPyIterator"""
76  return _IMP_bff.IMP_BFF_SwigPyIterator_decr(self, n)
77 
78  def distance(self, x):
79  r"""distance(IMP_BFF_SwigPyIterator self, IMP_BFF_SwigPyIterator x) -> ptrdiff_t"""
80  return _IMP_bff.IMP_BFF_SwigPyIterator_distance(self, x)
81 
82  def equal(self, x):
83  r"""equal(IMP_BFF_SwigPyIterator self, IMP_BFF_SwigPyIterator x) -> bool"""
84  return _IMP_bff.IMP_BFF_SwigPyIterator_equal(self, x)
85 
86  def copy(self):
87  r"""copy(IMP_BFF_SwigPyIterator self) -> IMP_BFF_SwigPyIterator"""
88  return _IMP_bff.IMP_BFF_SwigPyIterator_copy(self)
89 
90  def __next__(self):
91  r"""__next__(IMP_BFF_SwigPyIterator self) -> PyObject *"""
92  return _IMP_bff.IMP_BFF_SwigPyIterator___next__(self)
93 
94  def previous(self):
95  r"""previous(IMP_BFF_SwigPyIterator self) -> PyObject *"""
96  return _IMP_bff.IMP_BFF_SwigPyIterator_previous(self)
97 
98  def advance(self, n):
99  r"""advance(IMP_BFF_SwigPyIterator self, ptrdiff_t n) -> IMP_BFF_SwigPyIterator"""
100  return _IMP_bff.IMP_BFF_SwigPyIterator_advance(self, n)
101 
102  def __eq__(self, x):
103  r"""__eq__(IMP_BFF_SwigPyIterator self, IMP_BFF_SwigPyIterator x) -> bool"""
104  return _IMP_bff.IMP_BFF_SwigPyIterator___eq__(self, x)
105 
106  def __ne__(self, x):
107  r"""__ne__(IMP_BFF_SwigPyIterator self, IMP_BFF_SwigPyIterator x) -> bool"""
108  return _IMP_bff.IMP_BFF_SwigPyIterator___ne__(self, x)
109 
110  def __iadd__(self, n):
111  r"""__iadd__(IMP_BFF_SwigPyIterator self, ptrdiff_t n) -> IMP_BFF_SwigPyIterator"""
112  return _IMP_bff.IMP_BFF_SwigPyIterator___iadd__(self, n)
113 
114  def __isub__(self, n):
115  r"""__isub__(IMP_BFF_SwigPyIterator self, ptrdiff_t n) -> IMP_BFF_SwigPyIterator"""
116  return _IMP_bff.IMP_BFF_SwigPyIterator___isub__(self, n)
117 
118  def __add__(self, n):
119  r"""__add__(IMP_BFF_SwigPyIterator self, ptrdiff_t n) -> IMP_BFF_SwigPyIterator"""
120  return _IMP_bff.IMP_BFF_SwigPyIterator___add__(self, n)
121 
122  def __sub__(self, *args):
123  r"""
124  __sub__(IMP_BFF_SwigPyIterator self, ptrdiff_t n) -> IMP_BFF_SwigPyIterator
125  __sub__(IMP_BFF_SwigPyIterator self, IMP_BFF_SwigPyIterator x) -> ptrdiff_t
126  """
127  return _IMP_bff.IMP_BFF_SwigPyIterator___sub__(self, *args)
128  def __iter__(self):
129  return self
130 
131 # Register IMP_BFF_SwigPyIterator in _IMP_bff:
132 _IMP_bff.IMP_BFF_SwigPyIterator_swigregister(IMP_BFF_SwigPyIterator)
133 
134 _value_types=[]
135 _object_types=[]
136 _raii_types=[]
137 _plural_types=[]
138 
139 IMP_DEBUG = _IMP_bff.IMP_DEBUG
140 
141 IMP_RELEASE = _IMP_bff.IMP_RELEASE
142 
143 IMP_SILENT = _IMP_bff.IMP_SILENT
144 
145 IMP_PROGRESS = _IMP_bff.IMP_PROGRESS
146 
147 IMP_TERSE = _IMP_bff.IMP_TERSE
148 
149 IMP_VERBOSE = _IMP_bff.IMP_VERBOSE
150 
151 IMP_MEMORY = _IMP_bff.IMP_MEMORY
152 
153 IMP_NONE = _IMP_bff.IMP_NONE
154 
155 IMP_USAGE = _IMP_bff.IMP_USAGE
156 
157 IMP_INTERNAL = _IMP_bff.IMP_INTERNAL
158 
159 IMP_KERNEL_HAS_LOG4CXX = _IMP_bff.IMP_KERNEL_HAS_LOG4CXX
160 
161 IMP_COMPILER_HAS_CEREAL_RAW_POINTER = _IMP_bff.IMP_COMPILER_HAS_CEREAL_RAW_POINTER
162 
163 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_bff.IMP_COMPILER_HAS_DEBUG_VECTOR
164 
165 IMP_COMPILER_HAS_RANDOM_SHUFFLE = _IMP_bff.IMP_COMPILER_HAS_RANDOM_SHUFFLE
166 
167 IMP_COMPILER_HAS_THREE_WAY = _IMP_bff.IMP_COMPILER_HAS_THREE_WAY
168 
169 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_bff.IMP_KERNEL_HAS_BOOST_RANDOM
170 
171 IMP_KERNEL_HAS_NUMPY = _IMP_bff.IMP_KERNEL_HAS_NUMPY
172 
173 IMP_KERNEL_HAS_BOOST_SYSTEM = _IMP_bff.IMP_KERNEL_HAS_BOOST_SYSTEM
174 
175 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_bff.IMP_KERNEL_HAS_GPERFTOOLS
176 
177 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_bff.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
178 
179 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_bff.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
180 
181 IMPKERNEL_SHOW_WARNINGS = _IMP_bff.IMPKERNEL_SHOW_WARNINGS
182 
183 
184 import sys
185 class _DirectorObjects:
186  """@internal Simple class to keep references to director objects
187  to prevent premature deletion."""
188  def __init__(self):
189  self._objects = []
190  def register(self, obj):
191  """Take a reference to a director object; will only work for
192  refcounted C++ classes"""
193  if hasattr(obj, 'get_ref_count'):
194  self._objects.append(obj)
195  def cleanup(self):
196  """Only drop our reference and allow cleanup by Python if no other
197  Python references exist (we hold 3 references: one in self._objects,
198  one in x, and one in the argument list for getrefcount) *and* no
199  other C++ references exist (the Python object always holds one)"""
200  objs = [x for x in self._objects if sys.getrefcount(x) > 3 \
201  or x.get_ref_count() > 1]
202 # Do in two steps so the references are kept until the end of the
203 # function (deleting references may trigger a fresh call to this method)
204  self._objects = objs
205  def get_object_count(self):
206  """Get number of director objects (useful for testing only)"""
207  return len(self._objects)
208 _director_objects = _DirectorObjects()
209 
210 class _ostream(object):
211  r"""Proxy of C++ std::ostream class."""
212 
213  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
214 
215  def __init__(self, *args, **kwargs):
216  raise AttributeError("No constructor defined")
217  __repr__ = _swig_repr
218 
219  def write(self, osa_buf):
220  r"""write(_ostream self, char const * osa_buf)"""
221  return _IMP_bff._ostream_write(self, osa_buf)
222 
223 # Register _ostream in _IMP_bff:
224 _IMP_bff._ostream_swigregister(_ostream)
225 IMP_C_OPEN_BINARY = _IMP_bff.IMP_C_OPEN_BINARY
226 
227 import IMP
228 IMP_CGAL_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_CGAL_HAS_BOOST_FILESYSTEM
229 
230 IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_CGAL_HAS_BOOST_PROGRAMOPTIONS
231 
232 IMP_CGAL_HAS_BOOST_RANDOM = _IMP_bff.IMP_CGAL_HAS_BOOST_RANDOM
233 
234 IMP_CGAL_HAS_NUMPY = _IMP_bff.IMP_CGAL_HAS_NUMPY
235 
236 IMPCGAL_SHOW_WARNINGS = _IMP_bff.IMPCGAL_SHOW_WARNINGS
237 
238 import IMP.cgal
239 IMP_ALGEBRA_HAS_IMP_CGAL = _IMP_bff.IMP_ALGEBRA_HAS_IMP_CGAL
240 
241 IMP_ALGEBRA_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_ALGEBRA_HAS_BOOST_FILESYSTEM
242 
243 IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_ALGEBRA_HAS_BOOST_PROGRAMOPTIONS
244 
245 IMP_ALGEBRA_HAS_BOOST_RANDOM = _IMP_bff.IMP_ALGEBRA_HAS_BOOST_RANDOM
246 
247 IMP_ALGEBRA_HAS_CGAL = _IMP_bff.IMP_ALGEBRA_HAS_CGAL
248 
249 IMP_ALGEBRA_HAS_NUMPY = _IMP_bff.IMP_ALGEBRA_HAS_NUMPY
250 
251 IMP_ALGEBRA_HAS_ANN = _IMP_bff.IMP_ALGEBRA_HAS_ANN
252 
253 IMPALGEBRA_SHOW_WARNINGS = _IMP_bff.IMPALGEBRA_SHOW_WARNINGS
254 
255 import IMP.algebra
256 IMP_DISPLAY_HAS_IMP_CGAL = _IMP_bff.IMP_DISPLAY_HAS_IMP_CGAL
257 
258 IMP_DISPLAY_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_DISPLAY_HAS_BOOST_FILESYSTEM
259 
260 IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_DISPLAY_HAS_BOOST_PROGRAMOPTIONS
261 
262 IMP_DISPLAY_HAS_BOOST_RANDOM = _IMP_bff.IMP_DISPLAY_HAS_BOOST_RANDOM
263 
264 IMP_DISPLAY_HAS_CGAL = _IMP_bff.IMP_DISPLAY_HAS_CGAL
265 
266 IMP_DISPLAY_HAS_NUMPY = _IMP_bff.IMP_DISPLAY_HAS_NUMPY
267 
268 IMPDISPLAY_SHOW_WARNINGS = _IMP_bff.IMPDISPLAY_SHOW_WARNINGS
269 
270 import IMP.display
271 IMP_SCORE_FUNCTOR_HAS_IMP_CGAL = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_IMP_CGAL
272 
273 IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_BOOST_FILESYSTEM
274 
275 IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_BOOST_PROGRAMOPTIONS
276 
277 IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_BOOST_RANDOM
278 
279 IMP_SCORE_FUNCTOR_HAS_CGAL = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_CGAL
280 
281 IMP_SCORE_FUNCTOR_HAS_HDF5 = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_HDF5
282 
283 IMP_SCORE_FUNCTOR_HAS_NUMPY = _IMP_bff.IMP_SCORE_FUNCTOR_HAS_NUMPY
284 
285 IMPSCOREFUNCTOR_SHOW_WARNINGS = _IMP_bff.IMPSCOREFUNCTOR_SHOW_WARNINGS
286 
287 import IMP.score_functor
288 IMP_STATISTICS_HAS_IMP_CGAL = _IMP_bff.IMP_STATISTICS_HAS_IMP_CGAL
289 
290 IMP_STATISTICS_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_STATISTICS_HAS_BOOST_FILESYSTEM
291 
292 IMP_STATISTICS_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_STATISTICS_HAS_BOOST_PROGRAMOPTIONS
293 
294 IMP_STATISTICS_HAS_BOOST_RANDOM = _IMP_bff.IMP_STATISTICS_HAS_BOOST_RANDOM
295 
296 IMP_STATISTICS_HAS_CGAL = _IMP_bff.IMP_STATISTICS_HAS_CGAL
297 
298 IMP_STATISTICS_HAS_NUMPY = _IMP_bff.IMP_STATISTICS_HAS_NUMPY
299 
300 IMPSTATISTICS_SHOW_WARNINGS = _IMP_bff.IMPSTATISTICS_SHOW_WARNINGS
301 
302 import IMP.statistics
303 IMP_CORE_HAS_IMP_CGAL = _IMP_bff.IMP_CORE_HAS_IMP_CGAL
304 
305 IMP_CORE_HAS_IMP_KERNEL = _IMP_bff.IMP_CORE_HAS_IMP_KERNEL
306 
307 IMP_CORE_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_CORE_HAS_BOOST_FILESYSTEM
308 
309 IMP_CORE_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_CORE_HAS_BOOST_PROGRAMOPTIONS
310 
311 IMP_CORE_HAS_BOOST_RANDOM = _IMP_bff.IMP_CORE_HAS_BOOST_RANDOM
312 
313 IMP_CORE_HAS_CGAL = _IMP_bff.IMP_CORE_HAS_CGAL
314 
315 IMP_CORE_HAS_HDF5 = _IMP_bff.IMP_CORE_HAS_HDF5
316 
317 IMP_CORE_HAS_NUMPY = _IMP_bff.IMP_CORE_HAS_NUMPY
318 
319 IMPCORE_SHOW_WARNINGS = _IMP_bff.IMPCORE_SHOW_WARNINGS
320 
321 import IMP.core
322 IMP_CONTAINER_HAS_IMP_ALGEBRA = _IMP_bff.IMP_CONTAINER_HAS_IMP_ALGEBRA
323 
324 IMP_CONTAINER_HAS_IMP_CGAL = _IMP_bff.IMP_CONTAINER_HAS_IMP_CGAL
325 
326 IMP_CONTAINER_HAS_IMP_DISPLAY = _IMP_bff.IMP_CONTAINER_HAS_IMP_DISPLAY
327 
328 IMP_CONTAINER_HAS_IMP_KERNEL = _IMP_bff.IMP_CONTAINER_HAS_IMP_KERNEL
329 
330 IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR = _IMP_bff.IMP_CONTAINER_HAS_IMP_SCORE_FUNCTOR
331 
332 IMP_CONTAINER_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_CONTAINER_HAS_BOOST_FILESYSTEM
333 
334 IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_CONTAINER_HAS_BOOST_PROGRAMOPTIONS
335 
336 IMP_CONTAINER_HAS_BOOST_RANDOM = _IMP_bff.IMP_CONTAINER_HAS_BOOST_RANDOM
337 
338 IMP_CONTAINER_HAS_CGAL = _IMP_bff.IMP_CONTAINER_HAS_CGAL
339 
340 IMP_CONTAINER_HAS_HDF5 = _IMP_bff.IMP_CONTAINER_HAS_HDF5
341 
342 IMP_CONTAINER_HAS_NUMPY = _IMP_bff.IMP_CONTAINER_HAS_NUMPY
343 
344 IMP_CONTAINER_HAS_PYTHON_IHM = _IMP_bff.IMP_CONTAINER_HAS_PYTHON_IHM
345 
346 IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP = _IMP_bff.IMP_CONTAINER_HAS_GOOGLE_DENSE_HASH_MAP
347 
348 IMP_CONTAINER_HAS_ROBIN_MAP = _IMP_bff.IMP_CONTAINER_HAS_ROBIN_MAP
349 
350 IMPCONTAINER_SHOW_WARNINGS = _IMP_bff.IMPCONTAINER_SHOW_WARNINGS
351 
352 import IMP.container
353 IMP_ATOM_HAS_IMP_CGAL = _IMP_bff.IMP_ATOM_HAS_IMP_CGAL
354 
355 IMP_ATOM_HAS_IMP_KERNEL = _IMP_bff.IMP_ATOM_HAS_IMP_KERNEL
356 
357 IMP_ATOM_HAS_IMP_SCORE_FUNCTOR = _IMP_bff.IMP_ATOM_HAS_IMP_SCORE_FUNCTOR
358 
359 IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_ATOM_HAS_BOOST_PROGRAMOPTIONS
360 
361 IMP_ATOM_HAS_BOOST_RANDOM = _IMP_bff.IMP_ATOM_HAS_BOOST_RANDOM
362 
363 IMP_ATOM_HAS_BOOST_REGEX = _IMP_bff.IMP_ATOM_HAS_BOOST_REGEX
364 
365 IMP_ATOM_HAS_CGAL = _IMP_bff.IMP_ATOM_HAS_CGAL
366 
367 IMP_ATOM_HAS_HDF5 = _IMP_bff.IMP_ATOM_HAS_HDF5
368 
369 IMP_ATOM_HAS_NUMPY = _IMP_bff.IMP_ATOM_HAS_NUMPY
370 
371 IMP_ATOM_HAS_PYTHON_IHM = _IMP_bff.IMP_ATOM_HAS_PYTHON_IHM
372 
373 IMPATOM_SHOW_WARNINGS = _IMP_bff.IMPATOM_SHOW_WARNINGS
374 
375 IMP_ATOM_TYPE_INDEX = _IMP_bff.IMP_ATOM_TYPE_INDEX
376 
377 IMP_RESIDUE_TYPE_INDEX = _IMP_bff.IMP_RESIDUE_TYPE_INDEX
378 
379 IMP_HIERARCHY_TYPE_INDEX = _IMP_bff.IMP_HIERARCHY_TYPE_INDEX
380 
381 IMP_CHAIN_TYPE_INDEX = _IMP_bff.IMP_CHAIN_TYPE_INDEX
382 
383 import IMP.atom
384 IMP_EM_HAS_IMP_CGAL = _IMP_bff.IMP_EM_HAS_IMP_CGAL
385 
386 IMP_EM_HAS_IMP_CONTAINER = _IMP_bff.IMP_EM_HAS_IMP_CONTAINER
387 
388 IMP_EM_HAS_IMP_DISPLAY = _IMP_bff.IMP_EM_HAS_IMP_DISPLAY
389 
390 IMP_EM_HAS_IMP_SCORE_FUNCTOR = _IMP_bff.IMP_EM_HAS_IMP_SCORE_FUNCTOR
391 
392 IMP_EM_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_EM_HAS_BOOST_FILESYSTEM
393 
394 IMP_EM_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_EM_HAS_BOOST_PROGRAMOPTIONS
395 
396 IMP_EM_HAS_BOOST_RANDOM = _IMP_bff.IMP_EM_HAS_BOOST_RANDOM
397 
398 IMP_EM_HAS_BOOST_REGEX = _IMP_bff.IMP_EM_HAS_BOOST_REGEX
399 
400 IMP_EM_HAS_CGAL = _IMP_bff.IMP_EM_HAS_CGAL
401 
402 IMP_EM_HAS_HDF5 = _IMP_bff.IMP_EM_HAS_HDF5
403 
404 IMP_EM_HAS_NUMPY = _IMP_bff.IMP_EM_HAS_NUMPY
405 
406 IMP_EM_HAS_PYTHON_IHM = _IMP_bff.IMP_EM_HAS_PYTHON_IHM
407 
408 IMPEM_SHOW_WARNINGS = _IMP_bff.IMPEM_SHOW_WARNINGS
409 
410 import IMP.em
411 IMP_BFF_HAS_IMP_ALGEBRA = _IMP_bff.IMP_BFF_HAS_IMP_ALGEBRA
412 
413 IMP_BFF_HAS_IMP_CGAL = _IMP_bff.IMP_BFF_HAS_IMP_CGAL
414 
415 IMP_BFF_HAS_IMP_DISPLAY = _IMP_bff.IMP_BFF_HAS_IMP_DISPLAY
416 
417 IMP_BFF_HAS_IMP_KERNEL = _IMP_bff.IMP_BFF_HAS_IMP_KERNEL
418 
419 IMP_BFF_HAS_IMP_SCORE_FUNCTOR = _IMP_bff.IMP_BFF_HAS_IMP_SCORE_FUNCTOR
420 
421 IMP_BFF_HAS_IMP_STATISTICS = _IMP_bff.IMP_BFF_HAS_IMP_STATISTICS
422 
423 IMP_BFF_HAS_BOOST_FILESYSTEM = _IMP_bff.IMP_BFF_HAS_BOOST_FILESYSTEM
424 
425 IMP_BFF_HAS_BOOST_PROGRAMOPTIONS = _IMP_bff.IMP_BFF_HAS_BOOST_PROGRAMOPTIONS
426 
427 IMP_BFF_HAS_BOOST_RANDOM = _IMP_bff.IMP_BFF_HAS_BOOST_RANDOM
428 
429 IMP_BFF_HAS_BOOST_REGEX = _IMP_bff.IMP_BFF_HAS_BOOST_REGEX
430 
431 IMP_BFF_HAS_CGAL = _IMP_bff.IMP_BFF_HAS_CGAL
432 
433 IMP_BFF_HAS_HDF5 = _IMP_bff.IMP_BFF_HAS_HDF5
434 
435 IMP_BFF_HAS_PYTHON_IHM = _IMP_bff.IMP_BFF_HAS_PYTHON_IHM
436 
437 IMP_BFF_HAS_AVX = _IMP_bff.IMP_BFF_HAS_AVX
438 
439 IMPBFF_SHOW_WARNINGS = _IMP_bff.IMPBFF_SHOW_WARNINGS
440 
441 
442 import numpy as np
443 
444 SHARED_PTR_DISOWN = _IMP_bff.SHARED_PTR_DISOWN
445 
446 class PairFloatFloat(object):
447  r"""Proxy of C++ std::pair< float,float > class."""
448 
449  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
450  __repr__ = _swig_repr
451 
452  def __init__(self, *args):
453  r"""
454  __init__(PairFloatFloat self) -> PairFloatFloat
455  __init__(PairFloatFloat self, float first, float second) -> PairFloatFloat
456  __init__(PairFloatFloat self, PairFloatFloat other) -> PairFloatFloat
457  """
458  _IMP_bff.PairFloatFloat_swiginit(self, _IMP_bff.new_PairFloatFloat(*args))
459  first = property(_IMP_bff.PairFloatFloat_first_get, _IMP_bff.PairFloatFloat_first_set, doc=r"""first : float""")
460  second = property(_IMP_bff.PairFloatFloat_second_get, _IMP_bff.PairFloatFloat_second_set, doc=r"""second : float""")
461  def __len__(self):
462  return 2
463  def __repr__(self):
464  return str((self.first, self.second))
465  def __getitem__(self, index):
466  if not (index % 2):
467  return self.first
468  else:
469  return self.second
470  def __setitem__(self, index, val):
471  if not (index % 2):
472  self.first = val
473  else:
474  self.second = val
475  __swig_destroy__ = _IMP_bff.delete_PairFloatFloat
476 
477 # Register PairFloatFloat in _IMP_bff:
478 _IMP_bff.PairFloatFloat_swigregister(PairFloatFloat)
479 class VectorString(object):
480  r"""Proxy of C++ std::vector< std::string > class."""
481 
482  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
483  __repr__ = _swig_repr
484 
485  def iterator(self):
486  r"""iterator(VectorString self) -> IMP_BFF_SwigPyIterator"""
487  return _IMP_bff.VectorString_iterator(self)
488  def __iter__(self):
489  return self.iterator()
490 
491  def __bool__(self):
492  r"""__bool__(VectorString self) -> bool"""
493  return _IMP_bff.VectorString___bool__(self)
494 
495  def __len__(self):
496  r"""__len__(VectorString self) -> std::vector< std::string >::size_type"""
497  return _IMP_bff.VectorString___len__(self)
498 
499  def __delitem__(self, *args):
500  r"""
501  __delitem__(VectorString self, std::vector< std::string >::difference_type i)
502  __delitem__(VectorString self, SWIGPY_SLICEOBJECT * slice)
503  """
504  return _IMP_bff.VectorString___delitem__(self, *args)
505 
506  def __getitem__(self, *args):
507  r"""
508  __getitem__(VectorString self, SWIGPY_SLICEOBJECT * slice) -> VectorString
509  __getitem__(VectorString self, std::vector< std::string >::difference_type i) -> std::vector< std::string >::value_type const &
510  """
511  return _IMP_bff.VectorString___getitem__(self, *args)
512 
513  def __setitem__(self, *args):
514  r"""
515  __setitem__(VectorString self, SWIGPY_SLICEOBJECT * slice, VectorString v)
516  __setitem__(VectorString self, SWIGPY_SLICEOBJECT * slice)
517  __setitem__(VectorString self, std::vector< std::string >::difference_type i, std::vector< std::string >::value_type const & x)
518  """
519  return _IMP_bff.VectorString___setitem__(self, *args)
520 
521  def pop(self):
522  r"""pop(VectorString self) -> std::vector< std::string >::value_type"""
523  return _IMP_bff.VectorString_pop(self)
524 
525  def append(self, x):
526  r"""append(VectorString self, std::vector< std::string >::value_type const & x)"""
527  return _IMP_bff.VectorString_append(self, x)
528 
529  def empty(self):
530  r"""empty(VectorString self) -> bool"""
531  return _IMP_bff.VectorString_empty(self)
532 
533  def size(self):
534  r"""size(VectorString self) -> std::vector< std::string >::size_type"""
535  return _IMP_bff.VectorString_size(self)
536 
537  def swap(self, v):
538  r"""swap(VectorString self, VectorString v)"""
539  return _IMP_bff.VectorString_swap(self, v)
540 
541  def begin(self):
542  r"""begin(VectorString self) -> std::vector< std::string >::iterator"""
543  return _IMP_bff.VectorString_begin(self)
544 
545  def end(self):
546  r"""end(VectorString self) -> std::vector< std::string >::iterator"""
547  return _IMP_bff.VectorString_end(self)
548 
549  def rbegin(self):
550  r"""rbegin(VectorString self) -> std::vector< std::string >::reverse_iterator"""
551  return _IMP_bff.VectorString_rbegin(self)
552 
553  def rend(self):
554  r"""rend(VectorString self) -> std::vector< std::string >::reverse_iterator"""
555  return _IMP_bff.VectorString_rend(self)
556 
557  def clear(self):
558  r"""clear(VectorString self)"""
559  return _IMP_bff.VectorString_clear(self)
560 
561  def get_allocator(self):
562  r"""get_allocator(VectorString self) -> std::vector< std::string >::allocator_type"""
563  return _IMP_bff.VectorString_get_allocator(self)
564 
565  def pop_back(self):
566  r"""pop_back(VectorString self)"""
567  return _IMP_bff.VectorString_pop_back(self)
568 
569  def erase(self, *args):
570  r"""
571  erase(VectorString self, std::vector< std::string >::iterator pos) -> std::vector< std::string >::iterator
572  erase(VectorString self, std::vector< std::string >::iterator first, std::vector< std::string >::iterator last) -> std::vector< std::string >::iterator
573  """
574  return _IMP_bff.VectorString_erase(self, *args)
575 
576  def __init__(self, *args):
577  r"""
578  __init__(VectorString self) -> VectorString
579  __init__(VectorString self, VectorString other) -> VectorString
580  __init__(VectorString self, std::vector< std::string >::size_type size) -> VectorString
581  __init__(VectorString self, std::vector< std::string >::size_type size, std::vector< std::string >::value_type const & value) -> VectorString
582  """
583  _IMP_bff.VectorString_swiginit(self, _IMP_bff.new_VectorString(*args))
584 
585  def push_back(self, x):
586  r"""push_back(VectorString self, std::vector< std::string >::value_type const & x)"""
587  return _IMP_bff.VectorString_push_back(self, x)
588 
589  def front(self):
590  r"""front(VectorString self) -> std::vector< std::string >::value_type const &"""
591  return _IMP_bff.VectorString_front(self)
592 
593  def back(self):
594  r"""back(VectorString self) -> std::vector< std::string >::value_type const &"""
595  return _IMP_bff.VectorString_back(self)
596 
597  def assign(self, n, x):
598  r"""assign(VectorString self, std::vector< std::string >::size_type n, std::vector< std::string >::value_type const & x)"""
599  return _IMP_bff.VectorString_assign(self, n, x)
600 
601  def resize(self, *args):
602  r"""
603  resize(VectorString self, std::vector< std::string >::size_type new_size)
604  resize(VectorString self, std::vector< std::string >::size_type new_size, std::vector< std::string >::value_type const & x)
605  """
606  return _IMP_bff.VectorString_resize(self, *args)
607 
608  def insert(self, *args):
609  r"""
610  insert(VectorString self, std::vector< std::string >::iterator pos, std::vector< std::string >::value_type const & x) -> std::vector< std::string >::iterator
611  insert(VectorString self, std::vector< std::string >::iterator pos, std::vector< std::string >::size_type n, std::vector< std::string >::value_type const & x)
612  """
613  return _IMP_bff.VectorString_insert(self, *args)
614 
615  def reserve(self, n):
616  r"""reserve(VectorString self, std::vector< std::string >::size_type n)"""
617  return _IMP_bff.VectorString_reserve(self, n)
618 
619  def capacity(self):
620  r"""capacity(VectorString self) -> std::vector< std::string >::size_type"""
621  return _IMP_bff.VectorString_capacity(self)
622  __swig_destroy__ = _IMP_bff.delete_VectorString
623 
624 # Register VectorString in _IMP_bff:
625 _IMP_bff.VectorString_swigregister(VectorString)
626 class VectorDouble(object):
627  r"""Proxy of C++ std::vector< double > class."""
628 
629  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
630  __repr__ = _swig_repr
631 
632  def iterator(self):
633  r"""iterator(VectorDouble self) -> IMP_BFF_SwigPyIterator"""
634  return _IMP_bff.VectorDouble_iterator(self)
635  def __iter__(self):
636  return self.iterator()
637 
638  def __bool__(self):
639  r"""__bool__(VectorDouble self) -> bool"""
640  return _IMP_bff.VectorDouble___bool__(self)
641 
642  def __len__(self):
643  r"""__len__(VectorDouble self) -> std::vector< double >::size_type"""
644  return _IMP_bff.VectorDouble___len__(self)
645 
646  def __delitem__(self, *args):
647  r"""
648  __delitem__(VectorDouble self, std::vector< double >::difference_type i)
649  __delitem__(VectorDouble self, SWIGPY_SLICEOBJECT * slice)
650  """
651  return _IMP_bff.VectorDouble___delitem__(self, *args)
652 
653  def __getitem__(self, *args):
654  r"""
655  __getitem__(VectorDouble self, SWIGPY_SLICEOBJECT * slice) -> VectorDouble
656  __getitem__(VectorDouble self, std::vector< double >::difference_type i) -> std::vector< double >::value_type const &
657  """
658  return _IMP_bff.VectorDouble___getitem__(self, *args)
659 
660  def __setitem__(self, *args):
661  r"""
662  __setitem__(VectorDouble self, SWIGPY_SLICEOBJECT * slice, VectorDouble v)
663  __setitem__(VectorDouble self, SWIGPY_SLICEOBJECT * slice)
664  __setitem__(VectorDouble self, std::vector< double >::difference_type i, std::vector< double >::value_type const & x)
665  """
666  return _IMP_bff.VectorDouble___setitem__(self, *args)
667 
668  def pop(self):
669  r"""pop(VectorDouble self) -> std::vector< double >::value_type"""
670  return _IMP_bff.VectorDouble_pop(self)
671 
672  def append(self, x):
673  r"""append(VectorDouble self, std::vector< double >::value_type const & x)"""
674  return _IMP_bff.VectorDouble_append(self, x)
675 
676  def empty(self):
677  r"""empty(VectorDouble self) -> bool"""
678  return _IMP_bff.VectorDouble_empty(self)
679 
680  def size(self):
681  r"""size(VectorDouble self) -> std::vector< double >::size_type"""
682  return _IMP_bff.VectorDouble_size(self)
683 
684  def swap(self, v):
685  r"""swap(VectorDouble self, VectorDouble v)"""
686  return _IMP_bff.VectorDouble_swap(self, v)
687 
688  def begin(self):
689  r"""begin(VectorDouble self) -> std::vector< double >::iterator"""
690  return _IMP_bff.VectorDouble_begin(self)
691 
692  def end(self):
693  r"""end(VectorDouble self) -> std::vector< double >::iterator"""
694  return _IMP_bff.VectorDouble_end(self)
695 
696  def rbegin(self):
697  r"""rbegin(VectorDouble self) -> std::vector< double >::reverse_iterator"""
698  return _IMP_bff.VectorDouble_rbegin(self)
699 
700  def rend(self):
701  r"""rend(VectorDouble self) -> std::vector< double >::reverse_iterator"""
702  return _IMP_bff.VectorDouble_rend(self)
703 
704  def clear(self):
705  r"""clear(VectorDouble self)"""
706  return _IMP_bff.VectorDouble_clear(self)
707 
708  def get_allocator(self):
709  r"""get_allocator(VectorDouble self) -> std::vector< double >::allocator_type"""
710  return _IMP_bff.VectorDouble_get_allocator(self)
711 
712  def pop_back(self):
713  r"""pop_back(VectorDouble self)"""
714  return _IMP_bff.VectorDouble_pop_back(self)
715 
716  def erase(self, *args):
717  r"""
718  erase(VectorDouble self, std::vector< double >::iterator pos) -> std::vector< double >::iterator
719  erase(VectorDouble self, std::vector< double >::iterator first, std::vector< double >::iterator last) -> std::vector< double >::iterator
720  """
721  return _IMP_bff.VectorDouble_erase(self, *args)
722 
723  def __init__(self, *args):
724  r"""
725  __init__(VectorDouble self) -> VectorDouble
726  __init__(VectorDouble self, VectorDouble other) -> VectorDouble
727  __init__(VectorDouble self, std::vector< double >::size_type size) -> VectorDouble
728  __init__(VectorDouble self, std::vector< double >::size_type size, std::vector< double >::value_type const & value) -> VectorDouble
729  """
730  _IMP_bff.VectorDouble_swiginit(self, _IMP_bff.new_VectorDouble(*args))
731 
732  def push_back(self, x):
733  r"""push_back(VectorDouble self, std::vector< double >::value_type const & x)"""
734  return _IMP_bff.VectorDouble_push_back(self, x)
735 
736  def front(self):
737  r"""front(VectorDouble self) -> std::vector< double >::value_type const &"""
738  return _IMP_bff.VectorDouble_front(self)
739 
740  def back(self):
741  r"""back(VectorDouble self) -> std::vector< double >::value_type const &"""
742  return _IMP_bff.VectorDouble_back(self)
743 
744  def assign(self, n, x):
745  r"""assign(VectorDouble self, std::vector< double >::size_type n, std::vector< double >::value_type const & x)"""
746  return _IMP_bff.VectorDouble_assign(self, n, x)
747 
748  def resize(self, *args):
749  r"""
750  resize(VectorDouble self, std::vector< double >::size_type new_size)
751  resize(VectorDouble self, std::vector< double >::size_type new_size, std::vector< double >::value_type const & x)
752  """
753  return _IMP_bff.VectorDouble_resize(self, *args)
754 
755  def insert(self, *args):
756  r"""
757  insert(VectorDouble self, std::vector< double >::iterator pos, std::vector< double >::value_type const & x) -> std::vector< double >::iterator
758  insert(VectorDouble self, std::vector< double >::iterator pos, std::vector< double >::size_type n, std::vector< double >::value_type const & x)
759  """
760  return _IMP_bff.VectorDouble_insert(self, *args)
761 
762  def reserve(self, n):
763  r"""reserve(VectorDouble self, std::vector< double >::size_type n)"""
764  return _IMP_bff.VectorDouble_reserve(self, n)
765 
766  def capacity(self):
767  r"""capacity(VectorDouble self) -> std::vector< double >::size_type"""
768  return _IMP_bff.VectorDouble_capacity(self)
769  __swig_destroy__ = _IMP_bff.delete_VectorDouble
770 
771 # Register VectorDouble in _IMP_bff:
772 _IMP_bff.VectorDouble_swigregister(VectorDouble)
773 class VectorFloat(object):
774  r"""Proxy of C++ std::vector< float > class."""
775 
776  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
777  __repr__ = _swig_repr
778 
779  def iterator(self):
780  r"""iterator(VectorFloat self) -> IMP_BFF_SwigPyIterator"""
781  return _IMP_bff.VectorFloat_iterator(self)
782  def __iter__(self):
783  return self.iterator()
784 
785  def __bool__(self):
786  r"""__bool__(VectorFloat self) -> bool"""
787  return _IMP_bff.VectorFloat___bool__(self)
788 
789  def __len__(self):
790  r"""__len__(VectorFloat self) -> std::vector< float >::size_type"""
791  return _IMP_bff.VectorFloat___len__(self)
792 
793  def __delitem__(self, *args):
794  r"""
795  __delitem__(VectorFloat self, std::vector< float >::difference_type i)
796  __delitem__(VectorFloat self, SWIGPY_SLICEOBJECT * slice)
797  """
798  return _IMP_bff.VectorFloat___delitem__(self, *args)
799 
800  def __getitem__(self, *args):
801  r"""
802  __getitem__(VectorFloat self, SWIGPY_SLICEOBJECT * slice) -> VectorFloat
803  __getitem__(VectorFloat self, std::vector< float >::difference_type i) -> std::vector< float >::value_type const &
804  """
805  return _IMP_bff.VectorFloat___getitem__(self, *args)
806 
807  def __setitem__(self, *args):
808  r"""
809  __setitem__(VectorFloat self, SWIGPY_SLICEOBJECT * slice, VectorFloat v)
810  __setitem__(VectorFloat self, SWIGPY_SLICEOBJECT * slice)
811  __setitem__(VectorFloat self, std::vector< float >::difference_type i, std::vector< float >::value_type const & x)
812  """
813  return _IMP_bff.VectorFloat___setitem__(self, *args)
814 
815  def pop(self):
816  r"""pop(VectorFloat self) -> std::vector< float >::value_type"""
817  return _IMP_bff.VectorFloat_pop(self)
818 
819  def append(self, x):
820  r"""append(VectorFloat self, std::vector< float >::value_type const & x)"""
821  return _IMP_bff.VectorFloat_append(self, x)
822 
823  def empty(self):
824  r"""empty(VectorFloat self) -> bool"""
825  return _IMP_bff.VectorFloat_empty(self)
826 
827  def size(self):
828  r"""size(VectorFloat self) -> std::vector< float >::size_type"""
829  return _IMP_bff.VectorFloat_size(self)
830 
831  def swap(self, v):
832  r"""swap(VectorFloat self, VectorFloat v)"""
833  return _IMP_bff.VectorFloat_swap(self, v)
834 
835  def begin(self):
836  r"""begin(VectorFloat self) -> std::vector< float >::iterator"""
837  return _IMP_bff.VectorFloat_begin(self)
838 
839  def end(self):
840  r"""end(VectorFloat self) -> std::vector< float >::iterator"""
841  return _IMP_bff.VectorFloat_end(self)
842 
843  def rbegin(self):
844  r"""rbegin(VectorFloat self) -> std::vector< float >::reverse_iterator"""
845  return _IMP_bff.VectorFloat_rbegin(self)
846 
847  def rend(self):
848  r"""rend(VectorFloat self) -> std::vector< float >::reverse_iterator"""
849  return _IMP_bff.VectorFloat_rend(self)
850 
851  def clear(self):
852  r"""clear(VectorFloat self)"""
853  return _IMP_bff.VectorFloat_clear(self)
854 
855  def get_allocator(self):
856  r"""get_allocator(VectorFloat self) -> std::vector< float >::allocator_type"""
857  return _IMP_bff.VectorFloat_get_allocator(self)
858 
859  def pop_back(self):
860  r"""pop_back(VectorFloat self)"""
861  return _IMP_bff.VectorFloat_pop_back(self)
862 
863  def erase(self, *args):
864  r"""
865  erase(VectorFloat self, std::vector< float >::iterator pos) -> std::vector< float >::iterator
866  erase(VectorFloat self, std::vector< float >::iterator first, std::vector< float >::iterator last) -> std::vector< float >::iterator
867  """
868  return _IMP_bff.VectorFloat_erase(self, *args)
869 
870  def __init__(self, *args):
871  r"""
872  __init__(VectorFloat self) -> VectorFloat
873  __init__(VectorFloat self, VectorFloat other) -> VectorFloat
874  __init__(VectorFloat self, std::vector< float >::size_type size) -> VectorFloat
875  __init__(VectorFloat self, std::vector< float >::size_type size, std::vector< float >::value_type const & value) -> VectorFloat
876  """
877  _IMP_bff.VectorFloat_swiginit(self, _IMP_bff.new_VectorFloat(*args))
878 
879  def push_back(self, x):
880  r"""push_back(VectorFloat self, std::vector< float >::value_type const & x)"""
881  return _IMP_bff.VectorFloat_push_back(self, x)
882 
883  def front(self):
884  r"""front(VectorFloat self) -> std::vector< float >::value_type const &"""
885  return _IMP_bff.VectorFloat_front(self)
886 
887  def back(self):
888  r"""back(VectorFloat self) -> std::vector< float >::value_type const &"""
889  return _IMP_bff.VectorFloat_back(self)
890 
891  def assign(self, n, x):
892  r"""assign(VectorFloat self, std::vector< float >::size_type n, std::vector< float >::value_type const & x)"""
893  return _IMP_bff.VectorFloat_assign(self, n, x)
894 
895  def resize(self, *args):
896  r"""
897  resize(VectorFloat self, std::vector< float >::size_type new_size)
898  resize(VectorFloat self, std::vector< float >::size_type new_size, std::vector< float >::value_type const & x)
899  """
900  return _IMP_bff.VectorFloat_resize(self, *args)
901 
902  def insert(self, *args):
903  r"""
904  insert(VectorFloat self, std::vector< float >::iterator pos, std::vector< float >::value_type const & x) -> std::vector< float >::iterator
905  insert(VectorFloat self, std::vector< float >::iterator pos, std::vector< float >::size_type n, std::vector< float >::value_type const & x)
906  """
907  return _IMP_bff.VectorFloat_insert(self, *args)
908 
909  def reserve(self, n):
910  r"""reserve(VectorFloat self, std::vector< float >::size_type n)"""
911  return _IMP_bff.VectorFloat_reserve(self, n)
912 
913  def capacity(self):
914  r"""capacity(VectorFloat self) -> std::vector< float >::size_type"""
915  return _IMP_bff.VectorFloat_capacity(self)
916  __swig_destroy__ = _IMP_bff.delete_VectorFloat
917 
918 # Register VectorFloat in _IMP_bff:
919 _IMP_bff.VectorFloat_swigregister(VectorFloat)
920 class VectorInt(object):
921  r"""Proxy of C++ std::vector< int > class."""
922 
923  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
924  __repr__ = _swig_repr
925 
926  def iterator(self):
927  r"""iterator(VectorInt self) -> IMP_BFF_SwigPyIterator"""
928  return _IMP_bff.VectorInt_iterator(self)
929  def __iter__(self):
930  return self.iterator()
931 
932  def __bool__(self):
933  r"""__bool__(VectorInt self) -> bool"""
934  return _IMP_bff.VectorInt___bool__(self)
935 
936  def __len__(self):
937  r"""__len__(VectorInt self) -> std::vector< int >::size_type"""
938  return _IMP_bff.VectorInt___len__(self)
939 
940  def __delitem__(self, *args):
941  r"""
942  __delitem__(VectorInt self, std::vector< int >::difference_type i)
943  __delitem__(VectorInt self, SWIGPY_SLICEOBJECT * slice)
944  """
945  return _IMP_bff.VectorInt___delitem__(self, *args)
946 
947  def __getitem__(self, *args):
948  r"""
949  __getitem__(VectorInt self, SWIGPY_SLICEOBJECT * slice) -> VectorInt
950  __getitem__(VectorInt self, std::vector< int >::difference_type i) -> std::vector< int >::value_type const &
951  """
952  return _IMP_bff.VectorInt___getitem__(self, *args)
953 
954  def __setitem__(self, *args):
955  r"""
956  __setitem__(VectorInt self, SWIGPY_SLICEOBJECT * slice, VectorInt v)
957  __setitem__(VectorInt self, SWIGPY_SLICEOBJECT * slice)
958  __setitem__(VectorInt self, std::vector< int >::difference_type i, std::vector< int >::value_type const & x)
959  """
960  return _IMP_bff.VectorInt___setitem__(self, *args)
961 
962  def pop(self):
963  r"""pop(VectorInt self) -> std::vector< int >::value_type"""
964  return _IMP_bff.VectorInt_pop(self)
965 
966  def append(self, x):
967  r"""append(VectorInt self, std::vector< int >::value_type const & x)"""
968  return _IMP_bff.VectorInt_append(self, x)
969 
970  def empty(self):
971  r"""empty(VectorInt self) -> bool"""
972  return _IMP_bff.VectorInt_empty(self)
973 
974  def size(self):
975  r"""size(VectorInt self) -> std::vector< int >::size_type"""
976  return _IMP_bff.VectorInt_size(self)
977 
978  def swap(self, v):
979  r"""swap(VectorInt self, VectorInt v)"""
980  return _IMP_bff.VectorInt_swap(self, v)
981 
982  def begin(self):
983  r"""begin(VectorInt self) -> std::vector< int >::iterator"""
984  return _IMP_bff.VectorInt_begin(self)
985 
986  def end(self):
987  r"""end(VectorInt self) -> std::vector< int >::iterator"""
988  return _IMP_bff.VectorInt_end(self)
989 
990  def rbegin(self):
991  r"""rbegin(VectorInt self) -> std::vector< int >::reverse_iterator"""
992  return _IMP_bff.VectorInt_rbegin(self)
993 
994  def rend(self):
995  r"""rend(VectorInt self) -> std::vector< int >::reverse_iterator"""
996  return _IMP_bff.VectorInt_rend(self)
997 
998  def clear(self):
999  r"""clear(VectorInt self)"""
1000  return _IMP_bff.VectorInt_clear(self)
1001 
1002  def get_allocator(self):
1003  r"""get_allocator(VectorInt self) -> std::vector< int >::allocator_type"""
1004  return _IMP_bff.VectorInt_get_allocator(self)
1005 
1006  def pop_back(self):
1007  r"""pop_back(VectorInt self)"""
1008  return _IMP_bff.VectorInt_pop_back(self)
1009 
1010  def erase(self, *args):
1011  r"""
1012  erase(VectorInt self, std::vector< int >::iterator pos) -> std::vector< int >::iterator
1013  erase(VectorInt self, std::vector< int >::iterator first, std::vector< int >::iterator last) -> std::vector< int >::iterator
1014  """
1015  return _IMP_bff.VectorInt_erase(self, *args)
1016 
1017  def __init__(self, *args):
1018  r"""
1019  __init__(VectorInt self) -> VectorInt
1020  __init__(VectorInt self, VectorInt other) -> VectorInt
1021  __init__(VectorInt self, std::vector< int >::size_type size) -> VectorInt
1022  __init__(VectorInt self, std::vector< int >::size_type size, std::vector< int >::value_type const & value) -> VectorInt
1023  """
1024  _IMP_bff.VectorInt_swiginit(self, _IMP_bff.new_VectorInt(*args))
1025 
1026  def push_back(self, x):
1027  r"""push_back(VectorInt self, std::vector< int >::value_type const & x)"""
1028  return _IMP_bff.VectorInt_push_back(self, x)
1029 
1030  def front(self):
1031  r"""front(VectorInt self) -> std::vector< int >::value_type const &"""
1032  return _IMP_bff.VectorInt_front(self)
1033 
1034  def back(self):
1035  r"""back(VectorInt self) -> std::vector< int >::value_type const &"""
1036  return _IMP_bff.VectorInt_back(self)
1037 
1038  def assign(self, n, x):
1039  r"""assign(VectorInt self, std::vector< int >::size_type n, std::vector< int >::value_type const & x)"""
1040  return _IMP_bff.VectorInt_assign(self, n, x)
1041 
1042  def resize(self, *args):
1043  r"""
1044  resize(VectorInt self, std::vector< int >::size_type new_size)
1045  resize(VectorInt self, std::vector< int >::size_type new_size, std::vector< int >::value_type const & x)
1046  """
1047  return _IMP_bff.VectorInt_resize(self, *args)
1048 
1049  def insert(self, *args):
1050  r"""
1051  insert(VectorInt self, std::vector< int >::iterator pos, std::vector< int >::value_type const & x) -> std::vector< int >::iterator
1052  insert(VectorInt self, std::vector< int >::iterator pos, std::vector< int >::size_type n, std::vector< int >::value_type const & x)
1053  """
1054  return _IMP_bff.VectorInt_insert(self, *args)
1055 
1056  def reserve(self, n):
1057  r"""reserve(VectorInt self, std::vector< int >::size_type n)"""
1058  return _IMP_bff.VectorInt_reserve(self, n)
1059 
1060  def capacity(self):
1061  r"""capacity(VectorInt self) -> std::vector< int >::size_type"""
1062  return _IMP_bff.VectorInt_capacity(self)
1063  __swig_destroy__ = _IMP_bff.delete_VectorInt
1064 
1065 # Register VectorInt in _IMP_bff:
1066 _IMP_bff.VectorInt_swigregister(VectorInt)
1067 class VectorLong(object):
1068  r"""Proxy of C++ std::vector< long > class."""
1069 
1070  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1071  __repr__ = _swig_repr
1072 
1073  def iterator(self):
1074  r"""iterator(VectorLong self) -> IMP_BFF_SwigPyIterator"""
1075  return _IMP_bff.VectorLong_iterator(self)
1076  def __iter__(self):
1077  return self.iterator()
1078 
1079  def __bool__(self):
1080  r"""__bool__(VectorLong self) -> bool"""
1081  return _IMP_bff.VectorLong___bool__(self)
1082 
1083  def __len__(self):
1084  r"""__len__(VectorLong self) -> std::vector< long >::size_type"""
1085  return _IMP_bff.VectorLong___len__(self)
1086 
1087  def __delitem__(self, *args):
1088  r"""
1089  __delitem__(VectorLong self, std::vector< long >::difference_type i)
1090  __delitem__(VectorLong self, SWIGPY_SLICEOBJECT * slice)
1091  """
1092  return _IMP_bff.VectorLong___delitem__(self, *args)
1093 
1094  def __getitem__(self, *args):
1095  r"""
1096  __getitem__(VectorLong self, SWIGPY_SLICEOBJECT * slice) -> VectorLong
1097  __getitem__(VectorLong self, std::vector< long >::difference_type i) -> std::vector< long >::value_type const &
1098  """
1099  return _IMP_bff.VectorLong___getitem__(self, *args)
1100 
1101  def __setitem__(self, *args):
1102  r"""
1103  __setitem__(VectorLong self, SWIGPY_SLICEOBJECT * slice, VectorLong v)
1104  __setitem__(VectorLong self, SWIGPY_SLICEOBJECT * slice)
1105  __setitem__(VectorLong self, std::vector< long >::difference_type i, std::vector< long >::value_type const & x)
1106  """
1107  return _IMP_bff.VectorLong___setitem__(self, *args)
1108 
1109  def pop(self):
1110  r"""pop(VectorLong self) -> std::vector< long >::value_type"""
1111  return _IMP_bff.VectorLong_pop(self)
1112 
1113  def append(self, x):
1114  r"""append(VectorLong self, std::vector< long >::value_type const & x)"""
1115  return _IMP_bff.VectorLong_append(self, x)
1116 
1117  def empty(self):
1118  r"""empty(VectorLong self) -> bool"""
1119  return _IMP_bff.VectorLong_empty(self)
1120 
1121  def size(self):
1122  r"""size(VectorLong self) -> std::vector< long >::size_type"""
1123  return _IMP_bff.VectorLong_size(self)
1124 
1125  def swap(self, v):
1126  r"""swap(VectorLong self, VectorLong v)"""
1127  return _IMP_bff.VectorLong_swap(self, v)
1128 
1129  def begin(self):
1130  r"""begin(VectorLong self) -> std::vector< long >::iterator"""
1131  return _IMP_bff.VectorLong_begin(self)
1132 
1133  def end(self):
1134  r"""end(VectorLong self) -> std::vector< long >::iterator"""
1135  return _IMP_bff.VectorLong_end(self)
1136 
1137  def rbegin(self):
1138  r"""rbegin(VectorLong self) -> std::vector< long >::reverse_iterator"""
1139  return _IMP_bff.VectorLong_rbegin(self)
1140 
1141  def rend(self):
1142  r"""rend(VectorLong self) -> std::vector< long >::reverse_iterator"""
1143  return _IMP_bff.VectorLong_rend(self)
1144 
1145  def clear(self):
1146  r"""clear(VectorLong self)"""
1147  return _IMP_bff.VectorLong_clear(self)
1148 
1149  def get_allocator(self):
1150  r"""get_allocator(VectorLong self) -> std::vector< long >::allocator_type"""
1151  return _IMP_bff.VectorLong_get_allocator(self)
1152 
1153  def pop_back(self):
1154  r"""pop_back(VectorLong self)"""
1155  return _IMP_bff.VectorLong_pop_back(self)
1156 
1157  def erase(self, *args):
1158  r"""
1159  erase(VectorLong self, std::vector< long >::iterator pos) -> std::vector< long >::iterator
1160  erase(VectorLong self, std::vector< long >::iterator first, std::vector< long >::iterator last) -> std::vector< long >::iterator
1161  """
1162  return _IMP_bff.VectorLong_erase(self, *args)
1163 
1164  def __init__(self, *args):
1165  r"""
1166  __init__(VectorLong self) -> VectorLong
1167  __init__(VectorLong self, VectorLong other) -> VectorLong
1168  __init__(VectorLong self, std::vector< long >::size_type size) -> VectorLong
1169  __init__(VectorLong self, std::vector< long >::size_type size, std::vector< long >::value_type const & value) -> VectorLong
1170  """
1171  _IMP_bff.VectorLong_swiginit(self, _IMP_bff.new_VectorLong(*args))
1172 
1173  def push_back(self, x):
1174  r"""push_back(VectorLong self, std::vector< long >::value_type const & x)"""
1175  return _IMP_bff.VectorLong_push_back(self, x)
1176 
1177  def front(self):
1178  r"""front(VectorLong self) -> std::vector< long >::value_type const &"""
1179  return _IMP_bff.VectorLong_front(self)
1180 
1181  def back(self):
1182  r"""back(VectorLong self) -> std::vector< long >::value_type const &"""
1183  return _IMP_bff.VectorLong_back(self)
1184 
1185  def assign(self, n, x):
1186  r"""assign(VectorLong self, std::vector< long >::size_type n, std::vector< long >::value_type const & x)"""
1187  return _IMP_bff.VectorLong_assign(self, n, x)
1188 
1189  def resize(self, *args):
1190  r"""
1191  resize(VectorLong self, std::vector< long >::size_type new_size)
1192  resize(VectorLong self, std::vector< long >::size_type new_size, std::vector< long >::value_type const & x)
1193  """
1194  return _IMP_bff.VectorLong_resize(self, *args)
1195 
1196  def insert(self, *args):
1197  r"""
1198  insert(VectorLong self, std::vector< long >::iterator pos, std::vector< long >::value_type const & x) -> std::vector< long >::iterator
1199  insert(VectorLong self, std::vector< long >::iterator pos, std::vector< long >::size_type n, std::vector< long >::value_type const & x)
1200  """
1201  return _IMP_bff.VectorLong_insert(self, *args)
1202 
1203  def reserve(self, n):
1204  r"""reserve(VectorLong self, std::vector< long >::size_type n)"""
1205  return _IMP_bff.VectorLong_reserve(self, n)
1206 
1207  def capacity(self):
1208  r"""capacity(VectorLong self) -> std::vector< long >::size_type"""
1209  return _IMP_bff.VectorLong_capacity(self)
1210  __swig_destroy__ = _IMP_bff.delete_VectorLong
1211 
1212 # Register VectorLong in _IMP_bff:
1213 _IMP_bff.VectorLong_swigregister(VectorLong)
1214 
1215 PathMapTileEdges=list
1216 _plural_types.append("PathMapTileEdges")
1217 _value_types.append("PathMapTileEdge")
1218 
1219 
1220 _object_types.append("PathMap")
1221 
1222 
1223 def _object_cast_to_PathMap(o):
1224  r"""_object_cast_to_PathMap(Object o) -> PathMap"""
1225  return _IMP_bff._object_cast_to_PathMap(o)
1226 class PathMapHeader(object):
1227  r"""Proxy of C++ IMP::bff::PathMapHeader class."""
1228 
1229  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1230  __repr__ = _swig_repr
1231  __swig_destroy__ = _IMP_bff.delete_PathMapHeader
1232 
1233  def __init__(self, *args, **kwargs):
1234  r"""__init__(PathMapHeader self, double max_path_length=10.0, double grid_spacing=1.0, double neighbor_radius=2, double obstacle_threshold=std::numeric_limits< double >::epsilon()) -> PathMapHeader"""
1235  _IMP_bff.PathMapHeader_swiginit(self, _IMP_bff.new_PathMapHeader(*args, **kwargs))
1236 
1237  def update_map_dimensions(self, nx=-1, ny=-1, nz=-1):
1238  r"""update_map_dimensions(PathMapHeader self, int nx=-1, int ny=-1, int nz=-1)"""
1239  return _IMP_bff.PathMapHeader_update_map_dimensions(self, nx, ny, nz)
1240 
1241  def set_path_origin(self, v):
1242  r"""set_path_origin(PathMapHeader self, Vector3D v)"""
1243  return _IMP_bff.PathMapHeader_set_path_origin(self, v)
1244 
1245  def get_path_origin(self):
1246  r"""get_path_origin(PathMapHeader self) -> Vector3D"""
1247  return _IMP_bff.PathMapHeader_get_path_origin(self)
1248 
1249  def get_max_path_length(self):
1250  r"""get_max_path_length(PathMapHeader self) -> double"""
1251  return _IMP_bff.PathMapHeader_get_max_path_length(self)
1252 
1253  def get_simulation_grid_resolution(self):
1254  r"""get_simulation_grid_resolution(PathMapHeader self) -> double"""
1255  return _IMP_bff.PathMapHeader_get_simulation_grid_resolution(self)
1256 
1257  def set_obstacle_threshold(self, obstacle_threshold):
1258  r"""set_obstacle_threshold(PathMapHeader self, double obstacle_threshold)"""
1259  return _IMP_bff.PathMapHeader_set_obstacle_threshold(self, obstacle_threshold)
1260 
1261  def get_obstacle_threshold(self):
1262  r"""get_obstacle_threshold(PathMapHeader self) -> double"""
1263  return _IMP_bff.PathMapHeader_get_obstacle_threshold(self)
1264 
1265  def set_neighbor_radius(self, neighbor_radius):
1266  r"""set_neighbor_radius(PathMapHeader self, double neighbor_radius)"""
1267  return _IMP_bff.PathMapHeader_set_neighbor_radius(self, neighbor_radius)
1268 
1269  def get_neighbor_radius(self):
1270  r"""get_neighbor_radius(PathMapHeader self) -> double"""
1271  return _IMP_bff.PathMapHeader_get_neighbor_radius(self)
1272 
1273  def get_neighbor_box_size(self):
1274  r"""get_neighbor_box_size(PathMapHeader self) -> int"""
1275  return _IMP_bff.PathMapHeader_get_neighbor_box_size(self)
1276 
1277  def get_density_header(self):
1278  r"""get_density_header(PathMapHeader self) -> DensityHeader"""
1279  return _IMP_bff.PathMapHeader_get_density_header(self)
1280 
1281  def get_density_header_writable(self):
1282  r"""get_density_header_writable(PathMapHeader self) -> DensityHeader"""
1283  return _IMP_bff.PathMapHeader_get_density_header_writable(self)
1284 
1285  def get_origin(self):
1286  r"""get_origin(PathMapHeader self) -> Vector3D"""
1287  return _IMP_bff.PathMapHeader_get_origin(self)
1288 
1289  def get_grid_edge_length(self):
1290  r"""get_grid_edge_length(PathMapHeader self) -> double"""
1291  return _IMP_bff.PathMapHeader_get_grid_edge_length(self)
1292 
1293  def set_origin(self, x, y, z):
1294  r"""set_origin(PathMapHeader self, float x, float y, float z)"""
1295  return _IMP_bff.PathMapHeader_set_origin(self, x, y, z)
1296 
1297  def show(self, *args, **kwargs):
1298  r"""show(PathMapHeader self, _ostream out=std::cout)"""
1299  return _IMP_bff.PathMapHeader_show(self, *args, **kwargs)
1300 
1301 # Register PathMapHeader in _IMP_bff:
1302 _IMP_bff.PathMapHeader_swigregister(PathMapHeader)
1303 class PathMap(IMP.em.SampledDensityMap):
1304  r"""Proxy of C++ IMP::bff::PathMap class."""
1305 
1306  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1307 
1308  def update_tiles(self, *args, **kwargs):
1309  r"""update_tiles(PathMap self, float obstacle_threshold=-1.0, bool binarize=True, float obstacle_penalty=TILE_PENALTY_DEFAULT, bool reset_tile_edges=True)"""
1310  return _IMP_bff.PathMap_update_tiles(self, *args, **kwargs)
1311 
1312  def resize(self, nvox):
1313  r"""resize(PathMap self, unsigned int nvox)"""
1314  return _IMP_bff.PathMap_resize(self, nvox)
1315 
1316  def set_data(self, *args, **kwargs):
1317  r"""set_data(PathMap self, double * input, float obstacle_threshold=-1, bool binarize=True, float obstacle_penalty=TILE_PENALTY_DEFAULT)"""
1318  return _IMP_bff.PathMap_set_data(self, *args, **kwargs)
1319 
1320  def get_neighbor_idx_offsets(self, neighbor_radius=-1):
1321  r"""get_neighbor_idx_offsets(PathMap self, double neighbor_radius=-1) -> VectorInt"""
1322  return _IMP_bff.PathMap_get_neighbor_idx_offsets(self, neighbor_radius)
1323 
1324  def get_dim_index_by_voxel(self, index, dim):
1325  r"""get_dim_index_by_voxel(PathMap self, long index, int dim) -> int"""
1326  return _IMP_bff.PathMap_get_dim_index_by_voxel(self, index, dim)
1327 
1328  def get_path_map_header(self):
1329  h = _IMP_bff.DensityMap_get_path_map_header(self)
1330  h._owner = self
1331  return h
1332 
1333 
1334 
1335  def get_path_map_header_writable(self):
1336  h = _IMP_bff.PathMap_get_path_map_header_writable(self)
1337  h._owner = self
1338  return h
1339 
1340 
1341 
1342  def set_path_map_header(self, path_map_header, resolution=-1.0):
1343  r"""set_path_map_header(PathMap self, PathMapHeader path_map_header, float resolution=-1.0)"""
1344  return _IMP_bff.PathMap_set_path_map_header(self, path_map_header, resolution)
1345 
1346  def get_tile_values(self, *args, **kwargs):
1347  r"""get_tile_values(PathMap self, int value_type=PM_TILE_COST, PairFloatFloat bounds=std::pair< float,float >( {std::numeric_limits<float>::min(), std::numeric_limits<float>::max()}), std::string const & feature_name="")"""
1348  return _IMP_bff.PathMap_get_tile_values(self, *args, **kwargs)
1349 
1350  def get_tiles(self):
1351  r"""get_tiles(PathMap self) -> VectorPathMapTile"""
1352  return _IMP_bff.PathMap_get_tiles(self)
1353 
1354  def fill_sphere(self, r0, radius, value, inverse=True):
1355  r"""fill_sphere(PathMap self, Vector3D r0, double radius, double value, bool inverse=True)"""
1356  return _IMP_bff.PathMap_fill_sphere(self, r0, radius, value, inverse)
1357 
1358  def find_path(self, path_begin_idx, path_end_idx=-1, heuristic_mode=0):
1359  r"""find_path(PathMap self, long path_begin_idx, long path_end_idx=-1, int heuristic_mode=0)"""
1360  return _IMP_bff.PathMap_find_path(self, path_begin_idx, path_end_idx, heuristic_mode)
1361 
1362  def find_path_dijkstra(self, path_begin_idx, path_end_idx=-1):
1363  r"""find_path_dijkstra(PathMap self, long path_begin_idx, long path_end_idx=-1)"""
1364  return _IMP_bff.PathMap_find_path_dijkstra(self, path_begin_idx, path_end_idx)
1365 
1366  def find_path_astar(self, path_begin_idx, path_end_idx=-1):
1367  r"""find_path_astar(PathMap self, long path_begin_idx, long path_end_idx=-1)"""
1368  return _IMP_bff.PathMap_find_path_astar(self, path_begin_idx, path_end_idx)
1369 
1370  def get_xyz_density(self):
1371  r"""get_xyz_density(PathMap self)"""
1372  return _IMP_bff.PathMap_get_xyz_density(self)
1373 
1374  def sample_obstacles(self, extra_radius=0.0):
1375  r"""sample_obstacles(PathMap self, double extra_radius=0.0)"""
1376  return _IMP_bff.PathMap_sample_obstacles(self, extra_radius)
1377 
1378  def __init__(self, *args, **kwargs):
1379  r"""__init__(PathMap self, PathMapHeader header, std::string name="PathMap%1%", IMP::em::KernelType kt=BINARIZED_SPHERE, float resolution=-1.0) -> PathMap"""
1380  _IMP_bff.PathMap_swiginit(self, _IMP_bff.new_PathMap(*args, **kwargs))
1381 
1382  def __str__(self):
1383  r"""__str__(PathMap self) -> std::string"""
1384  return _IMP_bff.PathMap___str__(self)
1385 
1386  def __repr__(self):
1387  r"""__repr__(PathMap self) -> std::string"""
1388  return _IMP_bff.PathMap___repr__(self)
1389 
1390  @staticmethod
1391  def get_from(o):
1392  return _object_cast_to_PathMap(o)
1393 
1394  __swig_destroy__ = _IMP_bff.delete_PathMap
1395 
1396 # Register PathMap in _IMP_bff:
1397 _IMP_bff.PathMap_swigregister(PathMap)
1398 
1399 def write_path_map(*args, **kwargs):
1400  r"""write_path_map(PathMap m, std::string filename, int value_type, PairFloatFloat bounds=std::pair< float,float >( std::numeric_limits<float>::min(), std::numeric_limits<float>::max() ), std::string const & feature_name="")"""
1401  return _IMP_bff.write_path_map(*args, **kwargs)
1402 PM_TILE_PENALTY = _IMP_bff.PM_TILE_PENALTY
1403 
1404 PM_TILE_COST = _IMP_bff.PM_TILE_COST
1405 
1406 PM_TILE_DENSITY = _IMP_bff.PM_TILE_DENSITY
1407 
1408 PM_TILE_COST_DENSITY = _IMP_bff.PM_TILE_COST_DENSITY
1409 
1410 PM_TILE_PATH_LENGTH = _IMP_bff.PM_TILE_PATH_LENGTH
1411 
1412 PM_TILE_PATH_LENGTH_DENSITY = _IMP_bff.PM_TILE_PATH_LENGTH_DENSITY
1413 
1414 PM_TILE_FEATURE = _IMP_bff.PM_TILE_FEATURE
1415 
1416 PM_TILE_ACCESSIBLE_DENSITY = _IMP_bff.PM_TILE_ACCESSIBLE_DENSITY
1417 
1418 PM_TILE_ACCESSIBLE_FEATURE = _IMP_bff.PM_TILE_ACCESSIBLE_FEATURE
1419 
1420 class PathMapTile(object):
1421  r"""Proxy of C++ IMP::bff::PathMapTile class."""
1422 
1423  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1424  __repr__ = _swig_repr
1425  density = property(_IMP_bff.PathMapTile_density_get, _IMP_bff.PathMapTile_density_set, doc=r"""density : float""")
1426 
1427  def __init__(self, index=-1, visit_penalty=0.0, tile_density=1.0):
1428  r"""__init__(PathMapTile self, long index=-1, float visit_penalty=0.0, float tile_density=1.0) -> PathMapTile"""
1429  _IMP_bff.PathMapTile_swiginit(self, _IMP_bff.new_PathMapTile(index, visit_penalty, tile_density))
1430 
1431  def backtrack_to_path(self):
1432  r"""backtrack_to_path(PathMapTile self) -> VectorLong"""
1433  return _IMP_bff.PathMapTile_backtrack_to_path(self)
1434 
1435  def get_value(self, *args, **kwargs):
1436  r"""get_value(PathMapTile self, int value_type, PairFloatFloat bounds=std::pair< float,float >( {std::numeric_limits<float>::min(), std::numeric_limits<float>::max()}), std::string const & feature_name="", float grid_spacing=1.0) -> float"""
1437  return _IMP_bff.PathMapTile_get_value(self, *args, **kwargs)
1438 
1439  def set_value(self, *args, **kwargs):
1440  r"""set_value(PathMapTile self, int value_type, float value, std::string const & name="")"""
1441  return _IMP_bff.PathMapTile_set_value(self, *args, **kwargs)
1442  __swig_destroy__ = _IMP_bff.delete_PathMapTile
1443 
1444 # Register PathMapTile in _IMP_bff:
1445 _IMP_bff.PathMapTile_swigregister(PathMapTile)
1446 cvar = _IMP_bff.cvar
1447 TILE_VISITED_DEFAULT = cvar.TILE_VISITED_DEFAULT
1448 TILE_PENALTY_DEFAULT = cvar.TILE_PENALTY_DEFAULT
1449 TILE_COST_DEFAULT = cvar.TILE_COST_DEFAULT
1450 TILE_EDGE_COST_DEFAULT = cvar.TILE_EDGE_COST_DEFAULT
1451 TILE_PENALTY_THRESHOLD = cvar.TILE_PENALTY_THRESHOLD
1452 TILE_OBSTACLE_THRESHOLD = cvar.TILE_OBSTACLE_THRESHOLD
1453 TILE_OBSTACLE_PENALTY = cvar.TILE_OBSTACLE_PENALTY
1454 
1455 class PathMapTileEdge(IMP._Value):
1456  r"""Proxy of C++ IMP::bff::PathMapTileEdge class."""
1457 
1458  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1459 
1460  def get_length(self):
1461  r"""get_length(PathMapTileEdge self) -> float"""
1462  return _IMP_bff.PathMapTileEdge_get_length(self)
1463 
1464  def __init__(self, *args, **kwargs):
1465  r"""__init__(PathMapTileEdge self, int edge_target=-1, float edge_cost=std::numeric_limits< float >::max()) -> PathMapTileEdge"""
1466  _IMP_bff.PathMapTileEdge_swiginit(self, _IMP_bff.new_PathMapTileEdge(*args, **kwargs))
1467 
1468  def show(self, *args, **kwargs):
1469  r"""show(PathMapTileEdge self, _ostream out=std::cout)"""
1470  return _IMP_bff.PathMapTileEdge_show(self, *args, **kwargs)
1471 
1472  def __str__(self):
1473  r"""__str__(PathMapTileEdge self) -> std::string"""
1474  return _IMP_bff.PathMapTileEdge___str__(self)
1475 
1476  def __repr__(self):
1477  r"""__repr__(PathMapTileEdge self) -> std::string"""
1478  return _IMP_bff.PathMapTileEdge___repr__(self)
1479  __swig_destroy__ = _IMP_bff.delete_PathMapTileEdge
1480 
1481 # Register PathMapTileEdge in _IMP_bff:
1482 _IMP_bff.PathMapTileEdge_swigregister(PathMapTileEdge)
1483 class VectorPathMapTile(object):
1484  r"""Proxy of C++ std::vector< IMP::bff::PathMapTile > class."""
1485 
1486  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1487  __repr__ = _swig_repr
1488 
1489  def iterator(self):
1490  r"""iterator(VectorPathMapTile self) -> IMP_BFF_SwigPyIterator"""
1491  return _IMP_bff.VectorPathMapTile_iterator(self)
1492  def __iter__(self):
1493  return self.iterator()
1494 
1495  def __bool__(self):
1496  r"""__bool__(VectorPathMapTile self) -> bool"""
1497  return _IMP_bff.VectorPathMapTile___bool__(self)
1498 
1499  def __len__(self):
1500  r"""__len__(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::size_type"""
1501  return _IMP_bff.VectorPathMapTile___len__(self)
1502 
1503  def __delitem__(self, *args):
1504  r"""
1505  __delitem__(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::difference_type i)
1506  __delitem__(VectorPathMapTile self, SWIGPY_SLICEOBJECT * slice)
1507  """
1508  return _IMP_bff.VectorPathMapTile___delitem__(self, *args)
1509 
1510  def __getitem__(self, *args):
1511  r"""
1512  __getitem__(VectorPathMapTile self, SWIGPY_SLICEOBJECT * slice) -> VectorPathMapTile
1513  __getitem__(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::difference_type i) -> PathMapTile
1514  """
1515  return _IMP_bff.VectorPathMapTile___getitem__(self, *args)
1516 
1517  def __setitem__(self, *args):
1518  r"""
1519  __setitem__(VectorPathMapTile self, SWIGPY_SLICEOBJECT * slice, VectorPathMapTile v)
1520  __setitem__(VectorPathMapTile self, SWIGPY_SLICEOBJECT * slice)
1521  __setitem__(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::difference_type i, PathMapTile x)
1522  """
1523  return _IMP_bff.VectorPathMapTile___setitem__(self, *args)
1524 
1525  def pop(self):
1526  r"""pop(VectorPathMapTile self) -> PathMapTile"""
1527  return _IMP_bff.VectorPathMapTile_pop(self)
1528 
1529  def append(self, x):
1530  r"""append(VectorPathMapTile self, PathMapTile x)"""
1531  return _IMP_bff.VectorPathMapTile_append(self, x)
1532 
1533  def empty(self):
1534  r"""empty(VectorPathMapTile self) -> bool"""
1535  return _IMP_bff.VectorPathMapTile_empty(self)
1536 
1537  def size(self):
1538  r"""size(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::size_type"""
1539  return _IMP_bff.VectorPathMapTile_size(self)
1540 
1541  def swap(self, v):
1542  r"""swap(VectorPathMapTile self, VectorPathMapTile v)"""
1543  return _IMP_bff.VectorPathMapTile_swap(self, v)
1544 
1545  def begin(self):
1546  r"""begin(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::iterator"""
1547  return _IMP_bff.VectorPathMapTile_begin(self)
1548 
1549  def end(self):
1550  r"""end(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::iterator"""
1551  return _IMP_bff.VectorPathMapTile_end(self)
1552 
1553  def rbegin(self):
1554  r"""rbegin(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::reverse_iterator"""
1555  return _IMP_bff.VectorPathMapTile_rbegin(self)
1556 
1557  def rend(self):
1558  r"""rend(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::reverse_iterator"""
1559  return _IMP_bff.VectorPathMapTile_rend(self)
1560 
1561  def clear(self):
1562  r"""clear(VectorPathMapTile self)"""
1563  return _IMP_bff.VectorPathMapTile_clear(self)
1564 
1565  def get_allocator(self):
1566  r"""get_allocator(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::allocator_type"""
1567  return _IMP_bff.VectorPathMapTile_get_allocator(self)
1568 
1569  def pop_back(self):
1570  r"""pop_back(VectorPathMapTile self)"""
1571  return _IMP_bff.VectorPathMapTile_pop_back(self)
1572 
1573  def erase(self, *args):
1574  r"""
1575  erase(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::iterator pos) -> std::vector< IMP::bff::PathMapTile >::iterator
1576  erase(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::iterator first, std::vector< IMP::bff::PathMapTile >::iterator last) -> std::vector< IMP::bff::PathMapTile >::iterator
1577  """
1578  return _IMP_bff.VectorPathMapTile_erase(self, *args)
1579 
1580  def __init__(self, *args):
1581  r"""
1582  __init__(VectorPathMapTile self) -> VectorPathMapTile
1583  __init__(VectorPathMapTile self, VectorPathMapTile other) -> VectorPathMapTile
1584  __init__(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type size) -> VectorPathMapTile
1585  __init__(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type size, PathMapTile value) -> VectorPathMapTile
1586  """
1587  _IMP_bff.VectorPathMapTile_swiginit(self, _IMP_bff.new_VectorPathMapTile(*args))
1588 
1589  def push_back(self, x):
1590  r"""push_back(VectorPathMapTile self, PathMapTile x)"""
1591  return _IMP_bff.VectorPathMapTile_push_back(self, x)
1592 
1593  def front(self):
1594  r"""front(VectorPathMapTile self) -> PathMapTile"""
1595  return _IMP_bff.VectorPathMapTile_front(self)
1596 
1597  def back(self):
1598  r"""back(VectorPathMapTile self) -> PathMapTile"""
1599  return _IMP_bff.VectorPathMapTile_back(self)
1600 
1601  def assign(self, n, x):
1602  r"""assign(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type n, PathMapTile x)"""
1603  return _IMP_bff.VectorPathMapTile_assign(self, n, x)
1604 
1605  def resize(self, *args):
1606  r"""
1607  resize(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type new_size)
1608  resize(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type new_size, PathMapTile x)
1609  """
1610  return _IMP_bff.VectorPathMapTile_resize(self, *args)
1611 
1612  def insert(self, *args):
1613  r"""
1614  insert(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::iterator pos, PathMapTile x) -> std::vector< IMP::bff::PathMapTile >::iterator
1615  insert(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::iterator pos, std::vector< IMP::bff::PathMapTile >::size_type n, PathMapTile x)
1616  """
1617  return _IMP_bff.VectorPathMapTile_insert(self, *args)
1618 
1619  def reserve(self, n):
1620  r"""reserve(VectorPathMapTile self, std::vector< IMP::bff::PathMapTile >::size_type n)"""
1621  return _IMP_bff.VectorPathMapTile_reserve(self, n)
1622 
1623  def capacity(self):
1624  r"""capacity(VectorPathMapTile self) -> std::vector< IMP::bff::PathMapTile >::size_type"""
1625  return _IMP_bff.VectorPathMapTile_capacity(self)
1626  __swig_destroy__ = _IMP_bff.delete_VectorPathMapTile
1627 
1628 # Register VectorPathMapTile in _IMP_bff:
1629 _IMP_bff.VectorPathMapTile_swigregister(VectorPathMapTile)
1630 class VectorPathMapTileEdge(object):
1631  r"""Proxy of C++ std::vector< IMP::bff::PathMapTileEdge > class."""
1632 
1633  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1634  __repr__ = _swig_repr
1635 
1636  def iterator(self):
1637  r"""iterator(VectorPathMapTileEdge self) -> IMP_BFF_SwigPyIterator"""
1638  return _IMP_bff.VectorPathMapTileEdge_iterator(self)
1639  def __iter__(self):
1640  return self.iterator()
1641 
1642  def __bool__(self):
1643  r"""__bool__(VectorPathMapTileEdge self) -> bool"""
1644  return _IMP_bff.VectorPathMapTileEdge___bool__(self)
1645 
1646  def __len__(self):
1647  r"""__len__(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::size_type"""
1648  return _IMP_bff.VectorPathMapTileEdge___len__(self)
1649 
1650  def __delitem__(self, *args):
1651  r"""
1652  __delitem__(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::difference_type i)
1653  __delitem__(VectorPathMapTileEdge self, SWIGPY_SLICEOBJECT * slice)
1654  """
1655  return _IMP_bff.VectorPathMapTileEdge___delitem__(self, *args)
1656 
1657  def __getitem__(self, *args):
1658  r"""
1659  __getitem__(VectorPathMapTileEdge self, SWIGPY_SLICEOBJECT * slice) -> VectorPathMapTileEdge
1660  __getitem__(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::difference_type i) -> PathMapTileEdge
1661  """
1662  return _IMP_bff.VectorPathMapTileEdge___getitem__(self, *args)
1663 
1664  def __setitem__(self, *args):
1665  r"""
1666  __setitem__(VectorPathMapTileEdge self, SWIGPY_SLICEOBJECT * slice, VectorPathMapTileEdge v)
1667  __setitem__(VectorPathMapTileEdge self, SWIGPY_SLICEOBJECT * slice)
1668  __setitem__(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::difference_type i, PathMapTileEdge x)
1669  """
1670  return _IMP_bff.VectorPathMapTileEdge___setitem__(self, *args)
1671 
1672  def pop(self):
1673  r"""pop(VectorPathMapTileEdge self) -> PathMapTileEdge"""
1674  return _IMP_bff.VectorPathMapTileEdge_pop(self)
1675 
1676  def append(self, x):
1677  r"""append(VectorPathMapTileEdge self, PathMapTileEdge x)"""
1678  return _IMP_bff.VectorPathMapTileEdge_append(self, x)
1679 
1680  def empty(self):
1681  r"""empty(VectorPathMapTileEdge self) -> bool"""
1682  return _IMP_bff.VectorPathMapTileEdge_empty(self)
1683 
1684  def size(self):
1685  r"""size(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::size_type"""
1686  return _IMP_bff.VectorPathMapTileEdge_size(self)
1687 
1688  def swap(self, v):
1689  r"""swap(VectorPathMapTileEdge self, VectorPathMapTileEdge v)"""
1690  return _IMP_bff.VectorPathMapTileEdge_swap(self, v)
1691 
1692  def begin(self):
1693  r"""begin(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::iterator"""
1694  return _IMP_bff.VectorPathMapTileEdge_begin(self)
1695 
1696  def end(self):
1697  r"""end(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::iterator"""
1698  return _IMP_bff.VectorPathMapTileEdge_end(self)
1699 
1700  def rbegin(self):
1701  r"""rbegin(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::reverse_iterator"""
1702  return _IMP_bff.VectorPathMapTileEdge_rbegin(self)
1703 
1704  def rend(self):
1705  r"""rend(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::reverse_iterator"""
1706  return _IMP_bff.VectorPathMapTileEdge_rend(self)
1707 
1708  def clear(self):
1709  r"""clear(VectorPathMapTileEdge self)"""
1710  return _IMP_bff.VectorPathMapTileEdge_clear(self)
1711 
1712  def get_allocator(self):
1713  r"""get_allocator(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::allocator_type"""
1714  return _IMP_bff.VectorPathMapTileEdge_get_allocator(self)
1715 
1716  def pop_back(self):
1717  r"""pop_back(VectorPathMapTileEdge self)"""
1718  return _IMP_bff.VectorPathMapTileEdge_pop_back(self)
1719 
1720  def erase(self, *args):
1721  r"""
1722  erase(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::iterator pos) -> std::vector< IMP::bff::PathMapTileEdge >::iterator
1723  erase(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::iterator first, std::vector< IMP::bff::PathMapTileEdge >::iterator last) -> std::vector< IMP::bff::PathMapTileEdge >::iterator
1724  """
1725  return _IMP_bff.VectorPathMapTileEdge_erase(self, *args)
1726 
1727  def __init__(self, *args):
1728  r"""
1729  __init__(VectorPathMapTileEdge self) -> VectorPathMapTileEdge
1730  __init__(VectorPathMapTileEdge self, VectorPathMapTileEdge other) -> VectorPathMapTileEdge
1731  __init__(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type size) -> VectorPathMapTileEdge
1732  __init__(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type size, PathMapTileEdge value) -> VectorPathMapTileEdge
1733  """
1734  _IMP_bff.VectorPathMapTileEdge_swiginit(self, _IMP_bff.new_VectorPathMapTileEdge(*args))
1735 
1736  def push_back(self, x):
1737  r"""push_back(VectorPathMapTileEdge self, PathMapTileEdge x)"""
1738  return _IMP_bff.VectorPathMapTileEdge_push_back(self, x)
1739 
1740  def front(self):
1741  r"""front(VectorPathMapTileEdge self) -> PathMapTileEdge"""
1742  return _IMP_bff.VectorPathMapTileEdge_front(self)
1743 
1744  def back(self):
1745  r"""back(VectorPathMapTileEdge self) -> PathMapTileEdge"""
1746  return _IMP_bff.VectorPathMapTileEdge_back(self)
1747 
1748  def assign(self, n, x):
1749  r"""assign(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type n, PathMapTileEdge x)"""
1750  return _IMP_bff.VectorPathMapTileEdge_assign(self, n, x)
1751 
1752  def resize(self, *args):
1753  r"""
1754  resize(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type new_size)
1755  resize(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type new_size, PathMapTileEdge x)
1756  """
1757  return _IMP_bff.VectorPathMapTileEdge_resize(self, *args)
1758 
1759  def insert(self, *args):
1760  r"""
1761  insert(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::iterator pos, PathMapTileEdge x) -> std::vector< IMP::bff::PathMapTileEdge >::iterator
1762  insert(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::iterator pos, std::vector< IMP::bff::PathMapTileEdge >::size_type n, PathMapTileEdge x)
1763  """
1764  return _IMP_bff.VectorPathMapTileEdge_insert(self, *args)
1765 
1766  def reserve(self, n):
1767  r"""reserve(VectorPathMapTileEdge self, std::vector< IMP::bff::PathMapTileEdge >::size_type n)"""
1768  return _IMP_bff.VectorPathMapTileEdge_reserve(self, n)
1769 
1770  def capacity(self):
1771  r"""capacity(VectorPathMapTileEdge self) -> std::vector< IMP::bff::PathMapTileEdge >::size_type"""
1772  return _IMP_bff.VectorPathMapTileEdge_capacity(self)
1773  __swig_destroy__ = _IMP_bff.delete_VectorPathMapTileEdge
1774 
1775 # Register VectorPathMapTileEdge in _IMP_bff:
1776 _IMP_bff.VectorPathMapTileEdge_swigregister(VectorPathMapTileEdge)
1777 
1778 def AVs(l=[]):
1779  return [AV(x) for x in l]
1780 _plural_types.append("AVs")
1781 
1782 
1783 _value_types.append("AV")
1784 
1785 
1786 AVPairDistanceMeasurements=list
1787 _plural_types.append("AVPairDistanceMeasurements")
1788 _value_types.append("AVPairDistanceMeasurement")
1789 
1790 
1791 _object_types.append("AVNetworkRestraint")
1792 
1793 
1794 def _object_cast_to_AVNetworkRestraint(o):
1795  r"""_object_cast_to_AVNetworkRestraint(Object o) -> AVNetworkRestraint"""
1796  return _IMP_bff._object_cast_to_AVNetworkRestraint(o)
1797 class MapStringAVPairDistanceMeasurement(object):
1798  r"""Proxy of C++ std::map< std::string,IMP::bff::AVPairDistanceMeasurement > class."""
1799 
1800  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1801  __repr__ = _swig_repr
1802 
1803  def iterator(self):
1804  r"""iterator(MapStringAVPairDistanceMeasurement self) -> IMP_BFF_SwigPyIterator"""
1805  return _IMP_bff.MapStringAVPairDistanceMeasurement_iterator(self)
1806  def __iter__(self):
1807  return self.iterator()
1808 
1809  def __bool__(self):
1810  r"""__bool__(MapStringAVPairDistanceMeasurement self) -> bool"""
1811  return _IMP_bff.MapStringAVPairDistanceMeasurement___bool__(self)
1812 
1813  def __len__(self):
1814  r"""__len__(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::size_type"""
1815  return _IMP_bff.MapStringAVPairDistanceMeasurement___len__(self)
1816  def __iter__(self):
1817  return self.key_iterator()
1818  def iterkeys(self):
1819  return self.key_iterator()
1820  def itervalues(self):
1821  return self.value_iterator()
1822  def iteritems(self):
1823  return self.iterator()
1824 
1825  def __getitem__(self, key):
1826  r"""__getitem__(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key) -> AVPairDistanceMeasurement"""
1827  return _IMP_bff.MapStringAVPairDistanceMeasurement___getitem__(self, key)
1828 
1829  def __delitem__(self, key):
1830  r"""__delitem__(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key)"""
1831  return _IMP_bff.MapStringAVPairDistanceMeasurement___delitem__(self, key)
1832 
1833  def has_key(self, key):
1834  r"""has_key(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key) -> bool"""
1835  return _IMP_bff.MapStringAVPairDistanceMeasurement_has_key(self, key)
1836 
1837  def keys(self):
1838  r"""keys(MapStringAVPairDistanceMeasurement self) -> PyObject *"""
1839  return _IMP_bff.MapStringAVPairDistanceMeasurement_keys(self)
1840 
1841  def values(self):
1842  r"""values(MapStringAVPairDistanceMeasurement self) -> PyObject *"""
1843  return _IMP_bff.MapStringAVPairDistanceMeasurement_values(self)
1844 
1845  def items(self):
1846  r"""items(MapStringAVPairDistanceMeasurement self) -> PyObject *"""
1847  return _IMP_bff.MapStringAVPairDistanceMeasurement_items(self)
1848 
1849  def __contains__(self, key):
1850  r"""__contains__(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key) -> bool"""
1851  return _IMP_bff.MapStringAVPairDistanceMeasurement___contains__(self, key)
1852 
1853  def key_iterator(self):
1854  r"""key_iterator(MapStringAVPairDistanceMeasurement self) -> IMP_BFF_SwigPyIterator"""
1855  return _IMP_bff.MapStringAVPairDistanceMeasurement_key_iterator(self)
1856 
1857  def value_iterator(self):
1858  r"""value_iterator(MapStringAVPairDistanceMeasurement self) -> IMP_BFF_SwigPyIterator"""
1859  return _IMP_bff.MapStringAVPairDistanceMeasurement_value_iterator(self)
1860 
1861  def __setitem__(self, *args):
1862  r"""
1863  __setitem__(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key)
1864  __setitem__(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & key, AVPairDistanceMeasurement x)
1865  """
1866  return _IMP_bff.MapStringAVPairDistanceMeasurement___setitem__(self, *args)
1867 
1868  def asdict(self):
1869  r"""asdict(MapStringAVPairDistanceMeasurement self) -> PyObject *"""
1870  return _IMP_bff.MapStringAVPairDistanceMeasurement_asdict(self)
1871 
1872  def __init__(self, *args):
1873  r"""
1874  __init__(MapStringAVPairDistanceMeasurement self, std::less< std::string > const & other) -> MapStringAVPairDistanceMeasurement
1875  __init__(MapStringAVPairDistanceMeasurement self) -> MapStringAVPairDistanceMeasurement
1876  __init__(MapStringAVPairDistanceMeasurement self, MapStringAVPairDistanceMeasurement other) -> MapStringAVPairDistanceMeasurement
1877  """
1878  _IMP_bff.MapStringAVPairDistanceMeasurement_swiginit(self, _IMP_bff.new_MapStringAVPairDistanceMeasurement(*args))
1879 
1880  def empty(self):
1881  r"""empty(MapStringAVPairDistanceMeasurement self) -> bool"""
1882  return _IMP_bff.MapStringAVPairDistanceMeasurement_empty(self)
1883 
1884  def size(self):
1885  r"""size(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::size_type"""
1886  return _IMP_bff.MapStringAVPairDistanceMeasurement_size(self)
1887 
1888  def swap(self, v):
1889  r"""swap(MapStringAVPairDistanceMeasurement self, MapStringAVPairDistanceMeasurement v)"""
1890  return _IMP_bff.MapStringAVPairDistanceMeasurement_swap(self, v)
1891 
1892  def begin(self):
1893  r"""begin(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator"""
1894  return _IMP_bff.MapStringAVPairDistanceMeasurement_begin(self)
1895 
1896  def end(self):
1897  r"""end(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator"""
1898  return _IMP_bff.MapStringAVPairDistanceMeasurement_end(self)
1899 
1900  def rbegin(self):
1901  r"""rbegin(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::reverse_iterator"""
1902  return _IMP_bff.MapStringAVPairDistanceMeasurement_rbegin(self)
1903 
1904  def rend(self):
1905  r"""rend(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::reverse_iterator"""
1906  return _IMP_bff.MapStringAVPairDistanceMeasurement_rend(self)
1907 
1908  def clear(self):
1909  r"""clear(MapStringAVPairDistanceMeasurement self)"""
1910  return _IMP_bff.MapStringAVPairDistanceMeasurement_clear(self)
1911 
1912  def get_allocator(self):
1913  r"""get_allocator(MapStringAVPairDistanceMeasurement self) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::allocator_type"""
1914  return _IMP_bff.MapStringAVPairDistanceMeasurement_get_allocator(self)
1915 
1916  def count(self, x):
1917  r"""count(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & x) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::size_type"""
1918  return _IMP_bff.MapStringAVPairDistanceMeasurement_count(self, x)
1919 
1920  def erase(self, *args):
1921  r"""
1922  erase(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & x) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::size_type
1923  erase(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator position)
1924  erase(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator first, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator last)
1925  """
1926  return _IMP_bff.MapStringAVPairDistanceMeasurement_erase(self, *args)
1927 
1928  def find(self, x):
1929  r"""find(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & x) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator"""
1930  return _IMP_bff.MapStringAVPairDistanceMeasurement_find(self, x)
1931 
1932  def lower_bound(self, x):
1933  r"""lower_bound(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & x) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator"""
1934  return _IMP_bff.MapStringAVPairDistanceMeasurement_lower_bound(self, x)
1935 
1936  def upper_bound(self, x):
1937  r"""upper_bound(MapStringAVPairDistanceMeasurement self, std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::key_type const & x) -> std::map< std::string,IMP::bff::AVPairDistanceMeasurement >::iterator"""
1938  return _IMP_bff.MapStringAVPairDistanceMeasurement_upper_bound(self, x)
1939  __swig_destroy__ = _IMP_bff.delete_MapStringAVPairDistanceMeasurement
1940 
1941 # Register MapStringAVPairDistanceMeasurement in _IMP_bff:
1942 _IMP_bff.MapStringAVPairDistanceMeasurement_swigregister(MapStringAVPairDistanceMeasurement)
1943 DYE_PAIR_DISTANCE_E = _IMP_bff.DYE_PAIR_DISTANCE_E
1944 
1945 DYE_PAIR_DISTANCE_MEAN = _IMP_bff.DYE_PAIR_DISTANCE_MEAN
1946 
1947 DYE_PAIR_DISTANCE_MP = _IMP_bff.DYE_PAIR_DISTANCE_MP
1948 
1949 DYE_PAIR_EFFICIENCY = _IMP_bff.DYE_PAIR_EFFICIENCY
1950 
1951 DYE_PAIR_DISTANCE_DISTRIBUTION = _IMP_bff.DYE_PAIR_DISTANCE_DISTRIBUTION
1952 
1953 DYE_PAIR_XYZ_DISTANCE = _IMP_bff.DYE_PAIR_XYZ_DISTANCE
1954 
1955 class AVPairDistanceMeasurement(IMP._Value):
1956  r"""Proxy of C++ IMP::bff::AVPairDistanceMeasurement class."""
1957 
1958  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1959  distance = property(_IMP_bff.AVPairDistanceMeasurement_distance_get, _IMP_bff.AVPairDistanceMeasurement_distance_set, doc=r"""distance : double""")
1960  error_neg = property(_IMP_bff.AVPairDistanceMeasurement_error_neg_get, _IMP_bff.AVPairDistanceMeasurement_error_neg_set, doc=r"""error_neg : double""")
1961  error_pos = property(_IMP_bff.AVPairDistanceMeasurement_error_pos_get, _IMP_bff.AVPairDistanceMeasurement_error_pos_set, doc=r"""error_pos : double""")
1962  forster_radius = property(_IMP_bff.AVPairDistanceMeasurement_forster_radius_get, _IMP_bff.AVPairDistanceMeasurement_forster_radius_set, doc=r"""forster_radius : double""")
1963  distance_type = property(_IMP_bff.AVPairDistanceMeasurement_distance_type_get, _IMP_bff.AVPairDistanceMeasurement_distance_type_set, doc=r"""distance_type : int""")
1964  position_1 = property(_IMP_bff.AVPairDistanceMeasurement_position_1_get, _IMP_bff.AVPairDistanceMeasurement_position_1_set, doc=r"""position_1 : std::string""")
1965  position_2 = property(_IMP_bff.AVPairDistanceMeasurement_position_2_get, _IMP_bff.AVPairDistanceMeasurement_position_2_set, doc=r"""position_2 : std::string""")
1966 
1967  def get_json(self):
1968  r"""get_json(AVPairDistanceMeasurement self) -> std::string"""
1969  return _IMP_bff.AVPairDistanceMeasurement_get_json(self)
1970 
1971  def score_model(self, model):
1972  r"""score_model(AVPairDistanceMeasurement self, double model) -> double"""
1973  return _IMP_bff.AVPairDistanceMeasurement_score_model(self, model)
1974 
1975  def show(self, *args, **kwargs):
1976  r"""show(AVPairDistanceMeasurement self, _ostream out=std::cout)"""
1977  return _IMP_bff.AVPairDistanceMeasurement_show(self, *args, **kwargs)
1978 
1979  def __str__(self):
1980  r"""__str__(AVPairDistanceMeasurement self) -> std::string"""
1981  return _IMP_bff.AVPairDistanceMeasurement___str__(self)
1982 
1983  def __repr__(self):
1984  r"""__repr__(AVPairDistanceMeasurement self) -> std::string"""
1985  return _IMP_bff.AVPairDistanceMeasurement___repr__(self)
1986 
1987  def __init__(self):
1988  r"""__init__(AVPairDistanceMeasurement self) -> AVPairDistanceMeasurement"""
1989  _IMP_bff.AVPairDistanceMeasurement_swiginit(self, _IMP_bff.new_AVPairDistanceMeasurement())
1990  __swig_destroy__ = _IMP_bff.delete_AVPairDistanceMeasurement
1991 
1992 # Register AVPairDistanceMeasurement in _IMP_bff:
1993 _IMP_bff.AVPairDistanceMeasurement_swigregister(AVPairDistanceMeasurement)
1994 class AV(IMP.core.Gaussian):
1995  r"""Proxy of C++ IMP::bff::AV class."""
1996 
1997  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
1998 
1999  def create_path_map_header(self):
2000  r"""create_path_map_header(AV self) -> PathMapHeader"""
2001  return _IMP_bff.AV_create_path_map_header(self)
2002 
2003  def init_path_map(self):
2004  r"""init_path_map(AV self)"""
2005  return _IMP_bff.AV_init_path_map(self)
2006 
2007  @staticmethod
2008  def get_av_key(i):
2009  r"""get_av_key(unsigned int i) -> FloatKey"""
2010  return _IMP_bff.AV_get_av_key(i)
2011 
2012  @staticmethod
2013  def do_setup_particle(*args, **kwargs):
2014  r"""do_setup_particle(Model m, ParticleIndex pi, ParticleIndex pi_source, double linker_length=20.0, Vector3D radii=IMP::Vector3D(3.5, 0, 0), double linker_width=0.5, double allowed_sphere_radius=1.5, double contact_volume_thickness=0.0, double contact_volume_trapped_fraction=-1, double simulation_grid_resolution=1.5)"""
2015  return _IMP_bff.AV_do_setup_particle(*args, **kwargs)
2016 
2017  @staticmethod
2018  def get_particle_key(i):
2019  r"""get_particle_key(unsigned int i) -> ParticleIndexKey"""
2020  return _IMP_bff.AV_get_particle_key(i)
2021 
2022  def get_particle_index(self, *args):
2023  r"""
2024  get_particle_index(AV self) -> ParticleIndex
2025  get_particle_index(AV self, unsigned int i) -> ParticleIndex
2026  """
2027  return _IMP_bff.AV_get_particle_index(self, *args)
2028 
2029  def get_particle(self, *args):
2030  r"""
2031  get_particle(AV self) -> Particle
2032  get_particle(AV self, unsigned int i) -> Particle
2033  """
2034  return _IMP_bff.AV_get_particle(self, *args)
2035 
2036  def __init__(self, *args):
2037  r"""
2038  __init__(AV self) -> AV
2039  __init__(AV self, Model m, ParticleIndex id) -> AV
2040  __init__(AV self, _ParticleAdaptor d) -> AV
2041  """
2042  _IMP_bff.AV_swiginit(self, _IMP_bff.new_AV(*args))
2043 
2044  def show(self, *args, **kwargs):
2045  r"""show(AV self, _ostream out=std::cout)"""
2046  return _IMP_bff.AV_show(self, *args, **kwargs)
2047 
2048  @staticmethod
2049  def setup_particle(*args):
2050  r"""
2051  setup_particle(Model m, ParticleIndex pi, ParticleIndex pi_source) -> AV
2052  setup_particle(_ParticleAdaptor pa, ParticleIndex pi_source) -> AV
2053  """
2054  return _IMP_bff.AV_setup_particle(*args)
2055 
2056  def get_linker_length(self):
2057  r"""get_linker_length(AV self) -> IMP::Float"""
2058  return _IMP_bff.AV_get_linker_length(self)
2059 
2060  def set_linker_length(self, t):
2061  r"""set_linker_length(AV self, IMP::Float t)"""
2062  return _IMP_bff.AV_set_linker_length(self, t)
2063 
2064  def get_radius1(self):
2065  r"""get_radius1(AV self) -> IMP::Float"""
2066  return _IMP_bff.AV_get_radius1(self)
2067 
2068  def set_radius1(self, t):
2069  r"""set_radius1(AV self, IMP::Float t)"""
2070  return _IMP_bff.AV_set_radius1(self, t)
2071 
2072  def get_radius2(self):
2073  r"""get_radius2(AV self) -> IMP::Float"""
2074  return _IMP_bff.AV_get_radius2(self)
2075 
2076  def set_radius2(self, t):
2077  r"""set_radius2(AV self, IMP::Float t)"""
2078  return _IMP_bff.AV_set_radius2(self, t)
2079 
2080  def get_radius3(self):
2081  r"""get_radius3(AV self) -> IMP::Float"""
2082  return _IMP_bff.AV_get_radius3(self)
2083 
2084  def set_radius3(self, t):
2085  r"""set_radius3(AV self, IMP::Float t)"""
2086  return _IMP_bff.AV_set_radius3(self, t)
2087 
2088  def get_linker_width(self):
2089  r"""get_linker_width(AV self) -> IMP::Float"""
2090  return _IMP_bff.AV_get_linker_width(self)
2091 
2092  def set_linker_width(self, t):
2093  r"""set_linker_width(AV self, IMP::Float t)"""
2094  return _IMP_bff.AV_set_linker_width(self, t)
2095 
2096  def get_allowed_sphere_radius(self):
2097  r"""get_allowed_sphere_radius(AV self) -> IMP::Float"""
2098  return _IMP_bff.AV_get_allowed_sphere_radius(self)
2099 
2100  def set_allowed_sphere_radius(self, t):
2101  r"""set_allowed_sphere_radius(AV self, IMP::Float t)"""
2102  return _IMP_bff.AV_set_allowed_sphere_radius(self, t)
2103 
2104  def get_contact_volume_thickness(self):
2105  r"""get_contact_volume_thickness(AV self) -> IMP::Float"""
2106  return _IMP_bff.AV_get_contact_volume_thickness(self)
2107 
2108  def set_contact_volume_thickness(self, t):
2109  r"""set_contact_volume_thickness(AV self, IMP::Float t)"""
2110  return _IMP_bff.AV_set_contact_volume_thickness(self, t)
2111 
2112  def get_contact_volume_trapped_fraction(self):
2113  r"""get_contact_volume_trapped_fraction(AV self) -> IMP::Float"""
2114  return _IMP_bff.AV_get_contact_volume_trapped_fraction(self)
2115 
2116  def set_contact_volume_trapped_fraction(self, t):
2117  r"""set_contact_volume_trapped_fraction(AV self, IMP::Float t)"""
2118  return _IMP_bff.AV_set_contact_volume_trapped_fraction(self, t)
2119 
2120  def get_simulation_grid_resolution(self):
2121  r"""get_simulation_grid_resolution(AV self) -> IMP::Float"""
2122  return _IMP_bff.AV_get_simulation_grid_resolution(self)
2123 
2124  def set_simulation_grid_resolution(self, t):
2125  r"""set_simulation_grid_resolution(AV self, IMP::Float t)"""
2126  return _IMP_bff.AV_set_simulation_grid_resolution(self, t)
2127 
2128  def get_radii(self):
2129  r"""get_radii(AV self) -> Vector3D"""
2130  return _IMP_bff.AV_get_radii(self)
2131 
2132  def get_parameters_are_optimized(self):
2133  r"""get_parameters_are_optimized(AV self) -> bool"""
2134  return _IMP_bff.AV_get_parameters_are_optimized(self)
2135 
2136  def set_av_parameters_are_optimized(self, tf):
2137  r"""set_av_parameters_are_optimized(AV self, bool tf)"""
2138  return _IMP_bff.AV_set_av_parameters_are_optimized(self, tf)
2139 
2140  def set_av_parameter(self, j):
2141  r"""set_av_parameter(AV self, nlohmann::json const & j)"""
2142  return _IMP_bff.AV_set_av_parameter(self, j)
2143 
2144  def get_derivatives(self):
2145  r"""get_derivatives(AV self) -> Vector3D"""
2146  return _IMP_bff.AV_get_derivatives(self)
2147 
2148  @staticmethod
2149  def get_is_setup(*args):
2150  r"""
2151  get_is_setup(_ParticleAdaptor p) -> bool
2152  get_is_setup(Model m, ParticleIndex pi) -> bool
2153  """
2154  return _IMP_bff.AV_get_is_setup(*args)
2155 
2156  def get_map(self):
2157  r"""get_map(AV self) -> PathMap"""
2158  return _IMP_bff.AV_get_map(self)
2159 
2160  def resample(self, shift_xyz=True):
2161  r"""resample(AV self, bool shift_xyz=True)"""
2162  return _IMP_bff.AV_resample(self, shift_xyz)
2163 
2164  def get_mean_position(self, include_source=True):
2165  r"""get_mean_position(AV self, bool include_source=True) -> Vector3D"""
2166  return _IMP_bff.AV_get_mean_position(self, include_source)
2167 
2168  def get_source_coordinates(self):
2169  r"""get_source_coordinates(AV self) -> Vector3D"""
2170  return _IMP_bff.AV_get_source_coordinates(self)
2171 
2172  def get_source(self):
2173  r"""get_source(AV self) -> Particle"""
2174  return _IMP_bff.AV_get_source(self)
2175 
2176  def add_attribute(self, *args):
2177  r"""
2178  add_attribute(AV self, FloatKey k, IMP::Float v, bool opt)
2179  add_attribute(AV self, FloatKey a0, IMP::Float a1)
2180  add_attribute(AV self, IntKey a0, IMP::Int a1)
2181  add_attribute(AV self, FloatsKey a0, IMP::Floats a1)
2182  add_attribute(AV self, IntsKey a0, IMP::Ints a1)
2183  add_attribute(AV self, StringKey a0, IMP::String a1)
2184  add_attribute(AV self, ParticleIndexKey a0, Particle a1)
2185  add_attribute(AV self, ObjectKey a0, Object a1)
2186  add_attribute(AV self, SparseFloatKey a0, IMP::Float a1)
2187  add_attribute(AV self, SparseIntKey a0, IMP::Int a1)
2188  add_attribute(AV self, SparseStringKey a0, IMP::String a1)
2189  add_attribute(AV self, SparseParticleIndexKey a0, ParticleIndex a1)
2190  """
2191  return _IMP_bff.AV_add_attribute(self, *args)
2192 
2193  def get_value(self, *args):
2194  r"""
2195  get_value(AV self, FloatKey a0) -> IMP::Float
2196  get_value(AV self, IntKey a0) -> IMP::Int
2197  get_value(AV self, FloatsKey a0) -> IMP::Floats
2198  get_value(AV self, IntsKey a0) -> IMP::Ints
2199  get_value(AV self, StringKey a0) -> IMP::String
2200  get_value(AV self, ParticleIndexKey a0) -> Particle
2201  get_value(AV self, ObjectKey a0) -> Object
2202  get_value(AV self, SparseFloatKey a0) -> IMP::Float
2203  get_value(AV self, SparseIntKey a0) -> IMP::Int
2204  get_value(AV self, SparseStringKey a0) -> IMP::String
2205  get_value(AV self, SparseParticleIndexKey a0) -> ParticleIndex
2206  """
2207  return _IMP_bff.AV_get_value(self, *args)
2208 
2209  def set_value(self, *args):
2210  r"""
2211  set_value(AV self, FloatKey a0, IMP::Float a1)
2212  set_value(AV self, IntKey a0, IMP::Int a1)
2213  set_value(AV self, FloatsKey a0, IMP::Floats a1)
2214  set_value(AV self, IntsKey a0, IMP::Ints a1)
2215  set_value(AV self, StringKey a0, IMP::String a1)
2216  set_value(AV self, ParticleIndexKey a0, Particle a1)
2217  set_value(AV self, ObjectKey a0, Object a1)
2218  set_value(AV self, SparseFloatKey a0, IMP::Float a1)
2219  set_value(AV self, SparseIntKey a0, IMP::Int a1)
2220  set_value(AV self, SparseStringKey a0, IMP::String a1)
2221  set_value(AV self, SparseParticleIndexKey a0, ParticleIndex a1)
2222  """
2223  return _IMP_bff.AV_set_value(self, *args)
2224 
2225  def remove_attribute(self, *args):
2226  r"""
2227  remove_attribute(AV self, FloatKey a0)
2228  remove_attribute(AV self, IntKey a0)
2229  remove_attribute(AV self, FloatsKey a0)
2230  remove_attribute(AV self, IntsKey a0)
2231  remove_attribute(AV self, StringKey a0)
2232  remove_attribute(AV self, ParticleIndexKey a0)
2233  remove_attribute(AV self, ObjectKey a0)
2234  remove_attribute(AV self, SparseFloatKey a0)
2235  remove_attribute(AV self, SparseIntKey a0)
2236  remove_attribute(AV self, SparseStringKey a0)
2237  remove_attribute(AV self, SparseParticleIndexKey a0)
2238  """
2239  return _IMP_bff.AV_remove_attribute(self, *args)
2240 
2241  def has_attribute(self, *args):
2242  r"""
2243  has_attribute(AV self, FloatKey a0) -> bool
2244  has_attribute(AV self, IntKey a0) -> bool
2245  has_attribute(AV self, FloatsKey a0) -> bool
2246  has_attribute(AV self, IntsKey a0) -> bool
2247  has_attribute(AV self, StringKey a0) -> bool
2248  has_attribute(AV self, ParticleIndexKey a0) -> bool
2249  has_attribute(AV self, ObjectKey a0) -> bool
2250  has_attribute(AV self, SparseFloatKey a0) -> bool
2251  has_attribute(AV self, SparseIntKey a0) -> bool
2252  has_attribute(AV self, SparseStringKey a0) -> bool
2253  has_attribute(AV self, SparseParticleIndexKey a0) -> bool
2254  """
2255  return _IMP_bff.AV_has_attribute(self, *args)
2256 
2257  def get_derivative(self, a0):
2258  r"""get_derivative(AV self, FloatKey a0) -> double"""
2259  return _IMP_bff.AV_get_derivative(self, a0)
2260 
2261  def get_name(self):
2262  r"""get_name(AV self) -> std::string"""
2263  return _IMP_bff.AV_get_name(self)
2264 
2265  def clear_caches(self):
2266  r"""clear_caches(AV self)"""
2267  return _IMP_bff.AV_clear_caches(self)
2268 
2269  def set_name(self, a0):
2270  r"""set_name(AV self, std::string a0)"""
2271  return _IMP_bff.AV_set_name(self, a0)
2272 
2273  def set_check_level(self, a0):
2274  r"""set_check_level(AV self, IMP::CheckLevel a0)"""
2275  return _IMP_bff.AV_set_check_level(self, a0)
2276 
2277  def add_to_derivative(self, a0, a1, a2):
2278  r"""add_to_derivative(AV self, FloatKey a0, double a1, DerivativeAccumulator a2)"""
2279  return _IMP_bff.AV_add_to_derivative(self, a0, a1, a2)
2280 
2281  def set_is_optimized(self, a0, a1):
2282  r"""set_is_optimized(AV self, FloatKey a0, bool a1)"""
2283  return _IMP_bff.AV_set_is_optimized(self, a0, a1)
2284 
2285  def get_is_optimized(self, a0):
2286  r"""get_is_optimized(AV self, FloatKey a0) -> bool"""
2287  return _IMP_bff.AV_get_is_optimized(self, a0)
2288 
2289  def get_check_level(self):
2290  r"""get_check_level(AV self) -> IMP::CheckLevel"""
2291  return _IMP_bff.AV_get_check_level(self)
2292 
2293  def __eq__(self, *args):
2294  r"""
2295  __eq__(AV self, AV o) -> bool
2296  __eq__(AV self, Particle d) -> bool
2297  """
2298  return _IMP_bff.AV___eq__(self, *args)
2299 
2300  def __ne__(self, *args):
2301  r"""
2302  __ne__(AV self, AV o) -> bool
2303  __ne__(AV self, Particle d) -> bool
2304  """
2305  return _IMP_bff.AV___ne__(self, *args)
2306 
2307  def __le__(self, *args):
2308  r"""
2309  __le__(AV self, AV o) -> bool
2310  __le__(AV self, Particle d) -> bool
2311  """
2312  return _IMP_bff.AV___le__(self, *args)
2313 
2314  def __lt__(self, *args):
2315  r"""
2316  __lt__(AV self, AV o) -> bool
2317  __lt__(AV self, Particle d) -> bool
2318  """
2319  return _IMP_bff.AV___lt__(self, *args)
2320 
2321  def __ge__(self, *args):
2322  r"""
2323  __ge__(AV self, AV o) -> bool
2324  __ge__(AV self, Particle d) -> bool
2325  """
2326  return _IMP_bff.AV___ge__(self, *args)
2327 
2328  def __gt__(self, *args):
2329  r"""
2330  __gt__(AV self, AV o) -> bool
2331  __gt__(AV self, Particle d) -> bool
2332  """
2333  return _IMP_bff.AV___gt__(self, *args)
2334 
2335  def __hash__(self):
2336  r"""__hash__(AV self) -> std::size_t"""
2337  return _IMP_bff.AV___hash__(self)
2338 
2339  def __str__(self):
2340  r"""__str__(AV self) -> std::string"""
2341  return _IMP_bff.AV___str__(self)
2342 
2343  def __repr__(self):
2344  r"""__repr__(AV self) -> std::string"""
2345  return _IMP_bff.AV___repr__(self)
2346 
2347  def _get_as_binary(self):
2348  r"""_get_as_binary(AV self) -> PyObject *"""
2349  return _IMP_bff.AV__get_as_binary(self)
2350 
2351  def _set_from_binary(self, p):
2352  r"""_set_from_binary(AV self, PyObject * p)"""
2353  return _IMP_bff.AV__set_from_binary(self, p)
2354 
2355  def __getstate__(self):
2356  p = self._get_as_binary()
2357  if len(self.__dict__) > 1:
2358  d = self.__dict__.copy()
2359  del d['this']
2360  p = (d, p)
2361  return p
2362 
2363  def __setstate__(self, p):
2364  if not hasattr(self, 'this'):
2365  self.__init__()
2366  if isinstance(p, tuple):
2367  d, p = p
2368  self.__dict__.update(d)
2369  return self._set_from_binary(p)
2370 
2371 
2372  map = property(get_map)
2373 
2374  __swig_destroy__ = _IMP_bff.delete_AV
2375 
2376 # Register AV in _IMP_bff:
2377 _IMP_bff.AV_swigregister(AV)
2378 
2379 def __lshift__(out, n):
2380  r"""__lshift__(_ostream out, AV n) -> _ostream"""
2381  return _IMP_bff.__lshift__(out, n)
2382 
2383 def av_distance(*args, **kwargs):
2384  r"""av_distance(AV a, AV b, double forster_radius=52.0, int distance_type=DYE_PAIR_DISTANCE_MEAN, int n_samples=10000) -> double"""
2385  return _IMP_bff.av_distance(*args, **kwargs)
2386 
2387 def av_random_points(av1, n_samples=10000):
2388  r"""av_random_points(AV av1, int n_samples=10000) -> VectorDouble"""
2389  return _IMP_bff.av_random_points(av1, n_samples)
2390 
2391 def av_random_distances(av1, av2, n_samples=10000):
2392  r"""av_random_distances(AV av1, AV av2, int n_samples=10000) -> VectorDouble"""
2393  return _IMP_bff.av_random_distances(av1, av2, n_samples)
2394 
2395 def av_distance_distribution(av1, av2, axis, n_samples=10000):
2396  r"""av_distance_distribution(AV av1, AV av2, VectorDouble axis, int n_samples=10000) -> VectorDouble"""
2397  return _IMP_bff.av_distance_distribution(av1, av2, axis, n_samples)
2398 
2399 def search_labeling_site(*args, **kwargs):
2400  r"""search_labeling_site(Hierarchy hier, std::string json_str="", nlohmann::json const & json_data=nlohmann::json()) -> ParticleIndex"""
2401  return _IMP_bff.search_labeling_site(*args, **kwargs)
2402 class AVNetworkRestraint(IMP.Restraint):
2403  r"""Proxy of C++ IMP::bff::AVNetworkRestraint class."""
2404 
2405  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2406 
2407  def __init__(self, *args, **kwargs):
2408  r"""__init__(AVNetworkRestraint self, Hierarchy hier, std::string fps_json_fn, std::string name="AVNetworkRestraint%1%", std::string score_set="", int n_samples=50000) -> AVNetworkRestraint"""
2409  _IMP_bff.AVNetworkRestraint_swiginit(self, _IMP_bff.new_AVNetworkRestraint(*args, **kwargs))
2410 
2411  def get_probability(self):
2412  r"""get_probability(AVNetworkRestraint self) -> double"""
2413  return _IMP_bff.AVNetworkRestraint_get_probability(self)
2414 
2415  def get_used_avs(self):
2416  r"""get_used_avs(AVNetworkRestraint self) -> IMP::bff::AVs const"""
2417  return _IMP_bff.AVNetworkRestraint_get_used_avs(self)
2418 
2419  def get_used_distances(self):
2420  r"""get_used_distances(AVNetworkRestraint self) -> MapStringAVPairDistanceMeasurement"""
2421  return _IMP_bff.AVNetworkRestraint_get_used_distances(self)
2422 
2423  def get_model_distance(self, position1_name, position2_name, forster_radius, distance_type):
2424  r"""get_model_distance(AVNetworkRestraint self, std::string position1_name, std::string position2_name, double forster_radius, int distance_type) -> double"""
2425  return _IMP_bff.AVNetworkRestraint_get_model_distance(self, position1_name, position2_name, forster_radius, distance_type)
2426 
2427  def get_indexes(self):
2428  r"""get_indexes(AVNetworkRestraint self) -> IMP::ParticleIndexes const"""
2429  return _IMP_bff.AVNetworkRestraint_get_indexes(self)
2430 
2431  def do_get_inputs(self):
2432  r"""do_get_inputs(AVNetworkRestraint self) -> IMP::ModelObjectsTemp"""
2433  return _IMP_bff.AVNetworkRestraint_do_get_inputs(self)
2434 
2435  def show(self, out):
2436  r"""show(AVNetworkRestraint self, _ostream out)"""
2437  return _IMP_bff.AVNetworkRestraint_show(self, out)
2438 
2439  def get_version_info(self):
2440  r"""get_version_info(AVNetworkRestraint self) -> VersionInfo"""
2441  return _IMP_bff.AVNetworkRestraint_get_version_info(self)
2442  __swig_destroy__ = _IMP_bff.delete_AVNetworkRestraint
2443 
2444  def __str__(self):
2445  r"""__str__(AVNetworkRestraint self) -> std::string"""
2446  return _IMP_bff.AVNetworkRestraint___str__(self)
2447 
2448  def __repr__(self):
2449  r"""__repr__(AVNetworkRestraint self) -> std::string"""
2450  return _IMP_bff.AVNetworkRestraint___repr__(self)
2451 
2452  @staticmethod
2453  def get_from(o):
2454  return _object_cast_to_AVNetworkRestraint(o)
2455 
2456 
2457 # Register AVNetworkRestraint in _IMP_bff:
2458 _IMP_bff.AVNetworkRestraint_swigregister(AVNetworkRestraint)
2459 
2460 def decay_rescale(fit, decay, start=0, stop=-1):
2461  r"""decay_rescale(double * fit, double * decay, int start=0, int stop=-1) -> double"""
2462  return _IMP_bff.decay_rescale(fit, decay, start, stop)
2463 
2464 def decay_rescale_w(fit, decay, w_sq, start=0, stop=-1):
2465  r"""decay_rescale_w(double * fit, double * decay, double * w_sq, int start=0, int stop=-1) -> double"""
2466  return _IMP_bff.decay_rescale_w(fit, decay, w_sq, start, stop)
2467 
2468 def decay_rescale_w_bg(fit, decay, w_sq, bg=0.0, start=0, stop=-1):
2469  r"""decay_rescale_w_bg(double * fit, double * decay, double * w_sq, double bg=0.0, int start=0, int stop=-1) -> double"""
2470  return _IMP_bff.decay_rescale_w_bg(fit, decay, w_sq, bg, start, stop)
2471 
2472 def decay_fconv(fit, irf, x, start=0, stop=-1, dt=1.0):
2473  r"""decay_fconv(double * fit, double * irf, double * x, int start=0, int stop=-1, double dt=1.0)"""
2474  return _IMP_bff.decay_fconv(fit, irf, x, start, stop, dt)
2475 
2476 def decay_fconv_avx(fit, irf, x, start=0, stop=-1, dt=1.0):
2477  r"""decay_fconv_avx(double * fit, double * irf, double * x, int start=0, int stop=-1, double dt=1.0)"""
2478  return _IMP_bff.decay_fconv_avx(fit, irf, x, start, stop, dt)
2479 
2480 def decay_fconv_per(fit, irf, x, period, start=0, stop=-1, dt=1.0):
2481  r"""decay_fconv_per(double * fit, double * irf, double * x, double period, int start=0, int stop=-1, double dt=1.0)"""
2482  return _IMP_bff.decay_fconv_per(fit, irf, x, period, start, stop, dt)
2483 
2484 def decay_fconv_per_avx(fit, irf, x, period, start=0, stop=-1, dt=1.0):
2485  r"""decay_fconv_per_avx(double * fit, double * irf, double * x, double period, int start=0, int stop=-1, double dt=1.0)"""
2486  return _IMP_bff.decay_fconv_per_avx(fit, irf, x, period, start, stop, dt)
2487 
2488 def decay_fconv_per_cs(fit, irf, x, period, conv_stop=-1, stop=-1, dt=1.0):
2489  r"""decay_fconv_per_cs(double * fit, double * irf, double * x, double period, int conv_stop=-1, int stop=-1, double dt=1.0)"""
2490  return _IMP_bff.decay_fconv_per_cs(fit, irf, x, period, conv_stop, stop, dt)
2491 
2492 def decay_fconv_ref(fit, irf, x, tauref, start=0, stop=-1, dt=1.0):
2493  r"""decay_fconv_ref(double * fit, double * irf, double * x, double tauref, int start=0, int stop=-1, double dt=1.0)"""
2494  return _IMP_bff.decay_fconv_ref(fit, irf, x, tauref, start, stop, dt)
2495 
2496 def decay_sconv(fit, irf, model, start=0, stop=-1):
2497  r"""decay_sconv(double * fit, double * irf, double * model, int start=0, int stop=-1)"""
2498  return _IMP_bff.decay_sconv(fit, irf, model, start, stop)
2499 
2500 def decay_shift_lamp(irf, irf_shift, ts):
2501  r"""decay_shift_lamp(double * irf, double * irf_shift, double ts)"""
2502  return _IMP_bff.decay_shift_lamp(irf, irf_shift, ts)
2503 
2504 def mod_p(a, n):
2505  r"""mod_p(int a, int n) -> int"""
2506  return _IMP_bff.mod_p(a, n)
2507 
2508 def decay_add_pile_up_to_model(*args, **kwargs):
2509  r"""decay_add_pile_up_to_model(double * model, double * data, double repetition_rate, double instrument_dead_time, double measurement_time, std::string pile_up_model="coates", int start=0, int stop=-1)"""
2510  return _IMP_bff.decay_add_pile_up_to_model(*args, **kwargs)
2511 
2512 def discriminate_small_amplitudes(lifetime_spectrum, amplitude_threshold):
2513  r"""discriminate_small_amplitudes(double * lifetime_spectrum, double amplitude_threshold)"""
2514  return _IMP_bff.discriminate_small_amplitudes(lifetime_spectrum, amplitude_threshold)
2515 
2516 def decay_fconv_per_cs_time_axis(model, time_axis, irf, lifetime_spectrum, convolution_start=0, convolution_stop=-1, period=100.0):
2517  r"""decay_fconv_per_cs_time_axis(double * model, double * time_axis, double * irf, double * lifetime_spectrum, int convolution_start=0, int convolution_stop=-1, double period=100.0)"""
2518  return _IMP_bff.decay_fconv_per_cs_time_axis(model, time_axis, irf, lifetime_spectrum, convolution_start, convolution_stop, period)
2519 
2520 def decay_fconv_cs_time_axis(inplace_output, time_axis, irf, lifetime_spectrum, convolution_start=0, convolution_stop=-1):
2521  r"""decay_fconv_cs_time_axis(double * inplace_output, double * time_axis, double * irf, double * lifetime_spectrum, int convolution_start=0, int convolution_stop=-1)"""
2522  return _IMP_bff.decay_fconv_cs_time_axis(inplace_output, time_axis, irf, lifetime_spectrum, convolution_start, convolution_stop)
2523 NOISE_NA = _IMP_bff.NOISE_NA
2524 
2525 NOISE_POISSON = _IMP_bff.NOISE_POISSON
2526 
2527 class DecayCurve(object):
2528  r"""Proxy of C++ IMP::bff::DecayCurve class."""
2529 
2530  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2531  __repr__ = _swig_repr
2532 
2533  @staticmethod
2534  def shift_array(input, shift):
2535  r"""shift_array(double * input, double shift) -> VectorDouble"""
2536  return _IMP_bff.DecayCurve_shift_array(input, shift)
2537 
2538  def size(self):
2539  r"""size(DecayCurve self) -> size_t"""
2540  return _IMP_bff.DecayCurve_size(self)
2541 
2542  def empty(self):
2543  r"""empty(DecayCurve self) -> bool"""
2544  return _IMP_bff.DecayCurve_empty(self)
2545 
2546  def get_dx(self):
2547  r"""get_dx(DecayCurve self) -> VectorDouble"""
2548  return _IMP_bff.DecayCurve_get_dx(self)
2549 
2550  def resize(self, n, v=0.0, dx=1.0):
2551  r"""resize(DecayCurve self, size_t n, double v=0.0, double dx=1.0)"""
2552  return _IMP_bff.DecayCurve_resize(self, n, v, dx)
2553 
2554  def get_average_dx(self):
2555  r"""get_average_dx(DecayCurve self) -> double"""
2556  return _IMP_bff.DecayCurve_get_average_dx(self)
2557 
2558  def get_x(self):
2559  r"""get_x(DecayCurve self) -> VectorDouble"""
2560  return _IMP_bff.DecayCurve_get_x(self)
2561 
2562  def set_x(self, *args):
2563  r"""
2564  set_x(DecayCurve self, VectorDouble v)
2565  set_x(DecayCurve self, double * input)
2566  """
2567  return _IMP_bff.DecayCurve_set_x(self, *args)
2568 
2569  def get_y(self):
2570  r"""get_y(DecayCurve self) -> VectorDouble"""
2571  return _IMP_bff.DecayCurve_get_y(self)
2572 
2573  def set_y(self, *args):
2574  r"""
2575  set_y(DecayCurve self, VectorDouble v)
2576  set_y(DecayCurve self, double * input)
2577  """
2578  return _IMP_bff.DecayCurve_set_y(self, *args)
2579 
2580  def get_ey(self):
2581  r"""get_ey(DecayCurve self) -> VectorDouble"""
2582  return _IMP_bff.DecayCurve_get_ey(self)
2583 
2584  def set_ey(self, *args):
2585  r"""
2586  set_ey(DecayCurve self, VectorDouble v)
2587  set_ey(DecayCurve self, double * input)
2588  """
2589  return _IMP_bff.DecayCurve_set_ey(self, *args)
2590 
2591  def set_acquisition_time(self, v):
2592  r"""set_acquisition_time(DecayCurve self, double v)"""
2593  return _IMP_bff.DecayCurve_set_acquisition_time(self, v)
2594 
2595  def get_acquisition_time(self):
2596  r"""get_acquisition_time(DecayCurve self) -> double"""
2597  return _IMP_bff.DecayCurve_get_acquisition_time(self)
2598 
2599  def set_shift(self, v):
2600  r"""set_shift(DecayCurve self, double v)"""
2601  return _IMP_bff.DecayCurve_set_shift(self, v)
2602 
2603  def get_shift(self):
2604  r"""get_shift(DecayCurve self) -> double"""
2605  return _IMP_bff.DecayCurve_get_shift(self)
2606 
2607  def get_json(self):
2608  r"""get_json(DecayCurve self) -> std::string"""
2609  return _IMP_bff.DecayCurve_get_json(self)
2610 
2611  def read_json(self, json_string):
2612  r"""read_json(DecayCurve self, std::string json_string) -> int"""
2613  return _IMP_bff.DecayCurve_read_json(self, json_string)
2614 
2615  def __init__(self, *args, **kwargs):
2616  r"""__init__(DecayCurve self, VectorDouble x=std::vector< double >(), VectorDouble y=std::vector< double >(), VectorDouble ey=std::vector< double >(), double acquisition_time=std::numeric_limits< double >::max(), int noise_model=NOISE_POISSON, int size=-1) -> DecayCurve"""
2617  _IMP_bff.DecayCurve_swiginit(self, _IMP_bff.new_DecayCurve(*args, **kwargs))
2618 
2619  def sum(self, start=0, stop=-1):
2620  r"""sum(DecayCurve self, int start=0, int stop=-1) -> double"""
2621  return _IMP_bff.DecayCurve_sum(self, start, stop)
2622 
2623  def apply_simple_moving_average(self, start, stop, n_window=5, normalize=False):
2624  r"""apply_simple_moving_average(DecayCurve self, int start, int stop, int n_window=5, bool normalize=False)"""
2625  return _IMP_bff.DecayCurve_apply_simple_moving_average(self, start, stop, n_window, normalize)
2626 
2627  def __iadd__(self, v):
2628  r"""__iadd__(DecayCurve self, double v) -> DecayCurve"""
2629  return _IMP_bff.DecayCurve___iadd__(self, v)
2630 
2631  def __isub__(self, v):
2632  r"""__isub__(DecayCurve self, double v) -> DecayCurve"""
2633  return _IMP_bff.DecayCurve___isub__(self, v)
2634 
2635  def __imul__(self, v):
2636  r"""__imul__(DecayCurve self, double v) -> DecayCurve"""
2637  return _IMP_bff.DecayCurve___imul__(self, v)
2638 
2639  def __itruediv__(self, *args):
2640  return _IMP_bff.DecayCurve___itruediv__(self, *args)
2641  __idiv__ = __itruediv__
2642 
2643 
2644 
2645  def __add__(self, *args):
2646  r"""
2647  __add__(DecayCurve self, double v) -> DecayCurve
2648  __add__(DecayCurve self, DecayCurve other) -> DecayCurve
2649  """
2650  return _IMP_bff.DecayCurve___add__(self, *args)
2651 
2652  def __sub__(self, *args):
2653  r"""
2654  __sub__(DecayCurve self, double v) -> DecayCurve
2655  __sub__(DecayCurve self, DecayCurve other) -> DecayCurve
2656  """
2657  return _IMP_bff.DecayCurve___sub__(self, *args)
2658 
2659  def __mul__(self, *args):
2660  r"""
2661  __mul__(DecayCurve self, double v) -> DecayCurve
2662  __mul__(DecayCurve self, DecayCurve other) -> DecayCurve
2663  """
2664  return _IMP_bff.DecayCurve___mul__(self, *args)
2665 
2666  def __truediv__(self, *args):
2667  return _IMP_bff.DecayCurve___truediv__(self, *args)
2668 
2669 
2670 
2671  def __lshift__(self, v):
2672  r"""__lshift__(DecayCurve self, double v) -> DecayCurve"""
2673  return _IMP_bff.DecayCurve___lshift__(self, v)
2674 
2675  acquisition_time = property(get_acquisition_time, set_acquisition_time)
2676 
2677 
2678  shift = property(get_shift, set_shift)
2679 
2680 
2681  x = property(
2682  lambda x: np.array(x.get_x()),
2683  set_x
2684  )
2685 
2686 
2687  y = property(
2688  lambda x: np.array(x.get_y()),
2689  set_y
2690  )
2691 
2692 
2693  ey = property(
2694  lambda x: np.array(x.get_ey()),
2695  set_ey
2696  )
2697 
2698  __swig_destroy__ = _IMP_bff.delete_DecayCurve
2699 
2700 # Register DecayCurve in _IMP_bff:
2701 _IMP_bff.DecayCurve_swigregister(DecayCurve)
2702 
2703 DecayRanges=list
2704 _plural_types.append("DecayRanges")
2705 _value_types.append("DecayRange")
2706 
2707 class DecayRange(IMP._Value):
2708  r"""Proxy of C++ IMP::bff::DecayRange class."""
2709 
2710  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2711 
2712  def get_start(self, d=None):
2713  r"""get_start(DecayRange self, DecayCurve d=None) -> size_t"""
2714  return _IMP_bff.DecayRange_get_start(self, d)
2715 
2716  def get_stop(self, d=None):
2717  r"""get_stop(DecayRange self, DecayCurve d=None) -> size_t"""
2718  return _IMP_bff.DecayRange_get_stop(self, d)
2719 
2720  def set_range(self, v):
2721  r"""set_range(DecayRange self, VectorInt v)"""
2722  return _IMP_bff.DecayRange_set_range(self, v)
2723 
2724  def get_range(self, d=None):
2725  r"""get_range(DecayRange self, DecayCurve d=None) -> VectorInt"""
2726  return _IMP_bff.DecayRange_get_range(self, d)
2727 
2728  def set(self, start=0, stop=-1):
2729  r"""set(DecayRange self, int start=0, int stop=-1)"""
2730  return _IMP_bff.DecayRange_set(self, start, stop)
2731 
2732  def __init__(self, start, stop):
2733  r"""__init__(DecayRange self, int start, int stop) -> DecayRange"""
2734  _IMP_bff.DecayRange_swiginit(self, _IMP_bff.new_DecayRange(start, stop))
2735  __swig_destroy__ = _IMP_bff.delete_DecayRange
2736 
2737  def show(self, *args, **kwargs):
2738  r"""show(DecayRange self, _ostream out=std::cout)"""
2739  return _IMP_bff.DecayRange_show(self, *args, **kwargs)
2740 
2741  def __str__(self):
2742  r"""__str__(DecayRange self) -> std::string"""
2743  return _IMP_bff.DecayRange___str__(self)
2744 
2745  def __repr__(self):
2746  r"""__repr__(DecayRange self) -> std::string"""
2747  return _IMP_bff.DecayRange___repr__(self)
2748  start = property(_IMP_bff.DecayRange_start_get, _IMP_bff.DecayRange_start_set, doc=r"""start : int""")
2749  stop = property(_IMP_bff.DecayRange_stop_get, _IMP_bff.DecayRange_stop_set, doc=r"""stop : int""")
2750 
2751 # Register DecayRange in _IMP_bff:
2752 _IMP_bff.DecayRange_swigregister(DecayRange)
2753 
2754 _object_types.append("DecayLifetimeHandler")
2755 
2756 
2757 def _object_cast_to_DecayLifetimeHandler(o):
2758  r"""_object_cast_to_DecayLifetimeHandler(Object o) -> DecayLifetimeHandler"""
2759  return _IMP_bff._object_cast_to_DecayLifetimeHandler(o)
2760 class DecayLifetimeHandler(IMP.Object):
2761  r"""Proxy of C++ IMP::bff::DecayLifetimeHandler class."""
2762 
2763  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2764 
2765  def add_lifetime(self, amplitude, lifetime):
2766  r"""add_lifetime(DecayLifetimeHandler self, double amplitude, double lifetime)"""
2767  return _IMP_bff.DecayLifetimeHandler_add_lifetime(self, amplitude, lifetime)
2768 
2769  def get_lifetime_spectrum(self):
2770  r"""get_lifetime_spectrum(DecayLifetimeHandler self)"""
2771  return _IMP_bff.DecayLifetimeHandler_get_lifetime_spectrum(self)
2772 
2773  def __init__(self, *args, **kwargs):
2774  r"""__init__(DecayLifetimeHandler self, VectorDouble lifetime_spectrum=std::vector< double >(), bool use_amplitude_threshold=False, bool abs_lifetime_spectrum=False, double amplitude_threshold=std::numeric_limits< double >::epsilon()) -> DecayLifetimeHandler"""
2775  _IMP_bff.DecayLifetimeHandler_swiginit(self, _IMP_bff.new_DecayLifetimeHandler(*args, **kwargs))
2776 
2777  def get_version_info(self):
2778  r"""get_version_info(DecayLifetimeHandler self) -> VersionInfo"""
2779  return _IMP_bff.DecayLifetimeHandler_get_version_info(self)
2780  __swig_destroy__ = _IMP_bff.delete_DecayLifetimeHandler
2781 
2782  def __str__(self):
2783  r"""__str__(DecayLifetimeHandler self) -> std::string"""
2784  return _IMP_bff.DecayLifetimeHandler___str__(self)
2785 
2786  def __repr__(self):
2787  r"""__repr__(DecayLifetimeHandler self) -> std::string"""
2788  return _IMP_bff.DecayLifetimeHandler___repr__(self)
2789 
2790  @staticmethod
2791  def get_from(o):
2792  return _object_cast_to_DecayLifetimeHandler(o)
2793 
2794  abs_lifetime_spectrum = property(_IMP_bff.DecayLifetimeHandler_abs_lifetime_spectrum_get, _IMP_bff.DecayLifetimeHandler_abs_lifetime_spectrum_set, doc=r"""abs_lifetime_spectrum : bool""")
2795  use_amplitude_threshold = property(_IMP_bff.DecayLifetimeHandler_use_amplitude_threshold_get, _IMP_bff.DecayLifetimeHandler_use_amplitude_threshold_set, doc=r"""use_amplitude_threshold : bool""")
2796  amplitude_threshold = property(_IMP_bff.DecayLifetimeHandler_amplitude_threshold_get, _IMP_bff.DecayLifetimeHandler_amplitude_threshold_set, doc=r"""amplitude_threshold : double""")
2797  lifetime_spectrum = property(_IMP_bff.DecayLifetimeHandler_lifetime_spectrum_get, _IMP_bff.DecayLifetimeHandler_lifetime_spectrum_set, doc=r"""lifetime_spectrum : std::vector<(double,std::allocator<(double)>)>""")
2798 
2799 # Register DecayLifetimeHandler in _IMP_bff:
2800 _IMP_bff.DecayLifetimeHandler_swigregister(DecayLifetimeHandler)
2801 
2802 DecayModifiers=list
2803 _plural_types.append("DecayModifiers")
2804 _value_types.append("DecayModifier")
2805 
2806 class DecayModifier(DecayRange):
2807  r"""Proxy of C++ IMP::bff::DecayModifier class."""
2808 
2809  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2810 
2811  def __init__(self, *args, **kwargs):
2812  raise AttributeError("No constructor defined - class is abstract")
2813 
2814  def set_data(self, v):
2815  r"""set_data(DecayModifier self, DecayCurve v)"""
2816  return _IMP_bff.DecayModifier_set_data(self, v)
2817 
2818  def get_data(self):
2819  r"""get_data(DecayModifier self) -> DecayCurve"""
2820  return _IMP_bff.DecayModifier_get_data(self)
2821 
2822  def set(self, data, start=0, stop=-1, active=True):
2823  r"""set(DecayModifier self, DecayCurve data, int start=0, int stop=-1, bool active=True)"""
2824  return _IMP_bff.DecayModifier_set(self, data, start, stop, active)
2825 
2826  def resize(self, n, v=0.0):
2827  r"""resize(DecayModifier self, size_t n, double v=0.0)"""
2828  return _IMP_bff.DecayModifier_resize(self, n, v)
2829 
2830  def add(self, out):
2831  r"""add(DecayModifier self, DecayCurve out)"""
2832  return _IMP_bff.DecayModifier_add(self, out)
2833  __swig_destroy__ = _IMP_bff.delete_DecayModifier
2834 
2835  def __str__(self):
2836  r"""__str__(DecayModifier self) -> std::string"""
2837  return _IMP_bff.DecayModifier___str__(self)
2838 
2839  def __repr__(self):
2840  r"""__repr__(DecayModifier self) -> std::string"""
2841  return _IMP_bff.DecayModifier___repr__(self)
2842  active = property(_IMP_bff.DecayModifier_active_get, _IMP_bff.DecayModifier_active_set, doc=r"""active : bool""")
2843 
2844  data = property(get_data, set_data)
2845 
2846 
2847  def __call__(self, *args, **kwargs):
2848  self.add(*args, **kwargs)
2849 
2850 
2851 # Register DecayModifier in _IMP_bff:
2852 _IMP_bff.DecayModifier_swigregister(DecayModifier)
2853 
2854 DecayConvolutions=list
2855 _plural_types.append("DecayConvolutions")
2856 _value_types.append("DecayConvolution")
2857 
2858 class DecayConvolution(DecayModifier):
2859  r"""Proxy of C++ IMP::bff::DecayConvolution class."""
2860 
2861  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2862  FAST_PERIODIC_TIME = _IMP_bff.DecayConvolution_FAST_PERIODIC_TIME
2863 
2864  FAST_TIME = _IMP_bff.DecayConvolution_FAST_TIME
2865 
2866  FAST_PERIODIC = _IMP_bff.DecayConvolution_FAST_PERIODIC
2867 
2868  FAST = _IMP_bff.DecayConvolution_FAST
2869 
2870  FAST_AVX = _IMP_bff.DecayConvolution_FAST_AVX
2871 
2872  FAST_PERIODIC_AVX = _IMP_bff.DecayConvolution_FAST_PERIODIC_AVX
2873 
2874 
2875  @staticmethod
2876  def compute_corrected_irf(irf, corrected_irf, irf_shift_channels, irf_background_counts):
2877  r"""compute_corrected_irf(DecayCurve irf, DecayCurve corrected_irf, double irf_shift_channels, double irf_background_counts)"""
2878  return _IMP_bff.DecayConvolution_compute_corrected_irf(irf, corrected_irf, irf_shift_channels, irf_background_counts)
2879 
2880  @staticmethod
2881  def compute_mean_lifetime(irf_histogram, decay_histogram, micro_time_resolution):
2882  r"""compute_mean_lifetime(VectorDouble irf_histogram, VectorDouble decay_histogram, double micro_time_resolution) -> double"""
2883  return _IMP_bff.DecayConvolution_compute_mean_lifetime(irf_histogram, decay_histogram, micro_time_resolution)
2884 
2885  def set_irf(self, v):
2886  r"""set_irf(DecayConvolution self, DecayCurve v)"""
2887  return _IMP_bff.DecayConvolution_set_irf(self, v)
2888 
2889  def get_irf(self):
2890  r"""get_irf(DecayConvolution self) -> DecayCurve"""
2891  return _IMP_bff.DecayConvolution_get_irf(self)
2892 
2893  def get_mean_lifetime(self, decay):
2894  r"""get_mean_lifetime(DecayConvolution self, DecayCurve decay) -> double"""
2895  return _IMP_bff.DecayConvolution_get_mean_lifetime(self, decay)
2896 
2897  def set(self, *args, **kwargs):
2898  r"""set(DecayConvolution self, int convolution_method=FAST_PERIODIC_TIME, double excitation_period=100, double irf_shift_channels=0.0, double irf_background_counts=0)"""
2899  return _IMP_bff.DecayConvolution_set(self, *args, **kwargs)
2900 
2901  def __init__(self, *args, **kwargs):
2902  r"""__init__(DecayConvolution self, DecayLifetimeHandler lifetime_handler=None, DecayCurve instrument_response_function=None, int convolution_method=FAST, double excitation_period=100, double irf_shift_channels=0.0, double irf_background_counts=0, int start=0, int stop=-1, bool active=True) -> DecayConvolution"""
2903  _IMP_bff.DecayConvolution_swiginit(self, _IMP_bff.new_DecayConvolution(*args, **kwargs))
2904  __swig_destroy__ = _IMP_bff.delete_DecayConvolution
2905 
2906  def __str__(self):
2907  r"""__str__(DecayConvolution self) -> std::string"""
2908  return _IMP_bff.DecayConvolution___str__(self)
2909 
2910  def __repr__(self):
2911  r"""__repr__(DecayConvolution self) -> std::string"""
2912  return _IMP_bff.DecayConvolution___repr__(self)
2913  corrected_irf = property(_IMP_bff.DecayConvolution_corrected_irf_get, doc=r"""corrected_irf : r.IMP::bff::DecayCurve""")
2914  convolution_method = property(_IMP_bff.DecayConvolution_convolution_method_get, _IMP_bff.DecayConvolution_convolution_method_set, doc=r"""convolution_method : int""")
2915  excitation_period = property(_IMP_bff.DecayConvolution_excitation_period_get, _IMP_bff.DecayConvolution_excitation_period_set, doc=r"""excitation_period : double""")
2916  irf_shift_channels = property(_IMP_bff.DecayConvolution_irf_shift_channels_get, _IMP_bff.DecayConvolution_irf_shift_channels_set, doc=r"""irf_shift_channels : double""")
2917  irf_background_counts = property(_IMP_bff.DecayConvolution_irf_background_counts_get, _IMP_bff.DecayConvolution_irf_background_counts_set, doc=r"""irf_background_counts : double""")
2918 
2919  irf = property(get_irf, set_irf)
2920 
2921 
2922 # Register DecayConvolution in _IMP_bff:
2923 _IMP_bff.DecayConvolution_swigregister(DecayConvolution)
2924 
2925 DecayPatterns=list
2926 _plural_types.append("DecayPatterns")
2927 _value_types.append("DecayPattern")
2928 
2929 class DecayPattern(DecayModifier):
2930  r"""Proxy of C++ IMP::bff::DecayPattern class."""
2931 
2932  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2933 
2934  def __init__(self, constant_offset=0.0, pattern=None, pattern_fraction=0.0, start=0, stop=-1, active=True):
2935  r"""__init__(DecayPattern self, double constant_offset=0.0, DecayCurve pattern=None, double pattern_fraction=0.0, int start=0, int stop=-1, bool active=True) -> DecayPattern"""
2936  _IMP_bff.DecayPattern_swiginit(self, _IMP_bff.new_DecayPattern(constant_offset, pattern, pattern_fraction, start, stop, active))
2937 
2938  def __str__(self):
2939  r"""__str__(DecayPattern self) -> std::string"""
2940  return _IMP_bff.DecayPattern___str__(self)
2941 
2942  def __repr__(self):
2943  r"""__repr__(DecayPattern self) -> std::string"""
2944  return _IMP_bff.DecayPattern___repr__(self)
2945  pattern = property(_IMP_bff.DecayPattern_pattern_get, _IMP_bff.DecayPattern_pattern_set, doc=r"""pattern : p.IMP::bff::DecayCurve""")
2946  pattern_fraction = property(_IMP_bff.DecayPattern_pattern_fraction_get, _IMP_bff.DecayPattern_pattern_fraction_set, doc=r"""pattern_fraction : double""")
2947  constant_offset = property(_IMP_bff.DecayPattern_constant_offset_get, _IMP_bff.DecayPattern_constant_offset_set, doc=r"""constant_offset : double""")
2948  __swig_destroy__ = _IMP_bff.delete_DecayPattern
2949 
2950 # Register DecayPattern in _IMP_bff:
2951 _IMP_bff.DecayPattern_swigregister(DecayPattern)
2952 
2953 DecayPileups=list
2954 _plural_types.append("DecayPileups")
2955 _value_types.append("DecayPileup")
2956 
2957 class DecayPileup(DecayModifier):
2958  r"""Proxy of C++ IMP::bff::DecayPileup class."""
2959 
2960  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2961 
2962  def __init__(self, *args, **kwargs):
2963  r"""__init__(DecayPileup self, DecayCurve data, char const * pile_up_model="coates", double repetition_rate=100, double instrument_dead_time=120, int start=0, int stop=-1, bool active=True) -> DecayPileup"""
2964  _IMP_bff.DecayPileup_swiginit(self, _IMP_bff.new_DecayPileup(*args, **kwargs))
2965 
2966  def __str__(self):
2967  r"""__str__(DecayPileup self) -> std::string"""
2968  return _IMP_bff.DecayPileup___str__(self)
2969 
2970  def __repr__(self):
2971  r"""__repr__(DecayPileup self) -> std::string"""
2972  return _IMP_bff.DecayPileup___repr__(self)
2973  instrument_dead_time = property(_IMP_bff.DecayPileup_instrument_dead_time_get, _IMP_bff.DecayPileup_instrument_dead_time_set, doc=r"""instrument_dead_time : double""")
2974  repetition_rate = property(_IMP_bff.DecayPileup_repetition_rate_get, _IMP_bff.DecayPileup_repetition_rate_set, doc=r"""repetition_rate : double""")
2975  pile_up_model = property(_IMP_bff.DecayPileup_pile_up_model_get, _IMP_bff.DecayPileup_pile_up_model_set, doc=r"""pile_up_model : std::string""")
2976  __swig_destroy__ = _IMP_bff.delete_DecayPileup
2977 
2978 # Register DecayPileup in _IMP_bff:
2979 _IMP_bff.DecayPileup_swigregister(DecayPileup)
2980 
2981 DecayLinearizations=list
2982 _plural_types.append("DecayLinearizations")
2983 _value_types.append("DecayLinearization")
2984 
2985 class DecayLinearization(DecayModifier):
2986  r"""Proxy of C++ IMP::bff::DecayLinearization class."""
2987 
2988  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
2989 
2990  def set_linearization_table(self, v):
2991  r"""set_linearization_table(DecayLinearization self, DecayCurve v)"""
2992  return _IMP_bff.DecayLinearization_set_linearization_table(self, v)
2993 
2994  def get_linearization_table(self):
2995  r"""get_linearization_table(DecayLinearization self) -> DecayCurve"""
2996  return _IMP_bff.DecayLinearization_get_linearization_table(self)
2997 
2998  def __init__(self, linearization_table, start, stop, active=True, n_window=5):
2999  r"""__init__(DecayLinearization self, DecayCurve linearization_table, int start, int stop, bool active=True, int n_window=5) -> DecayLinearization"""
3000  _IMP_bff.DecayLinearization_swiginit(self, _IMP_bff.new_DecayLinearization(linearization_table, start, stop, active, n_window))
3001 
3002  def __str__(self):
3003  r"""__str__(DecayLinearization self) -> std::string"""
3004  return _IMP_bff.DecayLinearization___str__(self)
3005 
3006  def __repr__(self):
3007  r"""__repr__(DecayLinearization self) -> std::string"""
3008  return _IMP_bff.DecayLinearization___repr__(self)
3009  __swig_destroy__ = _IMP_bff.delete_DecayLinearization
3010 
3011 # Register DecayLinearization in _IMP_bff:
3012 _IMP_bff.DecayLinearization_swigregister(DecayLinearization)
3013 
3014 DecayScales=list
3015 _plural_types.append("DecayScales")
3016 _value_types.append("DecayScale")
3017 
3018 class DecayScale(DecayModifier):
3019  r"""Proxy of C++ IMP::bff::DecayScale class."""
3020 
3021  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3022 
3023  def set_blank_outside(self, v):
3024  r"""set_blank_outside(DecayScale self, double v)"""
3025  return _IMP_bff.DecayScale_set_blank_outside(self, v)
3026 
3027  def get_blank_outside(self):
3028  r"""get_blank_outside(DecayScale self) -> bool"""
3029  return _IMP_bff.DecayScale_get_blank_outside(self)
3030 
3031  def set(self, data=None, constant_background=0.0, start=0, stop=-1, active=True, blank_outside=True):
3032  r"""set(DecayScale self, DecayCurve data=None, double constant_background=0.0, int start=0, int stop=-1, bool active=True, bool blank_outside=True)"""
3033  return _IMP_bff.DecayScale_set(self, data, constant_background, start, stop, active, blank_outside)
3034 
3035  def __init__(self, data=None, constant_background=0.0, start=0, stop=-1, active=True, blank_outside=True):
3036  r"""__init__(DecayScale self, DecayCurve data=None, double constant_background=0.0, int start=0, int stop=-1, bool active=True, bool blank_outside=True) -> DecayScale"""
3037  _IMP_bff.DecayScale_swiginit(self, _IMP_bff.new_DecayScale(data, constant_background, start, stop, active, blank_outside))
3038 
3039  def __str__(self):
3040  r"""__str__(DecayScale self) -> std::string"""
3041  return _IMP_bff.DecayScale___str__(self)
3042 
3043  def __repr__(self):
3044  r"""__repr__(DecayScale self) -> std::string"""
3045  return _IMP_bff.DecayScale___repr__(self)
3046  number_of_photons = property(_IMP_bff.DecayScale_number_of_photons_get, doc=r"""number_of_photons : double""")
3047  constant_background = property(_IMP_bff.DecayScale_constant_background_get, _IMP_bff.DecayScale_constant_background_set, doc=r"""constant_background : double""")
3048  __swig_destroy__ = _IMP_bff.delete_DecayScale
3049 
3050 # Register DecayScale in _IMP_bff:
3051 _IMP_bff.DecayScale_swigregister(DecayScale)
3052 
3053 DecayScores=list
3054 _plural_types.append("DecayScores")
3055 _value_types.append("DecayScore")
3056 
3057 class DecayScore(DecayRange):
3058  r"""Proxy of C++ IMP::bff::DecayScore class."""
3059 
3060  thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
3061 
3062  def get_model(self):
3063  r"""get_model(DecayScore self) -> DecayCurve"""
3064  return _IMP_bff.DecayScore_get_model(self)
3065 
3066  def set_model(self, v):
3067  r"""set_model(DecayScore self, DecayCurve v)"""
3068  return _IMP_bff.DecayScore_set_model(self, v)
3069 
3070  def get_data(self):
3071  r"""get_data(DecayScore self) -> DecayCurve"""
3072  return _IMP_bff.DecayScore_get_data(self)
3073 
3074  def set_data(self, v):
3075  r"""set_data(DecayScore self, DecayCurve v)"""
3076  return _IMP_bff.DecayScore_set_data(self, v)
3077 
3078  def get_weighted_residuals(self):
3079  r"""get_weighted_residuals(DecayScore self) -> VectorDouble"""
3080  return _IMP_bff.DecayScore_get_weighted_residuals(self)
3081 
3082  def get_score(self, start=0, stop=-1, score_type=None):
3083  r"""get_score(DecayScore self, int start=0, int stop=-1, char const * score_type=None) -> double"""
3084  return _IMP_bff.DecayScore_get_score(self, start, stop, score_type)
3085 
3086  def set(self, *args, **kwargs):
3087  r"""set(DecayScore self, DecayCurve model, DecayCurve data, std::string score_type="poisson", int start=0, int stop=-1)"""
3088  return _IMP_bff.DecayScore_set(self, *args, **kwargs)
3089 
3090  def __init__(self, *args, **kwargs):
3091  r"""__init__(DecayScore self, DecayCurve model=None, DecayCurve data=None, std::string score_type="poisson", int start=0, int stop=-1) -> DecayScore"""
3092  _IMP_bff.DecayScore_swiginit(self, _IMP_bff.new_DecayScore(*args, **kwargs))
3093  __swig_destroy__ = _IMP_bff.delete_DecayScore
3094 
3095  def __str__(self):
3096  r"""__str__(DecayScore self) -> std::string"""
3097  return _IMP_bff.DecayScore___str__(self)
3098 
3099  def __repr__(self):
3100  r"""__repr__(DecayScore self) -> std::string"""
3101  return _IMP_bff.DecayScore___repr__(self)
3102  score_type = property(_IMP_bff.DecayScore_score_type_get, _IMP_bff.DecayScore_score_type_set, doc=r"""score_type : std::string""")
3103  score = property(_IMP_bff.DecayScore_score_get, doc=r"""score : double""")
3104 
3105  model = property(get_model, set_model)
3106 
3107 
3108  data = property(get_data, set_data)
3109 
3110 
3111  weighted_residuals = property(
3112  lambda x: np.array(x.get_weighted_residuals())
3113  )
3114 
3115 
3116 # Register DecayScore in _IMP_bff:
3117 _IMP_bff.DecayScore_swigregister(DecayScore)
3118 
3119 def get_module_name():
3120  r"""get_module_name() -> std::string const"""
3121  return _IMP_bff.get_module_name()
3122 
3123 def get_module_version():
3124  r"""get_module_version() -> std::string const"""
3125  return _IMP_bff.get_module_version()
3126 
3127 def get_example_path(fname):
3128  r"""get_example_path(std::string fname) -> std::string"""
3129  return _IMP_bff.get_example_path(fname)
3130 
3131 def get_data_path(fname):
3132  r"""get_data_path(std::string fname) -> std::string"""
3133  return _IMP_bff.get_data_path(fname)
3134 
3135 from . import _version_check
3136 _version_check.check_version(get_module_version())
3137 __version__ = get_module_version()
3138 
3139 
void decay_fconv_per_cs(double *fit, double *x, double *lamp, int numexp, int stop, int n_points, double period, int conv_stop, double dt)
Convolve lifetime spectrum - fast convolution, high repetition rate, with convolution stop...
void decay_fconv_avx(double *fit, double *x, double *lamp, int numexp, int start, int stop, double dt=0.05)
Convolve lifetime spectrum with instrument response (fast convolution, AVX optimized for large lifeti...
CheckLevel get_check_level()
Get the current audit mode.
Definition: exception.h:80
void decay_rescale_w_bg(double *fit, double *decay, double *e_sq, double bg, double *scale, int start, int stop)
Scale model function to the data (with weights and background)
Various classes to hold sets of particles.
void decay_fconv_cs_time_axis(double *inplace_output, int n_output, double *time_axis, int n_time_axis, double *irf, int n_irf, double *lifetime_spectrum, int n_lifetime_spectrum, int convolution_start=0, int convolution_stop=-1)
Make CGAL functionality available to IMP.
void decay_rescale_w(double *fit, double *decay, double *w_sq, double *scale, int start, int stop)
Scale model function to the data (with weights).
void decay_add_pile_up_to_model(double *model, int n_model, double *data, int n_data, double repetition_rate, double instrument_dead_time, double measurement_time, std::string pile_up_model="coates", int start=0, int stop=-1)
Add a pile-up distortion to the model function.
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
Composable functors to implement scores via compile-time composition.
double av_distance(const AV &a, const AV &b, double forster_radius=52.0, int distance_type=DYE_PAIR_DISTANCE_MEAN, int n_samples=10000)
Computes the distance to another accessible volume.
void decay_rescale(double *fit, double *decay, double *scale, int start, int stop)
Scale model function to the data (old version).
void decay_fconv(double *fit, double *x, double *lamp, int numexp, int start, int stop, double dt=0.05)
Convolve lifetime spectrum with instrument response (fast convolution, low repetition rate) ...
void decay_fconv_per(double *fit, double *x, double *lamp, int numexp, int start, int stop, int n_points, double period, double dt=0.05)
Convolve lifetime spectrum with instrument response (fast convolution, high repetition rate) ...
void decay_shift_lamp(double *lampsh, double *lamp, double ts, int n_points, double out_value=0.0)
shift instrument response function
Code to compute statistical measures.
std::vector< double > av_distance_distribution(const AV &av1, const AV &av2, std::vector< double > axis, int n_samples=10000)
Compute the distance to another accessible volume.
Class for sampling a density map from particles.
Common base class for heavy weight IMP objects.
Definition: Object.h:111
void decay_sconv(double *fit, double *p, double *lamp, int start, int stop)
Convolve fluorescence decay curve with irf.
Basic utilities for handling cryo-electron microscopy 3D density maps.
void decay_fconv_per_cs_time_axis(double *model, int n_model, double *time_axis, int n_time_axis, double *irf, int n_irf, double *lifetime_spectrum, int n_lifetime_spectrum, int convolution_start=0, int convolution_stop=-1, double period=100.0)
void decay_fconv_ref(double *fit, double *x, double *lamp, int numexp, int start, int stop, double tauref, double dt=0.05)
Convolve lifetime spectrum - fast convolution with reference compound decay.
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
void write_path_map(PathMap *m, std::string filename, int value_type, const std::pair< float, float > bounds=std::pair< float, float >(std::numeric_limits< float >::min(), std::numeric_limits< float >::max()), const std::string &feature_name="")
Writes a path map to a file.
Basic functionality that is expected to be used by a wide variety of IMP users.
General purpose algebraic and geometric methods that are expected to be used by a wide variety of IMP...
void decay_fconv_per_avx(double *fit, double *x, double *lamp, int numexp, int start, int stop, int n_points, double period, double dt=0.05)
Convolve lifetime spectrum with instrument response (fast convolution, high repetition rate)...
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
void discriminate_small_amplitudes(double *lifetime_spectrum, int n_lifetime_spectrum, double amplitude_threshold)
std::vector< double > av_random_distances(const AV &av1, const AV &av2, int n_samples=10000)
Random sampling over AV/AV distances.
IMP::ParticleIndex search_labeling_site(const IMP::core::Hierarchy &hier, std::string json_str="", const nlohmann::json &json_data=nlohmann::json())
Find the particle index of a labeling site.
Output IMP model data in various file formats.
Functionality for loading, creating, manipulating and scoring atomic structures.
ParticleIndexes get_indexes(const ParticlesTemp &ps)
Get the indexes from a list of particles.
void set_check_level(CheckLevel tf)
Control runtime checks in the code.
Definition: exception.h:72
std::string get_module_version()
Return the version of this module, as a string.
A restraint is a term in an IMP ScoringFunction.
Definition: Restraint.h:56
int mod_p(int a, int n)
Compute the modulo of a number with respect to a positive integer.
Definition: DecayRoutines.h:48