28 std::vector<fei::FieldMask*>& fieldMasks,
29 std::vector<int>& eqnNumbers);
35 enum {_FieldMasks_ = 0, _MaskIDs_ = 1,
54 void setTask(
int task) { whichTask_ = task; }
58 { sendPattern_ = pattern; }
62 { recvPattern_ = pattern; }
65 int localFieldMaskMessageSize(std::vector<fei::FieldMask*>& fieldMasks);
67 int packLocalFieldMasks(std::vector<fei::FieldMask*>& fieldMasks,
68 std::vector<int>& localFieldMasks);
70 int addFieldMasks(std::vector<int>& msg, std::vector<fei::FieldMask*>& fieldMasks);
72 int packMaskIDs(
int destProc, std::vector<int>& msg);
74 int mergeMaskIDs(
int srcProc, std::vector<int>& msg);
76 int eqnNumbersMsgLength(
int destProc);
78 int packEqnNumbersMsg(
int destProc, std::vector<int>& msg);
80 int storeEqnNumbers(
int srcProc, std::vector<int>& msg);
86 std::vector<fei::FieldMask*>& fieldMasks_;
90 std::vector<int> sendProcs_;
91 std::vector<int> recvProcs_;
93 std::vector<int>& eqnNumbers_;