10 from __future__
import print_function, division, absolute_import
15 from sys
import version_info
16 if version_info >= (2, 6, 0):
17 def swig_import_helper():
18 from os.path
import dirname
22 fp, pathname, description = imp.find_module(
'_IMP_benchmark', [dirname(__file__)])
28 _mod = imp.load_module(
'_IMP_benchmark', fp, pathname, description)
32 _IMP_benchmark = swig_import_helper()
33 del swig_import_helper
38 _swig_property = property
43 def _swig_setattr_nondynamic(self, class_type, name, value, static=1):
44 if (name ==
"thisown"):
45 return self.this.own(value)
47 if type(value).__name__ ==
'SwigPyObject':
48 self.__dict__[name] = value
50 method = class_type.__swig_setmethods__.get(name,
None)
52 return method(self, value)
54 object.__setattr__(self, name, value)
56 raise AttributeError(
"You cannot add attributes to %s" % self)
59 def _swig_setattr(self, class_type, name, value):
60 return _swig_setattr_nondynamic(self, class_type, name, value, 0)
63 def _swig_getattr_nondynamic(self, class_type, name, static=1):
64 if (name ==
"thisown"):
65 return self.this.own()
66 method = class_type.__swig_getmethods__.get(name,
None)
70 return object.__getattr__(self, name)
72 raise AttributeError(name)
74 def _swig_getattr(self, class_type, name):
75 return _swig_getattr_nondynamic(self, class_type, name, 0)
80 strthis =
"proxy of " + self.this.__repr__()
83 return "<%s.%s; %s >" % (self.__class__.__module__, self.__class__.__name__, strthis,)
88 except AttributeError:
95 def _swig_setattr_nondynamic_method(set):
96 def set_attr(self, name, value):
97 if (name ==
"thisown"):
98 return self.this.own(value)
99 if hasattr(self, name)
or (name ==
"this"):
100 set(self, name, value)
102 raise AttributeError(
"You cannot add attributes to %s" % self)
108 weakref_proxy = weakref.proxy
110 weakref_proxy =
lambda x: x
113 class IMP_BENCHMARK_SwigPyIterator(object):
114 """Proxy of C++ swig::IMP_BENCHMARK_SwigPyIterator class"""
115 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
117 def __init__(self, *args, **kwargs):
118 raise AttributeError(
"No constructor defined - class is abstract")
119 __repr__ = _swig_repr
120 __swig_destroy__ = _IMP_benchmark.delete_IMP_BENCHMARK_SwigPyIterator
121 __del__ =
lambda self:
None
124 """value(IMP_BENCHMARK_SwigPyIterator self) -> PyObject *"""
125 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_value(self)
130 incr(IMP_BENCHMARK_SwigPyIterator self, size_t n=1) -> IMP_BENCHMARK_SwigPyIterator
131 incr(IMP_BENCHMARK_SwigPyIterator self) -> IMP_BENCHMARK_SwigPyIterator
133 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_incr(self, n)
138 decr(IMP_BENCHMARK_SwigPyIterator self, size_t n=1) -> IMP_BENCHMARK_SwigPyIterator
139 decr(IMP_BENCHMARK_SwigPyIterator self) -> IMP_BENCHMARK_SwigPyIterator
141 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_decr(self, n)
144 def distance(self, x):
145 """distance(IMP_BENCHMARK_SwigPyIterator self, IMP_BENCHMARK_SwigPyIterator x) -> ptrdiff_t"""
146 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_distance(self, x)
150 """equal(IMP_BENCHMARK_SwigPyIterator self, IMP_BENCHMARK_SwigPyIterator x) -> bool"""
151 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_equal(self, x)
155 """copy(IMP_BENCHMARK_SwigPyIterator self) -> IMP_BENCHMARK_SwigPyIterator"""
156 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_copy(self)
160 """next(IMP_BENCHMARK_SwigPyIterator self) -> PyObject *"""
161 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_next(self)
165 """__next__(IMP_BENCHMARK_SwigPyIterator self) -> PyObject *"""
166 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___next__(self)
170 """previous(IMP_BENCHMARK_SwigPyIterator self) -> PyObject *"""
171 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_previous(self)
174 def advance(self, n):
175 """advance(IMP_BENCHMARK_SwigPyIterator self, ptrdiff_t n) -> IMP_BENCHMARK_SwigPyIterator"""
176 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_advance(self, n)
180 """__eq__(IMP_BENCHMARK_SwigPyIterator self, IMP_BENCHMARK_SwigPyIterator x) -> bool"""
181 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___eq__(self, x)
185 """__ne__(IMP_BENCHMARK_SwigPyIterator self, IMP_BENCHMARK_SwigPyIterator x) -> bool"""
186 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___ne__(self, x)
189 def __iadd__(self, n):
190 """__iadd__(IMP_BENCHMARK_SwigPyIterator self, ptrdiff_t n) -> IMP_BENCHMARK_SwigPyIterator"""
191 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___iadd__(self, n)
194 def __isub__(self, n):
195 """__isub__(IMP_BENCHMARK_SwigPyIterator self, ptrdiff_t n) -> IMP_BENCHMARK_SwigPyIterator"""
196 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___isub__(self, n)
199 def __add__(self, n):
200 """__add__(IMP_BENCHMARK_SwigPyIterator self, ptrdiff_t n) -> IMP_BENCHMARK_SwigPyIterator"""
201 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___add__(self, n)
204 def __sub__(self, *args):
206 __sub__(IMP_BENCHMARK_SwigPyIterator self, ptrdiff_t n) -> IMP_BENCHMARK_SwigPyIterator
207 __sub__(IMP_BENCHMARK_SwigPyIterator self, IMP_BENCHMARK_SwigPyIterator x) -> ptrdiff_t
209 return _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator___sub__(self, *args)
213 IMP_BENCHMARK_SwigPyIterator_swigregister = _IMP_benchmark.IMP_BENCHMARK_SwigPyIterator_swigregister
214 IMP_BENCHMARK_SwigPyIterator_swigregister(IMP_BENCHMARK_SwigPyIterator)
223 _IMP_benchmark.IMP_DEBUG_swigconstant(_IMP_benchmark)
224 IMP_DEBUG = _IMP_benchmark.IMP_DEBUG
226 _IMP_benchmark.IMP_RELEASE_swigconstant(_IMP_benchmark)
227 IMP_RELEASE = _IMP_benchmark.IMP_RELEASE
229 _IMP_benchmark.IMP_SILENT_swigconstant(_IMP_benchmark)
230 IMP_SILENT = _IMP_benchmark.IMP_SILENT
232 _IMP_benchmark.IMP_PROGRESS_swigconstant(_IMP_benchmark)
233 IMP_PROGRESS = _IMP_benchmark.IMP_PROGRESS
235 _IMP_benchmark.IMP_TERSE_swigconstant(_IMP_benchmark)
236 IMP_TERSE = _IMP_benchmark.IMP_TERSE
238 _IMP_benchmark.IMP_VERBOSE_swigconstant(_IMP_benchmark)
239 IMP_VERBOSE = _IMP_benchmark.IMP_VERBOSE
241 _IMP_benchmark.IMP_MEMORY_swigconstant(_IMP_benchmark)
242 IMP_MEMORY = _IMP_benchmark.IMP_MEMORY
244 _IMP_benchmark.IMP_NONE_swigconstant(_IMP_benchmark)
245 IMP_NONE = _IMP_benchmark.IMP_NONE
247 _IMP_benchmark.IMP_USAGE_swigconstant(_IMP_benchmark)
248 IMP_USAGE = _IMP_benchmark.IMP_USAGE
250 _IMP_benchmark.IMP_INTERNAL_swigconstant(_IMP_benchmark)
251 IMP_INTERNAL = _IMP_benchmark.IMP_INTERNAL
253 _IMP_benchmark.IMP_KERNEL_HAS_LOG4CXX_swigconstant(_IMP_benchmark)
254 IMP_KERNEL_HAS_LOG4CXX = _IMP_benchmark.IMP_KERNEL_HAS_LOG4CXX
256 _IMP_benchmark.IMP_COMPILER_HAS_AUTO_swigconstant(_IMP_benchmark)
257 IMP_COMPILER_HAS_AUTO = _IMP_benchmark.IMP_COMPILER_HAS_AUTO
259 _IMP_benchmark.IMP_COMPILER_HAS_DEBUG_VECTOR_swigconstant(_IMP_benchmark)
260 IMP_COMPILER_HAS_DEBUG_VECTOR = _IMP_benchmark.IMP_COMPILER_HAS_DEBUG_VECTOR
262 _IMP_benchmark.IMP_COMPILER_HAS_UNIQUE_PTR_swigconstant(_IMP_benchmark)
263 IMP_COMPILER_HAS_UNIQUE_PTR = _IMP_benchmark.IMP_COMPILER_HAS_UNIQUE_PTR
265 _IMP_benchmark.IMP_KERNEL_HAS_BOOST_RANDOM_swigconstant(_IMP_benchmark)
266 IMP_KERNEL_HAS_BOOST_RANDOM = _IMP_benchmark.IMP_KERNEL_HAS_BOOST_RANDOM
268 _IMP_benchmark.IMP_KERNEL_HAS_NUMPY_swigconstant(_IMP_benchmark)
269 IMP_KERNEL_HAS_NUMPY = _IMP_benchmark.IMP_KERNEL_HAS_NUMPY
271 _IMP_benchmark.IMP_KERNEL_HAS_GPERFTOOLS_swigconstant(_IMP_benchmark)
272 IMP_KERNEL_HAS_GPERFTOOLS = _IMP_benchmark.IMP_KERNEL_HAS_GPERFTOOLS
274 _IMP_benchmark.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER_swigconstant(_IMP_benchmark)
275 IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER = _IMP_benchmark.IMP_KERNEL_HAS_TCMALLOC_HEAPCHECKER
277 _IMP_benchmark.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER_swigconstant(_IMP_benchmark)
278 IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER = _IMP_benchmark.IMP_KERNEL_HAS_TCMALLOC_HEAPPROFILER
280 _IMP_benchmark.IMPKERNEL_SHOW_WARNINGS_swigconstant(_IMP_benchmark)
281 IMPKERNEL_SHOW_WARNINGS = _IMP_benchmark.IMPKERNEL_SHOW_WARNINGS
284 class _DirectorObjects(object):
285 """@internal Simple class to keep references to director objects
286 to prevent premature deletion."""
289 def register(self, obj):
290 """Take a reference to a director object; will only work for
291 refcounted C++ classes"""
292 if hasattr(obj,
'get_ref_count'):
293 self._objects.append(obj)
295 """Only drop our reference and allow cleanup by Python if no other
296 Python references exist (we hold 3 references: one in self._objects,
297 one in x, and one in the argument list for getrefcount) *and* no
298 other C++ references exist (the Python object always holds one)"""
299 objs = [x
for x
in self._objects
if sys.getrefcount(x) > 3 \
300 or x.get_ref_count() > 1]
304 def get_object_count(self):
305 """Get number of director objects (useful for testing only)"""
306 return len(self._objects)
307 _director_objects = _DirectorObjects()
309 class _ostream(object):
310 """Proxy of C++ std::ostream class"""
311 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
313 def __init__(self, *args, **kwargs):
314 raise AttributeError(
"No constructor defined")
315 __repr__ = _swig_repr
317 def write(self, osa_buf):
318 """write(_ostream self, char const * osa_buf)"""
319 return _IMP_benchmark._ostream_write(self, osa_buf)
321 _ostream_swigregister = _IMP_benchmark._ostream_swigregister
322 _ostream_swigregister(_ostream)
325 _IMP_benchmark.IMP_COMPILER_HAS_OVERRIDE_swigconstant(_IMP_benchmark)
326 IMP_COMPILER_HAS_OVERRIDE = _IMP_benchmark.IMP_COMPILER_HAS_OVERRIDE
328 _IMP_benchmark.IMP_COMPILER_HAS_FINAL_swigconstant(_IMP_benchmark)
329 IMP_COMPILER_HAS_FINAL = _IMP_benchmark.IMP_COMPILER_HAS_FINAL
331 _IMP_benchmark.IMP_HAS_NOEXCEPT_swigconstant(_IMP_benchmark)
332 IMP_HAS_NOEXCEPT = _IMP_benchmark.IMP_HAS_NOEXCEPT
334 _IMP_benchmark.IMP_C_OPEN_BINARY_swigconstant(_IMP_benchmark)
335 IMP_C_OPEN_BINARY = _IMP_benchmark.IMP_C_OPEN_BINARY
338 _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_FILESYSTEM_swigconstant(_IMP_benchmark)
339 IMP_BENCHMARK_HAS_BOOST_FILESYSTEM = _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_FILESYSTEM
341 _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_PROGRAMOPTIONS_swigconstant(_IMP_benchmark)
342 IMP_BENCHMARK_HAS_BOOST_PROGRAMOPTIONS = _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_PROGRAMOPTIONS
344 _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_RANDOM_swigconstant(_IMP_benchmark)
345 IMP_BENCHMARK_HAS_BOOST_RANDOM = _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_RANDOM
347 _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_SYSTEM_swigconstant(_IMP_benchmark)
348 IMP_BENCHMARK_HAS_BOOST_SYSTEM = _IMP_benchmark.IMP_BENCHMARK_HAS_BOOST_SYSTEM
350 _IMP_benchmark.IMP_BENCHMARK_HAS_NUMPY_swigconstant(_IMP_benchmark)
351 IMP_BENCHMARK_HAS_NUMPY = _IMP_benchmark.IMP_BENCHMARK_HAS_NUMPY
353 _IMP_benchmark.IMPBENCHMARK_SHOW_WARNINGS_swigconstant(_IMP_benchmark)
354 IMPBENCHMARK_SHOW_WARNINGS = _IMP_benchmark.IMPBENCHMARK_SHOW_WARNINGS
356 _raii_types.append(
"Profiler")
361 report(std::string benchmark, std::string algorithm, double time, double check)
362 report(std::string benchmark, double time, double check)
364 return _IMP_benchmark.report(*args)
366 def get_return_value():
367 """get_return_value() -> int"""
368 return _IMP_benchmark.get_return_value()
369 class Profiler(IMP._RAII):
370 """Proxy of C++ IMP::benchmark::Profiler class"""
371 thisown = _swig_property(
lambda x: x.this.own(),
lambda x, v: x.this.own(v), doc=
'The membership flag')
373 def __init__(self, *args):
375 __init__(IMP::benchmark::Profiler self) -> Profiler
376 __init__(IMP::benchmark::Profiler self, std::string name) -> Profiler
378 this = _IMP_benchmark.new_Profiler(*args)
380 self.this.append(this)
385 """set(Profiler self, std::string name)"""
386 return _IMP_benchmark.Profiler_set(self, name)
390 """reset(Profiler self)"""
391 return _IMP_benchmark.Profiler_reset(self)
393 __swig_destroy__ = _IMP_benchmark.delete_Profiler
394 __del__ =
lambda self:
None
396 def show(self, *args):
398 show(Profiler self, _ostream out)
401 return _IMP_benchmark.Profiler_show(self, *args)
406 def __exit__(self, exc_type, exc_val, exc_tb):
412 """__str__(Profiler self) -> std::string"""
413 return _IMP_benchmark.Profiler___str__(self)
417 """__repr__(Profiler self) -> std::string"""
418 return _IMP_benchmark.Profiler___repr__(self)
420 Profiler_swigregister = _IMP_benchmark.Profiler_swigregister
421 Profiler_swigregister(Profiler)
425 """get_module_version() -> std::string const"""
426 return _IMP_benchmark.get_module_version()
429 """get_example_path(std::string fname) -> std::string"""
430 return _IMP_benchmark.get_example_path(fname)
433 """get_data_path(std::string fname) -> std::string"""
434 return _IMP_benchmark.get_data_path(fname)
436 from .
import _version_check
void report(std::string benchmark, std::string algorithm, double time, double check)
Report a benchmark result in a standard way.
std::string get_data_path(std::string file_name)
Return the full path to one of this module's data files.
std::ostream & show(Hierarchy h, std::ostream &out=std::cout)
Print the hierarchy using a given decorator to display each node.
std::string get_example_path(std::string file_name)
Return the full path to one of this module's example files.
std::string get_module_version()
Return the version of this module, as a string.