/ src / ipc / libmultiprocess / example / init.capnp
init.capnp
 1  # Copyright (c) The Bitcoin Core developers
 2  # Distributed under the MIT software license, see the accompanying
 3  # file COPYING or http://www.opensource.org/licenses/mit-license.php.
 4  
 5  @0xba5a7448664901b1;
 6  
 7  using Cxx = import "/capnp/c++.capnp";
 8  using Proxy = import "/mp/proxy.capnp";
 9  using Calculator = import "calculator.capnp";
10  using Printer = import "printer.capnp";
11  
12  $Proxy.include("calculator.h");
13  $Proxy.include("init.h");
14  $Proxy.include("printer.h");
15  $Proxy.includeTypes("types.h");
16  
17  interface InitInterface $Proxy.wrap("Init") {
18      construct @0 (threadMap: Proxy.ThreadMap) -> (threadMap :Proxy.ThreadMap);
19      makeCalculator @1 (context :Proxy.Context, print :Printer.PrinterInterface) -> (result :Calculator.CalculatorInterface);
20      makePrinter @2 (context :Proxy.Context) -> (result :Printer.PrinterInterface);
21  }