Point Cloud Library (PCL)  1.14.1-dev
person_attribs.h
1 #pragma once
2 
3 #include <string>
4 #include <vector>
5 #include <iosfwd>
6 #include <pcl/memory.h>
7 
8 #include <pcl/pcl_exports.h>
9 
10 namespace pcl
11 {
12  namespace gpu
13  {
14  namespace people
15  {
17  {
18  public:
19  using Ptr = shared_ptr<PersonAttribs>;
20  using ConstPtr = shared_ptr<const PersonAttribs>;
21 
22  /** \brief Constructor creates generic values from **/
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_
void writePersonXMLConfig(std::ostream &os)
Write XML configuration file for a specific person.
shared_ptr< const PersonAttribs > ConstPtr
std::vector< float > max_part_size_
int readPersonXMLConfig(std::istream &is)
Read XML configuration file for a specific person.
shared_ptr< PersonAttribs > Ptr
PersonAttribs()
Constructor creates generic values from.
std::vector< int > nr_of_children_
std::vector< std::vector< float > > part_ideal_length_
Defines functions, macros and traits for allocating and using memory.
#define PCL_EXPORTS
Definition: pcl_macros.h:325