Hi, rosers!

I'm curious about where and how coordination function of conflicting controls
from various controllers is implemented in ROS stack.

I think that if we want to allow multiple controllers to be active simultaneously, 
we need some sort of coordination function somewhere. For example,
a robot can say Hi while gazing a person and carrying a load by manipulator.
Gazing may be controlled by a "face_tracking_controller" and/or carrying 
may be controlled by a "carrier_controller" or something. These two different
controllers may control different parts of a robot.

Does ROS allow multiple controllers to be active? If this is the case, where and
how is coordination function implemented?

Thanks,

- Yoonsoo