chromium/remoting/protocol/named_message_pipe_handler.h

// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef REMOTING_PROTOCOL_NAMED_MESSAGE_PIPE_HANDLER_H_
#define REMOTING_PROTOCOL_NAMED_MESSAGE_PIPE_HANDLER_H_

#include <memory>
#include <string>

#include "base/functional/callback.h"
#include "base/task/sequenced_task_runner_helpers.h"
#include "base/threading/thread_checker.h"
#include "remoting/protocol/message_pipe.h"

namespace google {
namespace protobuf {
class MessageLite;
}  // namespace protobuf
}  // namespace google

namespace remoting {

class CompoundBuffer;

namespace protocol {

// A base class to handle data from a named MessagePipe. This class manages the
// lifetime itself: it deletes itself once the MessagePipe is closed or the
// derived instance actively calls Close() function.
class NamedMessagePipeHandler : public MessagePipe::EventHandler {};

}  // namespace protocol
}  // namespace remoting

#endif  // REMOTING_PROTOCOL_NAMED_MESSAGE_PIPE_HANDLER_H_