| 
| virtual message_status  | propagate_message (_Inout_ message< _Type > *_PMessage, _Inout_ ISource< _Type > *_PSource) | 
|   | Asynchronously passes a message from an ISource block to this call messaging block. It is invoked by the propagate method, when called by a source block.  More...
  | 
|   | 
| virtual message_status  | send_message (_Inout_ message< _Type > *_PMessage, _Inout_ ISource< _Type > *_PSource) | 
|   | Synchronously passes a message from an ISource block to this call messaging block. It is invoked by the send method, when called by a source block.  More...
  | 
|   | 
| virtual bool  | supports_anonymous_source () | 
|   | Overrides the supports_anonymous_source method to indicate that this block can accept messages offered to it by a source that is not linked.  More...
  | 
|   | 
| virtual void  | process_message (_Inout_ message< _Type > *_PMessage) | 
|   | Processes a message that was accepted by this call messaging block.  More...
  | 
|   | 
| virtual void  | process_input_messages (_Inout_ message< _Type > *_PMessage) | 
|   | Executes the call function on the input messages.  More...
  | 
|   | 
| virtual message_status  | propagate_message (_Inout_ message< _Source_type > *_PMessage, _Inout_ ISource< _Source_type > *_PSource)=0 | 
|   | When overridden in a derived class, this method asynchronously passes a message from an ISource block to this target_block object. It is invoked by the propagate method, when called by a source block.  More...
  | 
|   | 
| virtual message_status  | send_message (_Inout_ message< _Source_type > *, _Inout_ ISource< _Source_type > *) | 
|   | When overridden in a derived class, this method synchronously passes a message from an ISource block to this target_block object. It is invoked by the send method, when called by a source block.  More...
  | 
|   | 
| virtual void  | link_source (_Inout_ ISource< _Source_type > *_PSource) | 
|   | Links a specified source block to this target_block object.  More...
  | 
|   | 
| virtual void  | unlink_source (_Inout_ ISource< _Source_type > *_PSource) | 
|   | Unlinks a specified source block from this target_block object.  More...
  | 
|   | 
| virtual void  | unlink_sources () | 
|   | Unlinks all source blocks from this target_block object.  More...
  | 
|   | 
| virtual void  | process_message (message< _Source_type > *) | 
|   | When overridden in a derived class, processes a message that was accepted by this target_block object.  More...
  | 
|   | 
| void  | register_filter (filter_method const &_Filter) | 
|   | Registers a filter method that will be invoked on every message received.  More...
  | 
|   | 
| void  | decline_incoming_messages () | 
|   | Indicates to the block that new messages should be declined.  More...
  | 
|   | 
| void  | initialize_target (_Inout_opt_ Scheduler *_PScheduler=NULL, _Inout_opt_ ScheduleGroup *_PScheduleGroup=NULL) | 
|   | Initializes the base object. Specifically, the message_processor object needs to be initialized.  More...
  | 
|   | 
| void  | enable_batched_processing () | 
|   | Enables batched processing for this block.  More...
  | 
|   | 
| void  | async_send (_Inout_opt_ message< _Source_type > *_PMessage) | 
|   | Asynchronously sends a message for processing.  More...
  | 
|   | 
| void  | sync_send (_Inout_opt_ message< _Source_type > *_PMessage) | 
|   | Synchronously send a message for processing.  More...
  | 
|   | 
| void  | wait_for_async_sends () | 
|   | Waits for all asynchronous propagations to complete.  More...
  | 
|   | 
| void  | remove_sources () | 
|   | Unlinks all sources after waiting for outstanding asynchronous send operations to complete.  More...
  | 
|   | 
| virtual void  | process_input_messages (_Inout_ message< _Source_type > *_PMessage) | 
|   | Processes messages that are received as inputs.  More...
  | 
|   | 
| virtual void  | link_source (_Inout_ ISource< multi_link_registry< ISource< _Type > >::type::source_type > *_PSource)=0 | 
|   | When overridden in a derived class, links a specified source block to this ITarget block.  More...
  | 
|   | 
| virtual void  | unlink_source (_Inout_ ISource< multi_link_registry< ISource< _Type > >::type::source_type > *_PSource)=0 | 
|   | When overridden in a derived class, unlinks a specified source block from this ITarget block.  More...
  | 
|   | 
template<class _Type, class _FunctorType = std::function<void(_Type const&)>>
class Concurrency::call< _Type, _FunctorType >
A call messaging block is a multi-source, ordered target_block that invokes a specified function when receiving a message. 
- Template Parameters
 - 
  
    | _Type | The payload type of the messages propagated to this block.  | 
    | _FunctorType | The signature of functions that this block can accept.  | 
  
   
For more information, see Asynchronous Message Blocks. 
- See also
 - transformer Class
 
 
template<class _Type , class _FunctorType  = std::function<void(_Type const&)>> 
 
Constructs a call messaging block. 
- Parameters
 - 
  
    | _Func | A function that will be invoked for each accepted message.  | 
  
   
The runtime uses the default scheduler if you do not specify the _PScheduler  or _PScheduleGroup  parameters. 
The type _Call_method  is a functor with signature void (_Type const &) which is invoked by this call messaging block to process a message.
The type filter_method  is a functor with signature bool (_Type const &) which is invoked by this call messaging block to determine whether or not it should accept an offered message.
- See also
 - Scheduler Class, ScheduleGroup Class
 
void enable_batched_processing()
Enables batched processing for this block. 
Definition: agents.h:4757
 
_Call_method _M_pFunc
Definition: agents.h:7448
 
void initialize_target(_Inout_opt_ Scheduler *_PScheduler=NULL, _Inout_opt_ ScheduleGroup *_PScheduleGroup=NULL)
Initializes the base object. Specifically, the message_processor object needs to be initialized...
Definition: agents.h:4738
 
 
 
 
template<class _Type , class _FunctorType  = std::function<void(_Type const&)>> 
 
Constructs a call messaging block. 
- Parameters
 - 
  
    | _Filter | A filter function which determines whether offered messages should be accepted.  | 
  
   
The runtime uses the default scheduler if you do not specify the _PScheduler  or _PScheduleGroup  parameters. 
The type _Call_method  is a functor with signature void (_Type const &) which is invoked by this call messaging block to process a message.
The type filter_method  is a functor with signature bool (_Type const &) which is invoked by this call messaging block to determine whether or not it should accept an offered message.
- See also
 - Scheduler Class, ScheduleGroup Class
 
void enable_batched_processing()
Enables batched processing for this block. 
Definition: agents.h:4757
 
_Call_method _M_pFunc
Definition: agents.h:7448
 
void initialize_target(_Inout_opt_ Scheduler *_PScheduler=NULL, _Inout_opt_ ScheduleGroup *_PScheduleGroup=NULL)
Initializes the base object. Specifically, the message_processor object needs to be initialized...
Definition: agents.h:4738
 
void register_filter(filter_method const &_Filter)
Registers a filter method that will be invoked on every message received. 
Definition: agents.h:4705