//
// Created by ros on 2/6/23.
//

#ifndef BUILD_SERVER_H
#define BUILD_SERVER_H

#include <cstdio>
#include <rclcpp/rclcpp.hpp>
#include <rclcpp/utilities.hpp>
#include <rclcpp/logger.hpp>
#include <rclcpp_action/rclcpp_action.hpp>
#include <ros_actor_action_server_msgs/action/animation.hpp>
#include <ros_actor_action_server_msgs/action/movement.hpp>
#include <ros_actor_message_queue_msgs/MessageTypes.hpp>
#include <fcntl.h>
#include <sys/stat.h>
#include <mqueue.h>

using namespace ros_actor_action_server_msgs;

#define AnimationActionServer rclcpp_action::Server<action::Animation>
#define MovementActionServer rclcpp_action::Server<action::Movement>

#define AnimationGoalPtr std::shared_ptr<const action::Animation::Goal>
#define AnimationServerGoalPtr std::shared_ptr<rclcpp_action::ServerGoalHandle<action::Animation>>

#define MovementGoalPtr std::shared_ptr<const action::Movement::Goal>
#define MovementServerGoalPtr std::shared_ptr<rclcpp_action::ServerGoalHandle<action::Movement>>

#endif //BUILD_SERVER_H
