Point Cloud Library (PCL)  1.10.0-dev
person_attribs.h
1 #pragma once
2 
3 #include <string>
4 #include <vector>
5 #include <iosfwd>
6 #include <pcl/make_shared.h>
7 
8 #include <pcl/pcl_exports.h>
9 
10 namespace pcl
11 {
12  namespace gpu
13  {
14  namespace people
15  {
17  {
18  public:
21 
22  /** \brief Constructor creates generic values from **/
23  PersonAttribs();
24 
25  /**
26  * \brief Read XML configuration file for a specific person
27  * \param[in] is input stream of file
28  * \return 0 when successful, -1 when an error occurred, datastructure might become corrupted in the process
29  **/
30  int
31  readPersonXMLConfig (std::istream& is);
32 
33  /**
34  * \brief Write XML configuration file for a specific person
35  * \param[in] os output stream of file, extension determines format
36  **/
37  void
38  writePersonXMLConfig (std::ostream& os);
39 
40  std::string name_; // Name of the person
41  std::vector<float> max_part_size_; // Max primary eigenvalue for each body part
42  std::vector<std::vector<float> > part_ideal_length_; // Ideal length between two body parts
43  std::vector<std::vector<float> > max_length_offset_; // Max allowed length offset between two body parts
44  std::vector<int> nr_of_children_; // The number of children for each part
45  };
46  }
47  }
48 }
std::vector< std::vector< float > > max_length_offset_
shared_ptr< PersonAttribs > Ptr
This file defines compatibility wrappers for low level I/O functions.
Definition: convolution.h:45
std::vector< float > max_part_size_
shared_ptr< const PersonAttribs > ConstPtr
std::vector< std::vector< float > > part_ideal_length_
boost::shared_ptr< T > shared_ptr
Alias for boost::shared_ptr.
Definition: pcl_macros.h:90
std::vector< int > nr_of_children_
#define PCL_EXPORTS
Definition: pcl_macros.h:253