/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying file Copyright.txt or https://cmake.org/licensing for details. */ #pragma once #include "cmConfigure.h" // IWYU pragma: keep #include #include #include "cmConnection.h" #include "cmUVHandlePtr.h" class cmPipeConnection : public cmEventBasedConnection { public: cmPipeConnection(std::string name, cmConnectionBufferStrategy* bufferStrategy = nullptr); bool OnServeStart(std::string* pString) override; bool OnConnectionShuttingDown() override; void Connect(uv_stream_t* server) override; private: const std::string PipeName; cm::uv_pipe_ptr ServerPipe; };