/*
 * messageQueue.hpp
 *
 *  Created on: Jan 24, 2019
 *      Author: vadims
 */

#pragma once

#include <queue>
#include <mutex>
#include "messagedata.hpp"

class MessageQueue
{
public:
    std::string frontData();
    void pop();
    void push(messagedata msgData);
    bool empty();

private:
    std::queue<messagedata> msgQueue;
    std::mutex lck;
};

typedef std::shared_ptr<MessageQueue>   MessageQueue_;
