Point Cloud Library (PCL) 1.13.1
Loading...
Searching...
No Matches
file_io.h
Go to the documentation of this file.
1/*
2 * Software License Agreement (BSD License)
3 *
4 * Point Cloud Library (PCL) - www.pointclouds.org
5 * Copyright (c) 2010, Willow Garage, Inc.
6 * Copyright (c) 2012-, Open Perception, Inc.
7 *
8 * All rights reserved.
9 *
10 * Redistribution and use in source and binary forms, with or without
11 * modification, are permitted provided that the following conditions
12 * are met:
13 *
14 * * Redistributions of source code must retain the above copyright
15 * notice, this list of conditions and the following disclaimer.
16 * * Redistributions in binary form must reproduce the above
17 * copyright notice, this list of conditions and the following
18 * disclaimer in the documentation and/or other materials provided
19 * with the distribution.
20 * * Neither the name of the copyright holder(s) nor the names of its
21 * contributors may be used to endorse or promote products derived
22 * from this software without specific prior written permission.
23 *
24 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
27 * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
28 * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
29 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
30 * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
31 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
33 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
34 * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
35 * POSSIBILITY OF SUCH DAMAGE.
36 *
37 */
38
39#pragma once
40
41#include <iostream>
42#include <vector>
43#include <algorithm>
44
45/**
46 * \file pcl/common/file_io.h
47 * Define some helper functions for reading and writing files
48 * \ingroup common
49 * \todo move this to pcl::console
50 */
51
52/*@{*/
53namespace pcl
54{
55 /** \brief Find all *.pcd files in the directory and return them sorted
56 * \param directory the directory to be searched
57 * \param file_names the resulting (sorted) list of .pcd files
58 */
59 inline void
60 getAllPcdFilesInDirectory (const std::string& directory, std::vector<std::string>& file_names);
61
62 /** \brief Remove the path from the given string and return only the filename (the remaining string after the
63 * last '/')
64 * \param input the input filename (with full path)
65 * \return the resulting filename, stripped of the path
66 */
67 inline std::string
68 getFilenameWithoutPath (const std::string& input);
69
70 /** \brief Remove the extension from the given string and return only the filename (everything before the last '.')
71 * \param input the input filename (with the file extension)
72 * \return the resulting filename, stripped of its extension
73 */
74 inline std::string
75 getFilenameWithoutExtension (const std::string& input);
76
77 /** \brief Get the file extension from the given string (the remaining string after the last '.')
78 * \param input the input filename
79 * \return \a input 's file extension
80 */
81 inline std::string
82 getFileExtension (const std::string& input);
83} // namespace end
84/*@}*/
85#include <pcl/common/impl/file_io.hpp>
void getAllPcdFilesInDirectory(const std::string &directory, std::vector< std::string > &file_names)
Find all *.pcd files in the directory and return them sorted.
Definition file_io.hpp:54
std::string getFilenameWithoutPath(const std::string &input)
Remove the path from the given string and return only the filename (the remaining string after the la...
Definition file_io.hpp:76
std::string getFileExtension(const std::string &input)
Get the file extension from the given string (the remaining string after the last '.
Definition file_io.hpp:88
std::string getFilenameWithoutExtension(const std::string &input)
Remove the extension from the given string and return only the filename (everything before the last '...
Definition file_io.hpp:82