Skip to content

Commit 5244c95

Browse files
refactor(tier4_perception_msgs): rename traffic_signal to traffic_light (#6375)
* rename traffic_signal to traffic_light Signed-off-by: Shunsuke Miura <shunsuke.miura@tier4.jp> * style(pre-commit): autofix * fix(crosswalk_traffic_light_estimator): remove unused include, readme Signed-off-by: Shunsuke Miura <shunsuke.miura@tier4.jp> * rename traffic_signal_array to traffic_light_array Signed-off-by: Shunsuke Miura <shunsuke.miura@tier4.jp> --------- Signed-off-by: Shunsuke Miura <shunsuke.miura@tier4.jp> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
1 parent d381585 commit 5244c95

File tree

21 files changed

+70
-76
lines changed

21 files changed

+70
-76
lines changed

common/traffic_light_utils/include/traffic_light_utils/traffic_light_utils.hpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,9 @@
1717

1818
#include "autoware_perception_msgs/msg/traffic_signal.hpp"
1919
#include "autoware_perception_msgs/msg/traffic_signal_element.hpp"
20+
#include "tier4_perception_msgs/msg/traffic_light.hpp"
2021
#include "tier4_perception_msgs/msg/traffic_light_element.hpp"
2122
#include "tier4_perception_msgs/msg/traffic_light_roi.hpp"
22-
#include "tier4_perception_msgs/msg/traffic_signal.hpp"
2323

2424
#include <lanelet2_core/primitives/Lanelet.h>
2525
#include <lanelet2_core/primitives/LineString.h>
@@ -35,9 +35,9 @@ bool isRoiValid(
3535

3636
void setRoiInvalid(tier4_perception_msgs::msg::TrafficLightRoi & roi);
3737

38-
bool isSignalUnknown(const tier4_perception_msgs::msg::TrafficSignal & signal);
38+
bool isSignalUnknown(const tier4_perception_msgs::msg::TrafficLight & signal);
3939

40-
void setSignalUnknown(tier4_perception_msgs::msg::TrafficSignal & signal, float confidence = -1);
40+
void setSignalUnknown(tier4_perception_msgs::msg::TrafficLight & signal, float confidence = -1);
4141

4242
/**
4343
* @brief Checks if a traffic light state includes a circle-shaped light with the specified color.

common/traffic_light_utils/src/traffic_light_utils.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -33,14 +33,14 @@ void setRoiInvalid(tier4_perception_msgs::msg::TrafficLightRoi & roi)
3333
roi.roi.height = roi.roi.width = 0;
3434
}
3535

36-
bool isSignalUnknown(const tier4_perception_msgs::msg::TrafficSignal & signal)
36+
bool isSignalUnknown(const tier4_perception_msgs::msg::TrafficLight & signal)
3737
{
3838
return signal.elements.size() == 1 &&
3939
signal.elements[0].shape == tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN &&
4040
signal.elements[0].color == tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN;
4141
}
4242

43-
void setSignalUnknown(tier4_perception_msgs::msg::TrafficSignal & signal, float confidence)
43+
void setSignalUnknown(tier4_perception_msgs::msg::TrafficLight & signal, float confidence)
4444
{
4545
signal.elements.resize(1);
4646
signal.elements[0].shape = tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN;

common/traffic_light_utils/test/test_traffic_light_utils.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ TEST(setRoiInvalid, set_roi_size)
4848

4949
TEST(isSignalUnknown, signal_element)
5050
{
51-
tier4_perception_msgs::msg::TrafficSignal test_signal;
51+
tier4_perception_msgs::msg::TrafficLight test_signal;
5252
tier4_perception_msgs::msg::TrafficLightElement element;
5353
element.color = tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN;
5454
element.shape = tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN;
@@ -60,7 +60,7 @@ TEST(isSignalUnknown, signal_element)
6060

6161
TEST(setSignalUnknown, set_signal_element)
6262
{
63-
tier4_perception_msgs::msg::TrafficSignal test_signal;
63+
tier4_perception_msgs::msg::TrafficLight test_signal;
6464
tier4_perception_msgs::msg::TrafficLightElement element;
6565
element.color = tier4_perception_msgs::msg::TrafficLightElement::RED;
6666
element.shape = tier4_perception_msgs::msg::TrafficLightElement::CROSS;

perception/crosswalk_traffic_light_estimator/README.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -8,17 +8,17 @@
88

99
### Input
1010

11-
| Name | Type | Description |
12-
| ------------------------------------ | ------------------------------------------------ | ------------------ |
13-
| `~/input/vector_map` | `autoware_auto_mapping_msgs::msg::HADMapBin` | vector map |
14-
| `~/input/route` | `autoware_planning_msgs::msg::LaneletRoute` | route |
15-
| `~/input/classified/traffic_signals` | `tier4_perception_msgs::msg::TrafficSignalArray` | classified signals |
11+
| Name | Type | Description |
12+
| ------------------------------------ | --------------------------------------------------- | ------------------ |
13+
| `~/input/vector_map` | `autoware_auto_mapping_msgs::msg::HADMapBin` | vector map |
14+
| `~/input/route` | `autoware_planning_msgs::msg::LaneletRoute` | route |
15+
| `~/input/classified/traffic_signals` | `autoware_perception_msgs::msg::TrafficSignalArray` | classified signals |
1616

1717
### Output
1818

19-
| Name | Type | Description |
20-
| -------------------------- | ------------------------------------------------ | --------------------------------------------------------- |
21-
| `~/output/traffic_signals` | `tier4_perception_msgs::msg::TrafficSignalArray` | output that contains estimated pedestrian traffic signals |
19+
| Name | Type | Description |
20+
| -------------------------- | --------------------------------------------------- | --------------------------------------------------------- |
21+
| `~/output/traffic_signals` | `autoware_perception_msgs::msg::TrafficSignalArray` | output that contains estimated pedestrian traffic signals |
2222

2323
## Parameters
2424

perception/crosswalk_traffic_light_estimator/include/crosswalk_traffic_light_estimator/node.hpp

-3
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,6 @@
2323
#include <autoware_perception_msgs/msg/traffic_signal_array.hpp>
2424
#include <autoware_planning_msgs/msg/lanelet_route.hpp>
2525
#include <tier4_debug_msgs/msg/float64_stamped.hpp>
26-
#include <tier4_perception_msgs/msg/traffic_light_element.hpp>
27-
#include <tier4_perception_msgs/msg/traffic_signal.hpp>
28-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
2926

3027
#include <lanelet2_core/Attribute.h>
3128
#include <lanelet2_core/LaneletMap.h>

perception/traffic_light_classifier/README.md

+4-4
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ These colors and shapes are assigned to the message as follows:
4343

4444
### Output
4545

46-
| Name | Type | Description |
47-
| -------------------------- | ------------------------------------------------ | ------------------- |
48-
| `~/output/traffic_signals` | `tier4_perception_msgs::msg::TrafficSignalArray` | classified signals |
49-
| `~/output/debug/image` | `sensor_msgs::msg::Image` | image for debugging |
46+
| Name | Type | Description |
47+
| -------------------------- | ----------------------------------------------- | ------------------- |
48+
| `~/output/traffic_signals` | `tier4_perception_msgs::msg::TrafficLightArray` | classified signals |
49+
| `~/output/debug/image` | `sensor_msgs::msg::Image` | image for debugging |
5050

5151
## Parameters
5252

perception/traffic_light_classifier/include/traffic_light_classifier/classifier_interface.hpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
#include <opencv2/core/core.hpp>
1919
#include <opencv2/highgui/highgui.hpp>
2020

21-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
21+
#include <tier4_perception_msgs/msg/traffic_light_array.hpp>
2222

2323
#include <vector>
2424

@@ -29,7 +29,7 @@ class ClassifierInterface
2929
public:
3030
virtual bool getTrafficSignals(
3131
const std::vector<cv::Mat> & input_image,
32-
tier4_perception_msgs::msg::TrafficSignalArray & traffic_signals) = 0;
32+
tier4_perception_msgs::msg::TrafficLightArray & traffic_signals) = 0;
3333
};
3434
} // namespace traffic_light
3535

perception/traffic_light_classifier/include/traffic_light_classifier/cnn_classifier.hpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,14 @@ class CNNClassifier : public ClassifierInterface
5757

5858
bool getTrafficSignals(
5959
const std::vector<cv::Mat> & images,
60-
tier4_perception_msgs::msg::TrafficSignalArray & traffic_signals) override;
60+
tier4_perception_msgs::msg::TrafficLightArray & traffic_signals) override;
6161

6262
private:
63-
void postProcess(int cls, float prob, tier4_perception_msgs::msg::TrafficSignal & traffic_signal);
63+
void postProcess(int cls, float prob, tier4_perception_msgs::msg::TrafficLight & traffic_signal);
6464
bool readLabelfile(std::string filepath, std::vector<std::string> & labels);
6565
bool isColorLabel(const std::string label);
6666
void outputDebugImage(
67-
cv::Mat & debug_image, const tier4_perception_msgs::msg::TrafficSignal & traffic_signal);
67+
cv::Mat & debug_image, const tier4_perception_msgs::msg::TrafficLight & traffic_signal);
6868

6969
private:
7070
std::map<int, std::string> state2label_{

perception/traffic_light_classifier/include/traffic_light_classifier/color_classifier.hpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
#include <opencv2/highgui/highgui.hpp>
2323
#include <rclcpp/rclcpp.hpp>
2424

25-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
25+
#include <tier4_perception_msgs/msg/traffic_light_array.hpp>
2626

2727
#if __has_include(<cv_bridge/cv_bridge.hpp>)
2828
#include <cv_bridge/cv_bridge.hpp>
@@ -64,7 +64,7 @@ class ColorClassifier : public ClassifierInterface
6464

6565
bool getTrafficSignals(
6666
const std::vector<cv::Mat> & images,
67-
tier4_perception_msgs::msg::TrafficSignalArray & traffic_signals) override;
67+
tier4_perception_msgs::msg::TrafficLightArray & traffic_signals) override;
6868

6969
private:
7070
bool filterHSV(

perception/traffic_light_classifier/include/traffic_light_classifier/nodelet.hpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -24,10 +24,10 @@
2424
#include <sensor_msgs/image_encodings.hpp>
2525
#include <sensor_msgs/msg/image.hpp>
2626
#include <std_msgs/msg/header.hpp>
27+
#include <tier4_perception_msgs/msg/traffic_light.hpp>
28+
#include <tier4_perception_msgs/msg/traffic_light_array.hpp>
2729
#include <tier4_perception_msgs/msg/traffic_light_element.hpp>
2830
#include <tier4_perception_msgs/msg/traffic_light_roi_array.hpp>
29-
#include <tier4_perception_msgs/msg/traffic_signal.hpp>
30-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
3131

3232
#if __has_include(<cv_bridge/cv_bridge.hpp>)
3333
#include <cv_bridge/cv_bridge.hpp>
@@ -85,7 +85,7 @@ class TrafficLightClassifierNodelet : public rclcpp::Node
8585
typedef message_filters::Synchronizer<ApproximateSyncPolicy> ApproximateSync;
8686
std::shared_ptr<ApproximateSync> approximate_sync_;
8787
bool is_approximate_sync_;
88-
rclcpp::Publisher<tier4_perception_msgs::msg::TrafficSignalArray>::SharedPtr
88+
rclcpp::Publisher<tier4_perception_msgs::msg::TrafficLightArray>::SharedPtr
8989
traffic_signal_array_pub_;
9090
std::shared_ptr<ClassifierInterface> classifier_ptr_;
9191

perception/traffic_light_classifier/src/cnn_classifier.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ CNNClassifier::CNNClassifier(rclcpp::Node * node_ptr) : node_ptr_(node_ptr)
6565

6666
bool CNNClassifier::getTrafficSignals(
6767
const std::vector<cv::Mat> & images,
68-
tier4_perception_msgs::msg::TrafficSignalArray & traffic_signals)
68+
tier4_perception_msgs::msg::TrafficLightArray & traffic_signals)
6969
{
7070
if (images.size() != traffic_signals.signals.size()) {
7171
RCLCPP_WARN(node_ptr_->get_logger(), "image number should be equal to traffic signal number!");
@@ -106,7 +106,7 @@ bool CNNClassifier::getTrafficSignals(
106106
}
107107

108108
void CNNClassifier::outputDebugImage(
109-
cv::Mat & debug_image, const tier4_perception_msgs::msg::TrafficSignal & traffic_signal)
109+
cv::Mat & debug_image, const tier4_perception_msgs::msg::TrafficLight & traffic_signal)
110110
{
111111
float probability;
112112
std::string label;
@@ -138,7 +138,7 @@ void CNNClassifier::outputDebugImage(
138138
}
139139

140140
void CNNClassifier::postProcess(
141-
int class_index, float prob, tier4_perception_msgs::msg::TrafficSignal & traffic_signal)
141+
int class_index, float prob, tier4_perception_msgs::msg::TrafficLight & traffic_signal)
142142
{
143143
std::string match_label = labels_[class_index];
144144

@@ -196,7 +196,7 @@ bool CNNClassifier::readLabelfile(std::string filepath, std::vector<std::string>
196196

197197
bool CNNClassifier::isColorLabel(const std::string label)
198198
{
199-
using tier4_perception_msgs::msg::TrafficSignal;
199+
using tier4_perception_msgs::msg::TrafficLight;
200200
if (
201201
label == state2label_[tier4_perception_msgs::msg::TrafficLightElement::GREEN] ||
202202
label == state2label_[tier4_perception_msgs::msg::TrafficLightElement::AMBER] ||

perception/traffic_light_classifier/src/color_classifier.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ ColorClassifier::ColorClassifier(rclcpp::Node * node_ptr) : node_ptr_(node_ptr)
5353

5454
bool ColorClassifier::getTrafficSignals(
5555
const std::vector<cv::Mat> & images,
56-
tier4_perception_msgs::msg::TrafficSignalArray & traffic_signals)
56+
tier4_perception_msgs::msg::TrafficLightArray & traffic_signals)
5757
{
5858
if (images.size() != traffic_signals.signals.size()) {
5959
RCLCPP_WARN(node_ptr_->get_logger(), "image number should be equal to traffic signal number!");

perception/traffic_light_classifier/src/nodelet.cpp

+4-5
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,8 @@ TrafficLightClassifierNodelet::TrafficLightClassifierNodelet(const rclcpp::NodeO
4242
std::bind(&TrafficLightClassifierNodelet::imageRoiCallback, this, _1, _2));
4343
}
4444

45-
traffic_signal_array_pub_ =
46-
this->create_publisher<tier4_perception_msgs::msg::TrafficSignalArray>(
47-
"~/output/traffic_signals", rclcpp::QoS{1});
45+
traffic_signal_array_pub_ = this->create_publisher<tier4_perception_msgs::msg::TrafficLightArray>(
46+
"~/output/traffic_signals", rclcpp::QoS{1});
4847

4948
using std::chrono_literals::operator""ms;
5049
timer_ = rclcpp::create_timer(
@@ -95,7 +94,7 @@ void TrafficLightClassifierNodelet::imageRoiCallback(
9594
input_image_msg->encoding.c_str());
9695
}
9796

98-
tier4_perception_msgs::msg::TrafficSignalArray output_msg;
97+
tier4_perception_msgs::msg::TrafficLightArray output_msg;
9998

10099
output_msg.signals.resize(input_rois_msg->rois.size());
101100

@@ -131,7 +130,7 @@ void TrafficLightClassifierNodelet::imageRoiCallback(
131130
// append the undetected rois as unknown
132131
for (const auto & input_roi : input_rois_msg->rois) {
133132
if (input_roi.roi.height == 0 && input_roi.traffic_light_type == classify_traffic_light_type_) {
134-
tier4_perception_msgs::msg::TrafficSignal tlr_sig;
133+
tier4_perception_msgs::msg::TrafficLight tlr_sig;
135134
tlr_sig.traffic_light_id = input_roi.traffic_light_id;
136135
tlr_sig.traffic_light_type = input_roi.traffic_light_type;
137136
tier4_perception_msgs::msg::TrafficLightElement element;

perception/traffic_light_classifier/src/single_image_debug_inference_node.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ class SingleImageDebugInferenceNode : public rclcpp::Node
123123
return;
124124
}
125125
cv::cvtColor(crop, crop, cv::COLOR_BGR2RGB);
126-
tier4_perception_msgs::msg::TrafficSignalArray traffic_signal;
126+
tier4_perception_msgs::msg::TrafficLightArray traffic_signal;
127127
if (!classifier_ptr_->getTrafficSignals({crop}, traffic_signal)) {
128128
RCLCPP_ERROR(get_logger(), "failed to classify image");
129129
return;

perception/traffic_light_multi_camera_fusion/include/traffic_light_multi_camera_fusion/node.hpp

+5-5
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@
2020
#include <autoware_auto_mapping_msgs/msg/had_map_bin.hpp>
2121
#include <autoware_perception_msgs/msg/traffic_signal_array.hpp>
2222
#include <sensor_msgs/msg/camera_info.hpp>
23+
#include <tier4_perception_msgs/msg/traffic_light_array.hpp>
2324
#include <tier4_perception_msgs/msg/traffic_light_roi_array.hpp>
24-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
2525

2626
#include <lanelet2_core/Forward.h>
2727
#include <message_filters/subscriber.h>
@@ -46,15 +46,15 @@ struct FusionRecord
4646
std_msgs::msg::Header header;
4747
sensor_msgs::msg::CameraInfo cam_info;
4848
tier4_perception_msgs::msg::TrafficLightRoi roi;
49-
tier4_perception_msgs::msg::TrafficSignal signal;
49+
tier4_perception_msgs::msg::TrafficLight signal;
5050
};
5151

5252
struct FusionRecordArr
5353
{
5454
std_msgs::msg::Header header;
5555
sensor_msgs::msg::CameraInfo cam_info;
5656
tier4_perception_msgs::msg::TrafficLightRoiArray rois;
57-
tier4_perception_msgs::msg::TrafficSignalArray signals;
57+
tier4_perception_msgs::msg::TrafficLightArray signals;
5858
};
5959

6060
bool operator<(const FusionRecordArr & r1, const FusionRecordArr & r2)
@@ -67,8 +67,8 @@ class MultiCameraFusion : public rclcpp::Node
6767
public:
6868
typedef sensor_msgs::msg::CameraInfo CamInfoType;
6969
typedef tier4_perception_msgs::msg::TrafficLightRoi RoiType;
70-
typedef tier4_perception_msgs::msg::TrafficSignal SignalType;
71-
typedef tier4_perception_msgs::msg::TrafficSignalArray SignalArrayType;
70+
typedef tier4_perception_msgs::msg::TrafficLight SignalType;
71+
typedef tier4_perception_msgs::msg::TrafficLightArray SignalArrayType;
7272
typedef tier4_perception_msgs::msg::TrafficLightRoiArray RoiArrayType;
7373
typedef tier4_perception_msgs::msg::TrafficLightRoi::_traffic_light_id_type IdType;
7474
typedef autoware_perception_msgs::msg::TrafficSignal NewSignalType;

perception/traffic_light_multi_camera_fusion/src/node.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
namespace
2626
{
2727

28-
bool isUnknown(const tier4_perception_msgs::msg::TrafficSignal & signal)
28+
bool isUnknown(const tier4_perception_msgs::msg::TrafficLight & signal)
2929
{
3030
return signal.elements.size() == 1 &&
3131
signal.elements[0].color == tier4_perception_msgs::msg::TrafficLightElement::UNKNOWN &&

perception/traffic_light_occlusion_predictor/include/traffic_light_occlusion_predictor/nodelet.hpp

+6-7
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@
2424
#include <geometry_msgs/msg/pose_stamped.hpp>
2525
#include <sensor_msgs/msg/camera_info.hpp>
2626
#include <sensor_msgs/msg/point_cloud2.hpp>
27+
#include <tier4_perception_msgs/msg/traffic_light_array.hpp>
2728
#include <tier4_perception_msgs/msg/traffic_light_roi_array.hpp>
28-
#include <tier4_perception_msgs/msg/traffic_signal_array.hpp>
2929

3030
#include <image_geometry/pinhole_camera_model.h>
3131
#include <message_filters/subscriber.h>
@@ -69,7 +69,7 @@ class TrafficLightOcclusionPredictorNodelet : public rclcpp::Node
6969
*
7070
*/
7171
void syncCallback(
72-
const tier4_perception_msgs::msg::TrafficSignalArray::ConstSharedPtr in_signal_msg,
72+
const tier4_perception_msgs::msg::TrafficLightArray::ConstSharedPtr in_signal_msg,
7373
const tier4_perception_msgs::msg::TrafficLightRoiArray::ConstSharedPtr in_roi_msg,
7474
const sensor_msgs::msg::CameraInfo::ConstSharedPtr in_cam_info_msg,
7575
const sensor_msgs::msg::PointCloud2::ConstSharedPtr in_cloud_msg,
@@ -80,7 +80,7 @@ class TrafficLightOcclusionPredictorNodelet : public rclcpp::Node
8080
* @brief publishers
8181
*
8282
*/
83-
rclcpp::Publisher<tier4_perception_msgs::msg::TrafficSignalArray>::SharedPtr signal_pub_;
83+
rclcpp::Publisher<tier4_perception_msgs::msg::TrafficLightArray>::SharedPtr signal_pub_;
8484

8585
tf2_ros::Buffer tf_buffer_;
8686
tf2_ros::TransformListener tf_listener_;
@@ -92,17 +92,16 @@ class TrafficLightOcclusionPredictorNodelet : public rclcpp::Node
9292
*/
9393
std::shared_ptr<CloudOcclusionPredictor> cloud_occlusion_predictor_;
9494
typedef perception_utils::PrimeSynchronizer<
95-
tier4_perception_msgs::msg::TrafficSignalArray,
96-
tier4_perception_msgs::msg::TrafficLightRoiArray, sensor_msgs::msg::CameraInfo,
97-
sensor_msgs::msg::PointCloud2>
95+
tier4_perception_msgs::msg::TrafficLightArray, tier4_perception_msgs::msg::TrafficLightRoiArray,
96+
sensor_msgs::msg::CameraInfo, sensor_msgs::msg::PointCloud2>
9897
SynchronizerType;
9998

10099
std::shared_ptr<SynchronizerType> synchronizer_;
101100
std::shared_ptr<SynchronizerType> synchronizer_ped_;
102101

103102
std::vector<bool> subscribed_;
104103
std::vector<int> occlusion_ratios_;
105-
tier4_perception_msgs::msg::TrafficSignalArray out_msg_;
104+
tier4_perception_msgs::msg::TrafficLightArray out_msg_;
106105
};
107106
} // namespace traffic_light
108107
#endif // TRAFFIC_LIGHT_OCCLUSION_PREDICTOR__NODELET_HPP_

0 commit comments

Comments
 (0)