IPCBroker.h 504 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include "IPCChannel.h"
  3. namespace Atomic
  4. {
  5. class IPCProcess;
  6. class IPCBroker : public IPCChannel
  7. {
  8. friend class IPC;
  9. OBJECT(IPCBroker);
  10. public:
  11. /// Construct.
  12. IPCBroker(Context* context);
  13. /// Destruct.
  14. virtual ~IPCBroker();
  15. void ThreadFunction();
  16. bool Update();
  17. private:
  18. bool SpawnWorker(const String& command, const Vector<String>& args, const String& initialDirectory = "");
  19. // broker instantiates the pipe pair
  20. PipePair pp_;
  21. };
  22. }