make_greedy_join 函数

从可选的 SchedulerScheduleGroup 及两个和十个输入源之间构造 greedy multitype_join 消息块。

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>, greedy> make_greedy_join(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>, greedy> make_greedy_join(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

template<
   typename _Type1,
   typename _Type2
>
multitype_join<std::tr1::tuple<_Type1, _Type2>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9
);

template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6,
   typename _Type7,
   typename _Type8,
   typename _Type9,
   typename _Type10
>
multitype_join<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>, greedy> make_greedy_join(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5,
   _Type6_Item6,
   _Type7_Item7,
   _Type8_Item8,
   _Type9_Item9,
   _Type10_Item10
);

参数

  • _Type1
    第一个源的消息块类型。

  • _Type2
    第二个源的消息块类型。

  • _Type3
    第三个源的消息块类型。

  • _Type4
    第四个源的消息块类型。

  • _Type5
    第五个源的消息块类型。

  • _Type6

  • _Type7

  • _Type8

  • _Type9

  • _Type10

  • _PScheduler
    Scheduler 对象,在其中计划 multitype_join 消息块的传播任务。

  • _Item1
    第一个源。

  • _Item2
    第二个源。

  • _Item3
    第三个源。

  • _Item4
    第四个源。

  • _Item5
    第五个源。

  • _Item6

  • _Item7

  • _Item8

  • _Item9

  • _Item10

  • _PScheduleGroup
    ScheduleGroup 对象,在其中计划 multitype_join 消息块的传播任务。 所用的 Scheduler 对象由计划组指示。

返回值

greedy multitype_join 消息块,具有两个到十个输入源。

要求

**标头:**agents.h

命名空间: 并发

请参见

参考

concurrency 命名空间

multitype_join 类

Scheduler 类

ScheduleGroup 类