Функция make_choice

Конструирует блок сообщений choice из необязательного Scheduler или ScheduleGroup и от двух до десяти источников ввода.

template<
   typename _Type1,
   typename _Type2
>
choice<std::tr1::tuple<_Type1, _Type2>> make_choice(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3>> make_choice(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_choice(
   Scheduler& _PScheduler,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1>> make_choice(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1
);
template<
   typename _Type1,
   typename _Type2
>
choice<std::tr1::tuple<_Type1, _Type2>> make_choice(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3>> make_choice(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_choice(
   ScheduleGroup& _PScheduleGroup,
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_choice(
   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
>
choice<std::tr1::tuple<_Type1>> make_choice(
   _Type1_Item1
);
template<
   typename _Type1,
   typename _Type2
>
choice<std::tr1::tuple<_Type1, _Type2>> make_choice(
   _Type1_Item1,
   _Type2_Item2
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3>> make_choice(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4>> make_choice(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5>> make_choice(
   _Type1_Item1,
   _Type2_Item2,
   _Type3_Item3,
   _Type4_Item4,
   _Type5_Item5
);
template<
   typename _Type1,
   typename _Type2,
   typename _Type3,
   typename _Type4,
   typename _Type5,
   typename _Type6
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6>> make_choice(
   _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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7>> make_choice(
   _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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8>> make_choice(
   _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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9>> make_choice(
   _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
>
choice<std::tr1::tuple<_Type1, _Type2, _Type3, _Type4, _Type5, _Type6, _Type7, _Type8, _Type9, _Type10>> make_choice(
   _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, в котором запланировано выполнение задания распространения блока сообщений choice.

  • _Item1
    Первый источник.

  • _Item2
    Второй источник.

  • _Item3
    Третий источник.

  • _Item4
    Четвертый источник.

  • _Item5
    Пятый источник.

  • _Item6
    Шестой источник.

  • _Item7
    Седьмой источник.

  • _Item8
    Восьмой источник.

  • _Item9
    Девятый источник.

  • _Item10
    Десятый источник.

  • _PScheduleGroup
    Объект ScheduleGroup, в котором запланировано выполнение задания распространения блока сообщений choice. Используемый объект Scheduler задается группой расписаний.

Возвращаемое значение

Блок сообщений choice с от двух до десяти источников ввода.

Требования

Заголовок: agents.h

Пространство имен: Concurrency

См. также

Ссылки

Пространство имен Concurrency

Класс choice

Класс Scheduler

Класс ScheduleGroup