/home/laradmin/lar/perception/planarobstacles/mtt/include/mtt/mht.h File Reference

Mht implementation main header. More...

#include <ros/ros.h>
#include <features.h>
#include <stddef.h>
#include <string>
#include <iostream>
#include <cmath>
#include <stdexcept>
#include "duration.h"
#include <boost/config.hpp>
#include <boost/limits.hpp>
#include <limits.h>
#include <boost/detail/workaround.hpp>
#include <algorithm>
#include <climits>
#include <iomanip>
#include <cerrno>
#include <boost/config/no_tr1/cmath.hpp>
#include <boost/math/tools/config.hpp>
#include <boost/mpl/aux_/na.hpp>
#include <boost/mpl/aux_/config/preprocessor.hpp>
#include <boost/preprocessor/inc.hpp>
#include <boost/preprocessor/cat.hpp>
#include <boost/preprocessor/config/config.hpp>
#include <boost/mpl/aux_/config/dtp.hpp>
#include <boost/mpl/aux_/config/ttp.hpp>
#include <boost/mpl/aux_/config/ctps.hpp>
#include <boost/mpl/aux_/config/msvc.hpp>
#include <boost/mpl/aux_/config/gcc.hpp>
#include <boost/mpl/aux_/config/workaround.hpp>
#include <boost/preprocessor/stringize.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/mpl/aux_/yes_no.hpp>
#include <boost/mpl/aux_/config/overload_resolution.hpp>
#include <boost/mpl/aux_/config/static_constant.hpp>
#include <boost/mpl/has_xxx.hpp>
#include <boost/mpl/aux_/na_spec.hpp>
#include <boost/mpl/aux_/config/eti.hpp>
#include <boost/mpl/contains_fwd.hpp>
#include <boost/mpl/begin_end_fwd.hpp>
#include <boost/mpl/sequence_tag_fwd.hpp>
#include <boost/mpl/void_fwd.hpp>
#include <boost/mpl/if.hpp>
#include <boost/mpl/aux_/lambda_support.hpp>
#include <boost/mpl/aux_/has_begin.hpp>
#include <boost/mpl/void.hpp>
#include <boost/mpl/aux_/preprocessor/params.hpp>
#include <boost/mpl/aux_/config/lambda.hpp>
#include <boost/mpl/sequence_tag.hpp>
#include <boost/mpl/aux_/config/use_preprocessed.hpp>
#include <boost/mpl/aux_/include_preprocessed.hpp>
#include <boost/mpl/aux_/arity.hpp>
#include <boost/mpl/aux_/config/has_xxx.hpp>
#include <boost/mpl/aux_/adl_barrier.hpp>
#include <boost/mpl/aux_/nttp_decl.hpp>
#include <boost/mpl/aux_/value_wknd.hpp>
#include <boost/mpl/aux_/nested_type_wknd.hpp>
#include <boost/mpl/aux_/config/nttp.hpp>
#include <cstddef>
#include <boost/mpl/int.hpp>
#include <boost/mpl/limits/arity.hpp>
#include <boost/mpl/aux_/template_arity_fwd.hpp>
#include <boost/mpl/lambda_fwd.hpp>
#include <boost/mpl/placeholders.hpp>
#include <boost/mpl/apply_wrap.hpp>
#include <boost/mpl/aux_/arity_spec.hpp>
#include <boost/mpl/aux_/type_wrapper.hpp>
#include <boost/mpl/aux_/config/bind.hpp>
#include <boost/mpl/bind_fwd.hpp>
#include <boost/mpl/protect.hpp>
#include <boost/mpl/arg.hpp>
#include <boost/mpl/int_fwd.hpp>
#include <boost/mpl/aux_/lambda_arity_param.hpp>
#include <boost/mpl/aux_/is_msvc_eti_arg.hpp>
#include <boost/mpl/not.hpp>
#include <boost/mpl/begin_end.hpp>
#include <boost/mpl/aux_/preprocessor/def_params_tail.hpp>
#include <boost/mpl/eval_if.hpp>
#include <boost/mpl/apply.hpp>
#include <boost/mpl/next.hpp>
#include <boost/type_traits/is_same.hpp>
#include <boost/mpl/aux_/common_name_wknd.hpp>
#include <boost/mpl/aux_/config/forwarding.hpp>
#include <boost/mpl/aux_/traits_lambda_spec.hpp>
#include <boost/mpl/find_if.hpp>
#include <boost/mpl/O1_size_fwd.hpp>
#include <boost/mpl/aux_/integral_wrapper.hpp>
#include <boost/mpl/next_prior.hpp>
#include <boost/mpl/deref.hpp>
#include <boost/mpl/O1_size.hpp>
#include <boost/mpl/identity.hpp>
#include <boost/mpl/lambda.hpp>
#include <boost/mpl/push_back_fwd.hpp>
#include <boost/mpl/assert.hpp>
#include <boost/mpl/aux_/has_type.hpp>
#include <boost/mpl/push_front_fwd.hpp>
#include <boost/mpl/inserter.hpp>
#include <boost/mpl/push_back.hpp>
#include <boost/mpl/push_front.hpp>
#include <boost/mpl/back_inserter.hpp>
#include <boost/mpl/front_inserter.hpp>
#include <boost/mpl/clear_fwd.hpp>
#include <boost/mpl/aux_/has_tag.hpp>
#include <boost/mpl/numeric_cast.hpp>
#include <boost/mpl/aux_/msvc_eti_base.hpp>
#include <boost/mpl/integral_c.hpp>
#include <boost/mpl/aux_/config/integral.hpp>
#include <boost/mpl/long.hpp>
#include <boost/mpl/tag.hpp>
#include <boost/mpl/size_fwd.hpp>
#include <boost/mpl/aux_/comparison_op.hpp>
#include <boost/mpl/less.hpp>
#include <boost/static_assert.hpp>
#include <boost/assert.hpp>
#include <limits>
#include <stdlib.h>
#include <boost/math/policies/policy.hpp>
#include <math.h>
#include <boost/cstdint.hpp>
#include <vector>
#include <locale>
#include <streambuf>
#include <ostream>
#include <iosfwd>
#include <boost/format/detail/compat_workarounds.hpp>
#include <boost/format/format_fwd.hpp>
#include <new>
#include <boost/type_traits/intrinsics.hpp>
#include <boost/type_traits/detail/template_arity_spec.hpp>
#include <boost/type_traits/integral_constant.hpp>
#include <boost/preprocessor/list/for_each_i.hpp>
#include <boost/preprocessor/tuple/to_list.hpp>
#include <boost/preprocessor/debug/error.hpp>
#include <boost/preprocessor/detail/auto_rec.hpp>
#include <boost/preprocessor/control/while.hpp>
#include <boost/preprocessor/control/expr_iif.hpp>
#include <boost/preprocessor/control/iif.hpp>
#include <boost/preprocessor/list/adt.hpp>
#include <boost/preprocessor/tuple/eat.hpp>
#include <boost/preprocessor/list/fold_right.hpp>
#include <boost/preprocessor/logical/bitand.hpp>
#include <boost/preprocessor/logical/bool.hpp>
#include <boost/preprocessor/list/fold_left.hpp>
#include <boost/preprocessor/tuple/elem.hpp>
#include <boost/preprocessor/tuple/rem.hpp>
#include <boost/type_traits/alignment_of.hpp>
#include <boost/type_traits/config.hpp>
#include <boost/type_traits/is_void.hpp>
#include <boost/type_traits/is_arithmetic.hpp>
#include <boost/type_traits/is_enum.hpp>
#include <boost/type_traits/is_pointer.hpp>
#include <boost/type_traits/is_member_pointer.hpp>
#include <boost/type_traits/detail/ice_or.hpp>
#include <boost/type_traits/detail/bool_trait_def.hpp>
#include <boost/type_traits/detail/bool_trait_undef.hpp>
#include <boost/type_traits/broken_compiler_spec.hpp>
#include <boost/type_traits/detail/type_trait_def.hpp>
#include <boost/type_traits/detail/type_trait_undef.hpp>
#include "boost/type_traits/is_reference.hpp"
#include <boost/type_traits/is_volatile.hpp>
#include <boost/type_traits/is_pod.hpp>
#include <boost/type_traits/detail/ice_and.hpp>
#include <boost/type_traits/detail/ice_not.hpp>
#include <functional>
#include <boost/preprocessor/arithmetic/inc.hpp>
#include <boost/preprocessor/punctuation/comma_if.hpp>
#include <boost/preprocessor/repetition/repeat.hpp>
#include <boost/preprocessor/arithmetic/dec.hpp>
#include <boost/shared_ptr.hpp>
#include <boost/optional.hpp>
#include <boost/format/internals_fwd.hpp>
#include <boost/format/internals.hpp>
#include <boost/format/alt_sstream.hpp>
#include <boost/throw_exception.hpp>
#include <boost/format/format_class.hpp>
#include <boost/format/group.hpp>
#include <boost/format/exceptions.hpp>
#include <boost/math/special_functions/detail/round_fwd.hpp>
#include <boost/type_traits/is_floating_point.hpp>
#include <boost/type_traits/is_integral.hpp>
#include <boost/type_traits/is_convertible.hpp>
#include <boost/type_traits/remove_cv.hpp>
#include <boost/mpl/and.hpp>
#include <boost/mpl/or.hpp>
#include <boost/mpl/comparison.hpp>
#include <complex>
#include <cstring>
#include <endian.h>
#include "rostime_decl.h"
#include <sys/time.h>
#include "ros/time.h"
#include <cstdio>
#include <sstream>
#include <cstdarg>
#include <log4cxx/logstring.h>
#include <log4cxx/log4cxx.h>
#include <log4cxx/helpers/objectptr.h>
#include <map>
#include <log4cxx/helpers/object.h>
#include <log4cxx/helpers/objectimpl.h>
#include <log4cxx/helpers/pool.h>
#include <log4cxx/helpers/mutex.h>
#include <log4cxx/appender.h>
#include <log4cxx/logger.h>
#include <log4cxx/level.h>
#include "ros/console.h"
#include <ros/platform.h>
#include <bits/wchar.h>
#include <bits/wordsize.h>
#include <assert.h>
#include "ros/assert.h"
#include <set>
#include <list>
#include <memory>
#include <boost/smart_ptr/detail/shared_count.hpp>
#include <boost/smart_ptr/shared_ptr.hpp>
#include <boost/preprocessor/array/size.hpp>
#include <cassert>
#include <typeinfo>
#include <boost/integer_traits.hpp>
#include <boost/type_traits/has_trivial_copy.hpp>
#include <boost/type_traits/is_const.hpp>
#include <boost/type_traits/is_array.hpp>
#include <boost/type_traits/is_member_function_pointer.hpp>
#include <boost/type_traits/is_union.hpp>
#include <boost/type_traits/ice.hpp>
#include <boost/config/no_tr1/memory.hpp>
#include <boost/preprocessor/repetition/enum_params.hpp>
#include <ros/macros.h>
#include "roscpp_serialization_macros.h"
#include <boost/checked_delete.hpp>
#include <boost/smart_ptr/detail/operator_bool.hpp>
#include <boost/shared_array.hpp>
#include <stdint.h>
#include "ros/forwards.h"
#include "ros/common.h"
#include <iterator>
#include <ros/types.h>
#include "serialized_message.h"
#include "message_forward.h"
#include <boost/utility/enable_if.hpp>
#include <boost/type_traits/detail/cv_traits_impl.hpp>
#include <boost/type_traits/remove_reference.hpp>
#include "message_traits.h"
#include "ros/exception.h"
#include <boost/array.hpp>
#include <boost/call_traits.hpp>
#include <boost/ref.hpp>
#include <boost/mem_fn.hpp>
#include <boost/type.hpp>
#include <boost/is_placeholder.hpp>
#include <boost/bind/arg.hpp>
#include "common.h"
#include <ros/message_traits.h>
#include <boost/type_traits/is_class.hpp>
#include <boost/type_traits/add_const.hpp>
#include <boost/type_traits/remove_const.hpp>
#include <boost/function.hpp>
#include <boost/type_traits/type_with_alignment.hpp>
#include <ros/static_assert.h>
#include "ros/builtin_message_traits.h"
#include "ros/serialization.h"
#include "ros/message_event.h"
#include <boost/type_traits/is_base_of.hpp>
#include <boost/make_shared.hpp>
#include "forwards.h"
#include "timer_options.h"
#include "ros/rate.h"
#include "wall_timer_options.h"
#include "ros/message.h"
#include "ros/service_traits.h"
#include <boost/lexical_cast.hpp>
#include "subscription_callback_helper.h"
#include "ros/spinner.h"
#include <boost/bind.hpp>
#include <time.h>
#include "ros/publisher.h"
#include <boost/utility/addressof.hpp>
#include <boost/utility/base_from_member.hpp>
#include <boost/preprocessor/facilities/identity.hpp>
#include <boost/preprocessor/control/if.hpp>
#include <boost/preprocessor/facilities/empty.hpp>
#include <boost/preprocessor/seq/seq.hpp>
#include <boost/preprocessor/seq/size.hpp>
#include <boost/preprocessor/seq/fold_left.hpp>
#include <boost/preprocessor/arithmetic/sub.hpp>
#include <boost/preprocessor/logical/compl.hpp>
#include "ros/service_server.h"
#include "ros/subscriber.h"
#include "ros/node_handle.h"
#include "ros/init.h"
#include "XmlRpcValue.h"
#include "node_handle.h"
#include "ros/names.h"
#include "ros/message_operations.h"
#include "geometry_msgs/Point.h"
#include "std_msgs/ColorRGBA.h"
#include <mtt/graph_wrapper.h>
#include <mtt/mht_declaration.h>
#include <mtt/k_best.h>
#include <mtt/cluster.h>
#include <utility>
#include <boost/mpl/integral_c_tag.hpp>
#include <boost/type_traits/is_base_and_derived.hpp>
#include <boost/mpl/equal_to.hpp>
#include <boost/mpl/greater.hpp>
#include <boost/serialization/level.hpp>
#include <boost/serialization/level_enum.hpp>
#include <boost/serialization/tracking_enum.hpp>
#include <boost/serialization/access.hpp>
#include <boost/serialization/force_include.hpp>
#include <boost/serialization/traits.hpp>
#include <boost/serialization/split_member.hpp>
#include <boost/serialization/wrapper.hpp>
#include <boost/mpl/always.hpp>
#include <boost/serialization/nvp.hpp>
#include <boost/noncopyable.hpp>
#include <boost/numeric/ublas/detail/config.hpp>
#include <boost/numeric/ublas/exception.hpp>
#include <boost/mpl/at_fwd.hpp>
#include <boost/mpl/aux_/config/typeof.hpp>
#include <boost/mpl/vector/aux_/at.hpp>
#include <boost/mpl/vector/aux_/tag.hpp>
#include <boost/mpl/aux_/numeric_op.hpp>
#include <boost/mpl/aux_/arithmetic_op.hpp>
#include <boost/mpl/advance_fwd.hpp>
#include <boost/mpl/distance_fwd.hpp>
#include <boost/mpl/prior.hpp>
#include <boost/mpl/minus.hpp>
#include <boost/mpl/vector/aux_/O1_size.hpp>
#include <boost/mpl/vector/aux_/iterator.hpp>
#include <boost/mpl/vector/aux_/vector0.hpp>
#include <boost/mpl/vector/aux_/include_preprocessed.hpp>
#include <boost/mpl/at.hpp>
#include "boost/type_traits/add_reference.hpp"
#include "boost/type_traits/add_volatile.hpp"
#include "boost/type_traits/has_nothrow_copy.hpp"
#include <boost/type_traits/has_trivial_destructor.hpp>
#include "boost/type_traits/has_trivial_assign.hpp"
#include "boost/type_traits/has_trivial_constructor.hpp"
#include "boost/type_traits/is_signed.hpp"
#include "boost/type_traits/is_unsigned.hpp"
#include "boost/type_traits/is_abstract.hpp"
#include <boost/type_traits/is_fundamental.hpp>
#include "boost/type_traits/is_float.hpp"
#include <boost/type_traits/is_function.hpp>
#include "boost/type_traits/is_polymorphic.hpp"
#include "boost/type_traits/is_scalar.hpp"
#include <boost/type_traits/is_empty.hpp>
#include <boost/type_traits/detail/size_t_trait_def.hpp>
#include <boost/type_traits/detail/size_t_trait_undef.hpp>
#include <boost/type_traits/add_pointer.hpp>
#include <boost/type_traits/integral_promotion.hpp>
#include <boost/type_traits/floating_point_promotion.hpp>
#include <boost/type_traits/make_unsigned.hpp>
#include <boost/type_traits/remove_bounds.hpp>
#include <boost/numeric/ublas/detail/iterator.hpp>
#include <boost/numeric/ublas/traits.hpp>
#include <boost/numeric/ublas/detail/definitions.hpp>
#include <boost/numeric/ublas/functional.hpp>
#include <boost/serialization/collection_size_type.hpp>
#include <boost/numeric/ublas/vector_expression.hpp>
#include <boost/serialization/array.hpp>
#include <boost/thread/mutex.hpp>
#include "std_msgs/Header.h"
#include "geometry_msgs/Vector3.h"
#include "geometry_msgs/Quaternion.h"
#include "geometry_msgs/Pose.h"
#include "btMatrix3x3.h"
#include "tf/exceptions.h"
#include "LinearMath/btTransform.h"
#include <boost/functional/hash/hash_fwd.hpp>
#include <boost/functional/hash/detail/float_functions.hpp>
#include <boost/integer/static_log2.hpp>
#include <boost/functional/hash/detail/limits.hpp>
#include <boost/functional/hash/hash.hpp>
#include <boost/iterator.hpp>
#include <boost/detail/iterator.hpp>
#include <boost/type_traits/aligned_storage.hpp>
#include <boost/utility/swap.hpp>
#include <boost/preprocessor/repetition/enum_binary_params.hpp>
#include <boost/preprocessor/repetition/repeat_from_to.hpp>
#include <boost/unordered/detail/hash_table_impl.hpp>
#include <boost/unordered/detail/config.hpp>
#include <initializer_list>
#include <boost/type_traits/function_traits.hpp>
#include <boost/weak_ptr.hpp>
#include <boost/smart_ptr/detail/sp_convertible.hpp>
#include <boost/config/no_tr1/functional.hpp>
#include <boost/smart_ptr/weak_ptr.hpp>
#include <boost/operators.hpp>
#include <boost/utility.hpp>
#include <boost/signals/detail/signals_common.hpp>
#include <boost/signals/connection.hpp>
#include <boost/type_traits.hpp>
#include <boost/visit_each.hpp>
#include <boost/signals/detail/config.hpp>
#include <boost/function/detail/prologue.hpp>
#include <boost/iterator/detail/config_def.hpp>
#include <boost/iterator/detail/config_undef.hpp>
#include <boost/iterator/iterator_categories.hpp>
#include <boost/type_traits/remove_pointer.hpp>
#include <boost/signals/trackable.hpp>
#include <boost/signals/slot.hpp>
#include <boost/smart_ptr.hpp>
#include <boost/function/function2.hpp>
#include <boost/iterator/iterator_facade.hpp>
#include <boost/signals/signal_template.hpp>
#include "sensor_msgs/PointCloud.h"
#include "src/Core/util/DisableStupidWarnings.h"
#include "src/Core/util/Macros.h"
#include <cstdlib>
#include "src/Core/util/Constants.h"
#include "src/Core/util/ForwardDeclarations.h"
#include "src/Core/util/Meta.h"
#include "src/Core/util/XprHelper.h"
#include "src/Core/util/StaticAssert.h"
#include "src/Core/util/Memory.h"
#include "src/Core/NumTraits.h"
#include "src/Core/MathFunctions.h"
#include "src/Core/GenericPacketMath.h"
#include "src/Core/arch/Default/Settings.h"
#include "src/Core/Functors.h"
#include "src/Core/DenseCoeffsBase.h"
#include "src/Core/DenseBase.h"
#include "src/Core/MatrixBase.h"
#include "src/Core/EigenBase.h"
#include "src/Core/Assign.h"
#include "src/Core/util/BlasUtil.h"
#include "src/Core/DenseStorage.h"
#include "src/Core/NestByValue.h"
#include "src/Core/ForceAlignedAccess.h"
#include "src/Core/ReturnByValue.h"
#include "src/Core/NoAlias.h"
#include "src/Core/PlainObjectBase.h"
#include "src/Core/Matrix.h"
#include "src/Core/Array.h"
#include "src/Core/CwiseBinaryOp.h"
#include "src/Core/CwiseUnaryOp.h"
#include "src/Core/CwiseNullaryOp.h"
#include "src/Core/CwiseUnaryView.h"
#include "src/Core/SelfCwiseBinaryOp.h"
#include "src/Core/Dot.h"
#include "src/Core/StableNorm.h"
#include "src/Core/MapBase.h"
#include "src/Core/Stride.h"
#include "src/Core/Map.h"
#include "src/Core/Block.h"
#include "src/Core/VectorBlock.h"
#include "src/Core/Transpose.h"
#include "src/Core/DiagonalMatrix.h"
#include "src/Core/Diagonal.h"
#include "src/Core/DiagonalProduct.h"
#include "src/Core/PermutationMatrix.h"
#include "src/Core/Transpositions.h"
#include "src/Core/Redux.h"
#include "src/Core/Visitor.h"
#include "src/Core/Fuzzy.h"
#include "src/Core/IO.h"
#include "src/Core/Swap.h"
#include "src/Core/CommaInitializer.h"
#include "src/Core/Flagged.h"
#include "src/Core/ProductBase.h"
#include "src/Core/Product.h"
#include "src/Core/TriangularMatrix.h"
#include "src/Core/SelfAdjointView.h"
#include "src/Core/SolveTriangular.h"
#include "src/Core/products/Parallelizer.h"
#include "src/Core/products/CoeffBasedProduct.h"
#include "src/Core/products/GeneralBlockPanelKernel.h"
#include "src/Core/products/GeneralMatrixVector.h"
#include "src/Core/products/GeneralMatrixMatrix.h"
#include "src/Core/products/GeneralMatrixMatrixTriangular.h"
#include "src/Core/products/SelfadjointMatrixVector.h"
#include "src/Core/products/SelfadjointMatrixMatrix.h"
#include "src/Core/products/SelfadjointProduct.h"
#include "src/Core/products/SelfadjointRank2Update.h"
#include "src/Core/products/TriangularMatrixVector.h"
#include "src/Core/products/TriangularMatrixMatrix.h"
#include "src/Core/products/TriangularSolverMatrix.h"
#include "src/Core/products/TriangularSolverVector.h"
#include "src/Core/BandMatrix.h"
#include "src/Core/BooleanRedux.h"
#include "src/Core/Select.h"
#include "src/Core/VectorwiseOp.h"
#include "src/Core/Random.h"
#include "src/Core/Replicate.h"
#include "src/Core/Reverse.h"
#include "src/Core/ArrayBase.h"
#include "src/Core/ArrayWrapper.h"
#include "src/Core/GlobalFunctions.h"
#include "src/Core/util/ReenableStupidWarnings.h"
#include <stdarg.h>
#include <stdio.h>
#include <Eigen/Core>
#include <bitset>
#include <sensor_msgs/PointField.h>
#include <boost/type_traits/remove_all_extents.hpp>
#include <boost/mpl/vector.hpp>
#include <boost/aligned_storage.hpp>
#include <boost/type_traits/add_cv.hpp>
#include <boost/type_traits/remove_volatile.hpp>
#include <boost/swap.hpp>
#include <boost/preprocessor/seq/enum.hpp>
#include <boost/preprocessor/repetition/for.hpp>
#include <boost/preprocessor/seq/transform.hpp>
#include "pcl/win32_macros.h"
#include <boost/mpl/is_sequence.hpp>
#include <boost/config/no_tr1/utility.hpp>
#include "Core"
#include "src/StlSupport/StdVector.h"
#include "pcl/pcl_macros.h"
#include <sensor_msgs/PointCloud2.h>
#include <Eigen/StdVector>
#include "SVD"
#include "LU"
#include "src/Geometry/OrthoMethods.h"
#include "src/Geometry/EulerAngles.h"
#include "src/Geometry/Homogeneous.h"
#include "src/Geometry/RotationBase.h"
#include "src/Geometry/Rotation2D.h"
#include "src/Geometry/Quaternion.h"
#include "src/Geometry/AngleAxis.h"
#include "src/Geometry/Transform.h"
#include "src/Geometry/Translation.h"
#include "src/Geometry/Scaling.h"
#include "src/Geometry/Hyperplane.h"
#include "src/Geometry/ParametrizedLine.h"
#include "src/Geometry/AlignedBox.h"
#include "src/Geometry/Umeyama.h"
#include <pcl/console/print.h>
#include "pcl/PointIndices.h"
#include "pcl/point_cloud.h"
#include "pcl/ros/point_traits.h"
#include <boost/mpl/remove_if.hpp>
#include <boost/mpl/contains.hpp>
#include <boost/mpl/aux_/unwrap.hpp>
#include "pcl/exceptions.h"
#include <boost/mpl/logical.hpp>
#include <boost/range/config.hpp>
#include <boost/type_traits/detail/yes_no_type.hpp>
#include <string.h>
#include <wchar.h>
#include <boost/iterator/iterator_traits.hpp>
#include <boost/range/const_iterator.hpp>
#include <boost/range/iterator.hpp>
#include <boost/range/begin.hpp>
#include <boost/iterator/detail/enable_if.hpp>
#include <boost/range/end.hpp>
#include <boost/range/reverse_iterator.hpp>
#include "pcl/ros/conversions.h"
#include "boost/numeric/conversion/detail/meta.hpp"
#include <boost/mpl/aux_/preprocessor/default_params.hpp>
#include "boost/numeric/conversion/detail/int_float_mixture.hpp"
#include "boost/numeric/conversion/detail/sign_mixture.hpp"
#include "boost/numeric/conversion/detail/udt_builtin_mixture.hpp"
#include "boost/numeric/conversion/detail/conversion_traits.hpp"
#include "pcl/point_types.h"
#include "pcl/kdtree/kdtree_flann.h"
#include "flann/general.h"
#include "flann/util/matrix.h"
#include "flann/util/result_set.h"
#include "flann/algorithms/nn_index.h"
#include "flann/util/logger.h"
#include "flann/util/saving.h"
#include "flann/util/heap.h"
#include "flann/util/allocator.h"
#include "flann/util/random.h"
#include "flann/algorithms/kdtree_index.h"
#include "flann/algorithms/kmeans_index.h"
#include "flann/algorithms/dist.h"
#include "flann/nn/index_testing.h"
#include "flann/algorithms/kdtree_single_index.h"
#include "flann/algorithms/composite_index.h"
#include "flann/algorithms/linear_index.h"
#include <pcl/pcl_base.h>
#include "pcl/kdtree/kdtree.h"
#include "QR"
#include "Householder"
#include "Jacobi"
#include "src/misc/Solve.h"
#include "src/SVD/JacobiSVD.h"
#include "src/SVD/UpperBidiagonalization.h"
#include <Eigen/Dense>
#include <Eigen/Cholesky>
#include <istream>
#include <fstream>
#include <boost/thread/detail/platform.hpp>
#include "platform.hpp"
#include <boost/config/auto_link.hpp>
#include <boost/config/abi_prefix.hpp>
#include <boost/config/abi_suffix.hpp>
#include <boost/thread/detail/config.hpp>
#include <ctime>
#include <boost/date_time/compiler_config.hpp>
#include "boost/date_time/c_time.hpp"
#include "boost/date_time/time_clock.hpp"
#include "boost/date_time/microsec_time_clock.hpp"
#include <boost/date_time/time_defs.hpp>
#include "boost/date_time/special_defs.hpp"
#include "boost/date_time/locale_config.hpp"
#include <exception>
#include "boost/date_time/constrained_value.hpp"
#include "boost/date_time/year_month_day.hpp"
#include "boost/date_time/date_defs.hpp"
#include <cctype>
#include "boost/date_time/int_adapter.hpp"
#include <boost/date_time/date_duration.hpp>
#include <boost/date_time/date.hpp>
#include <boost/date_time/gregorian/greg_calendar.hpp>
#include <boost/date_time/gregorian/greg_duration.hpp>
#include <boost/date_time/date_duration_types.hpp>
#include "boost/date_time/gregorian/greg_date.hpp"
#include "boost/date_time/adjust_functors.hpp"
#include <boost/date_time/wrapping_int.hpp>
#include "boost/date_time/gregorian/greg_duration_types.hpp"
#include "boost/date_time/posix_time/ptime.hpp"
#include "boost/date_time/posix_time/posix_time_config.hpp"
#include "boost/date_time/posix_time/posix_time_system.hpp"
#include "boost/date_time/period.hpp"
#include "boost/date_time/posix_time/posix_time_duration.hpp"
#include "boost/date_time/date_generators.hpp"
#include "boost/date_time/filetime_functions.hpp"
#include <boost/date_time/gregorian/gregorian_types.hpp>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Markers
 Dynamic markers support class. More...

Functions

vector
< visualization_msgs::Marker > 
createClustersMarkers (vector< MeasurementPtr > &clusters)
 Create markers from clusters.
void createObjects (vector< PointPtr > &data, vector< MeasurementPtr > &clusters, double clustering_distance)
 Clustering function.
vector
< visualization_msgs::Marker > 
createTargetMarkers (vector< TargetPtr > &targets)
 Create markers from targets.
void dataHandler (const sensor_msgs::PointCloud2 &msg)
 Handler for the incoming data.
double euclideanDistance (Point &p1, Point &p2)
 Calculate Euclidean distance between Point class types.
void * graphicalThread (void *data)
 Graphical thread.
void gvconfig_plugin_install_from_library (GVC_t *, char *, gvplugin_library_t *)
 External function used to install a gv plugin from a library.
std_msgs::ColorRGBA makeColor (double r, double g, double b, double a)
 Create a std_msgs color from rgba values.
std_msgs::ColorRGBA makeColor (int id)
 Create a std_msgs color from a hsv color map.
geometry_msgs::Point makePose (double x, double y, double z)
 Create a geometry_msgs::Point from values.
void pointCloud2ToVector (const sensor_msgs::PointCloud2 &cloud, vector< PointPtr > &data)
 Convert the point cloud data into a laser scan type structure.

Variables

gvplugin_library_t gvplugin_xgtk_LTX_library
 Xgtk external graphviz library/plugin (only plugin, there's no need to create a library since it can be linked internally).

Detailed Description

Mht implementation main header.

Definition in file mht.h.


Function Documentation

vector<visualization_msgs::Marker> createClustersMarkers ( vector< MeasurementPtr > &  clusters  ) 

Create markers from clusters.

This function creates a set of markers for the current point clusters, this uses the Markers class to keep a up to date list of the current markers.

Parameters:
clusters vector of Measurement 's classes
Returns:
markers to be published

Definition at line 727 of file mht.cpp.

void createObjects ( vector< PointPtr > &  data,
vector< MeasurementPtr > &  clusters,
double  clustering_distance 
)

Clustering function.

This functions separates the incoming data vector into a set of clusters based on a clustering_distance.

Parameters:
data input point vector (it is in fact a std::vector<Mht::PointPtr> reference since its safer to work with shared_ptr's.
clusters output vector of clusters, these clusters are treated has measurements and use the Measurement class.
clustering_distance distance value used to break clusters.

Definition at line 173 of file mht.cpp.

vector<visualization_msgs::Marker> createTargetMarkers ( vector< TargetPtr > &  targets  ) 

Create markers from targets.

This function creates a set of markers for the current targets, this uses the Markers class to keep a up to date list of the current markers.

Parameters:
targets vector of Target 's
Returns:
markers to be published

Definition at line 507 of file mht.cpp.

void dataHandler ( const sensor_msgs::PointCloud2 &  msg  ) 

Handler for the incoming data.

Parameters:
msg incoming point cloud

Definition at line 211 of file mht.cpp.

double euclideanDistance ( Point p1,
Point p2 
)

Calculate Euclidean distance between Point class types.

Only the x and y coordinates are used.

Parameters:
p1 first point
p2 second point
Returns:
euclidean distance between the two points
void* graphicalThread ( void *  data  ) 

Graphical thread.

This function is the main workhorse for the graphical interface. The graphical interface works in a separate thread that runs this function.

Parameters:
data generic pointer, is not used
Returns:
data generic pointer, is not used

Definition at line 808 of file mht.cpp.

void gvconfig_plugin_install_from_library ( GVC_t *  ,
char *  ,
gvplugin_library_t *   
)

External function used to install a gv plugin from a library.

std_msgs::ColorRGBA makeColor ( double  r,
double  g,
double  b,
double  a 
)

Create a std_msgs color from rgba values.

Parameters:
r red value
g green value
b blue value
a alpha value
Returns:
a std_msgs::ColorRGBA color

Definition at line 709 of file mht.cpp.

std_msgs::ColorRGBA makeColor ( int  id  ) 

Create a std_msgs color from a hsv color map.

Parameters:
id color code
Returns:
a std_msgs::ColorRGBA color

Definition at line 721 of file mht.cpp.

geometry_msgs::Point makePose ( double  x,
double  y,
double  z 
)

Create a geometry_msgs::Point from values.

Parameters:
x x component
y y component
z z component
Returns:
a geometry_msgs::Point
void pointCloud2ToVector ( const sensor_msgs::PointCloud2 &  cloud,
vector< PointPtr > &  data 
)

Convert the point cloud data into a laser scan type structure.

Convert from ros format to a local format.

Parameters:
cloud ros format used in point clouds, input message.
data outgoing vector of Point class points.

Definition at line 81 of file mht.cpp.


Variable Documentation

gvplugin_library_t gvplugin_xgtk_LTX_library

Xgtk external graphviz library/plugin (only plugin, there's no need to create a library since it can be linked internally).

Definition at line 256 of file gvplugin_xgtk.cpp.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


mtt
Author(s): Jorge Almeida
autogenerated on Wed Jul 23 04:34:57 2014