Accelerated Computation Engine
ace_analytic_abstractmpi.h
1 #ifndef ACE_ANALYTIC_ABSTRACTMPI_H
2 #define ACE_ANALYTIC_ABSTRACTMPI_H
3 #include "ace_analytic_abstractmanager.h"
4 //
5 
6 
7 
8 namespace Ace
9 {
10  namespace Analytic
11  {
23  {
24  Q_OBJECT
25  public:
29  enum Type
30  {
40  ,OpenCL
41  };
42  protected:
43  virtual void mpiStart(Type type, int platform, int device);
44  protected:
48  enum Code
49  {
54  Terminate = -1
59  ,ReadyAsSerial = -2
64  ,ReadyAsOpenCL = -3
65  };
66  explicit AbstractMPI(quint16 type);
67  protected slots:
68  virtual void start() override final;
69  private slots:
70  void localDataReceived(const QByteArray& data, int fromRank);
71  private:
72  void sendStart(int rank, Type type, int platform = -1, int device = -1);
76  QMPI& _mpi;
81  bool _started {false};
82  };
83  }
84 }
85 
86 
87 
88 #endif
Definition: ace_analytic_abstractmpi.h:54
Definition: ace.h:6
AbstractMPI(quint16 type)
Definition: ace_analytic_abstractmpi.cpp:58
EAbstractAnalytic::Input::Type type(int index) const
Definition: ace_analytic_abstractmanager.cpp:136
Definition: ace_analytic_abstractmanager.h:32
Definition: ace_qmpi.h:25
Definition: ace_analytic_abstractmpi.h:22
QVariant data(int index, EAbstractAnalytic::Input::Role role) const
Definition: ace_analytic_abstractmanager.cpp:157
virtual void start() override final
Definition: ace_analytic_abstractmpi.cpp:77
Code
Definition: ace_analytic_abstractmpi.h:48
Type
Definition: ace_analytic_abstractmpi.h:29
Definition: ace_analytic_abstractmpi.h:35
virtual void mpiStart(Type type, int platform, int device)
Definition: ace_analytic_abstractmpi.cpp:34
Definition: opencl.h:5