Skip to content

Commit 29189ea

Browse files
committed
deleted global variables
1 parent 0d243f0 commit 29189ea

File tree

2 files changed

+16
-18
lines changed

2 files changed

+16
-18
lines changed

include/emotion.hpp

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -22,26 +22,30 @@ class EmotionManager
2222
{
2323
private:
2424
EyeManager& eyeManager; // EyeManager の参照を保持
25-
int current_eye_status = -1;
25+
int eye_status = -1;
2626
int frame = 0;
2727

2828
public:
29-
// コンストラクタで EyeManager の参照を受け取る
29+
// コンストラクタで EyeManager の参照を受け取る
3030
EmotionManager(EyeManager& manager) : eyeManager(manager) {}
3131

32-
// 感情ごとの表示設定
33-
void set_emotion(int eye_status) {
34-
if (current_eye_status != eye_status && eye_assets_map.find(eye_status) != eye_assets_map.end()) {
35-
current_eye_status = eye_status;
32+
// emotionに応じて画像セットを読み込む
33+
void set_emotion(int received_eye_status = 0) {
34+
if (eye_status != received_eye_status && eye_assets_map.find(received_eye_status) != eye_assets_map.end()) {
35+
eye_status = received_eye_status;
3636
eyeManager.set_picture_files_asset(eye_assets_map[eye_status]);
3737
frame = 0;
3838
}
3939
}
4040

41+
int get_emotion(){
42+
return eye_status;
43+
}
44+
4145
void update_emotion() {
42-
float upperlid_y = upperlid_position_map[current_eye_status][frame % upperlid_position_map[current_eye_status].size()];
46+
float upperlid_y = upperlid_position_map[eye_status][frame % upperlid_position_map[eye_status].size()];
4347
eyeManager.set_upperlid_position(upperlid_y);
4448
eyeManager.update();
4549
frame ++;
4650
}
47-
};
51+
};

rosserial_version/src/main.cpp

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -32,10 +32,6 @@ ros::NodeHandle_<ArduinoHardware> nh;
3232
ros::Subscriber<geometry_msgs::Point> sub_point("~look_at", &callback_look_at);
3333
ros::Subscriber<std_msgs::UInt16> sub_eye_status("eye_status", &callback_emotion);
3434

35-
int eye_status = 0;
36-
bool emotion_changed_flag = true;
37-
static int frame = 0;
38-
3935
void callback_look_at(const geometry_msgs::Point &msg)
4036
{
4137
look_x = (float)msg.x;
@@ -46,8 +42,7 @@ void callback_look_at(const geometry_msgs::Point &msg)
4642
void callback_emotion(const std_msgs::UInt16 &msg)
4743
{
4844
nh.loginfo("in the callback emotion func");
49-
eye_status = msg.data;
50-
emotion_changed_flag = true;
45+
emotion.set_emotion(msg.data);
5146
}
5247

5348
void setup()
@@ -89,19 +84,18 @@ void setup()
8984
eye.init(image_width, image_height, 1);
9085
}
9186
eye.set_gaze_direction(look_x, look_y);
92-
emotion.set_emotion(eye_status);
87+
emotion.set_emotion(); // emotionの初期化
9388
emotion.update_emotion();
9489
}
9590

9691
void loop()
9792
{
9893
delay(100);
99-
frame ++;
94+
10095
eye.set_gaze_direction(look_x, look_y);
101-
emotion.set_emotion(eye_status);
10296
emotion.update_emotion();
10397
nh.spinOnce();
10498
char log_msg[50];
105-
sprintf(log_msg, "Eye status: %d, Emotion changed: %s", eye_status, emotion_changed_flag ? "true" : "false");
99+
sprintf(log_msg, "Eye status: %d", emotion.get_emotion());
106100
nh.loginfo(log_msg);
107101
}

0 commit comments

Comments
 (0)