maliput_sdk/
lib.rs

1// BSD 3-Clause License
2//
3// Copyright (c) 2024, Woven by Toyota.
4// All rights reserved.
5//
6// Redistribution and use in source and binary forms, with or without
7// modification, are permitted provided that the following conditions are met:
8//
9// * Redistributions of source code must retain the above copyright notice, this
10//   list of conditions and the following disclaimer.
11//
12// * Redistributions in binary form must reproduce the above copyright notice,
13//   this list of conditions and the following disclaimer in the documentation
14//   and/or other materials provided with the distribution.
15//
16// * Neither the name of the copyright holder nor the names of its
17//   contributors may be used to endorse or promote products derived from
18//   this software without specific prior written permission.
19//
20// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30#![allow(rustdoc::bare_urls)]
31#![doc = include_str!(concat!(env!("CARGO_MANIFEST_DIR"), "/README.md"))]
32
33use std::path::PathBuf;
34
35/// Returns a map of libraries here vendored and the directories to search for the binaries.
36pub fn sdk_libraries() -> Vec<(String, PathBuf)> {
37    vec![
38        ("maliput".to_string(), PathBuf::from(env!("MALIPUT_BIN_PATH"))),
39        (
40            "maliput_malidrive".to_string(),
41            PathBuf::from(env!("MALIPUT_MALIDRIVE_BIN_PATH")),
42        ),
43    ]
44}
45
46/// Returns a map of resources here vendored and the directories to search for the resources.
47pub fn sdk_resources() -> Vec<(String, PathBuf)> {
48    vec![(
49        "maliput_malidrive".to_string(),
50        PathBuf::from(env!("MALIPUT_MALIDRIVE_RESOURCE_PATH")),
51    )]
52}
53
54/// Returns the path to the maliput_malidrive plugin.
55pub fn get_maliput_malidrive_plugin_path() -> PathBuf {
56    PathBuf::from(env!("MALIPUT_MALIDRIVE_PLUGIN_PATH"))
57}