// // Copyright © 2019 Arm Ltd. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include namespace armnn { namespace gatordmock { /** * A class that implements a Mock Gatord server. It will listen on a specified Unix domain socket (UDS) * namespace for client connections. */ class GatordMockService { public: /** * Establish the Unix domain socket and set it to listen for connections. * * @param udsNamespace the namespace (socket address) associated with the listener. * @return true only if the socket has been correctly setup. */ bool OpenListeningSocket(std::string udsNamespace); /** * Block waiting to accept one client to connect to the UDS. * * @return the file descriptor of the client connection. */ int BlockForOneClient(); private: int m_ListeningSocket; }; } // namespace gatordmock } // namespace armnn