let send_to_trans_from_group msg rdsc cont =
log_output Debug "In Rcomm.To_transport.send_to_trans_from_group";
let req =
begin match msg with
| Create _
| Destroy _
| Is_valid _ ->
Transport_req
| Timer_set _
| Timer_cancel _
| Timeout _ ->
Timer_req
| Select _ ->
let rdsc = Util.get_val_of rdsc in
Select_req(RcommDescriptor.get_tdsc rdsc)
| Message _ ->
let rdsc = Util.get_val_of rdsc in
Message_req(RcommDescriptor.get_tdsc rdsc)
end
in
log_lazy Debug
(lazy ("In Rcomm.To_transport.send_to_trans_from_group : request -> "^
(string_of_send_request (fun _ -> "gdsc") req)^" "));
begin match req with
| Transport_req ->
trans_request_store := Channel_message_store.set
!trans_request_store msg cont
| Timer_req ->
timer_request_store := Channel_message_store.set
!timer_request_store msg cont
| Select_req(dsc) ->
assert(not (THash.mem select_request_store dsc));
THash.add select_request_store dsc (msg,cont)
| Message_req(dsc) ->
assert(not (THash.mem message_request_store dsc));
THash.add message_request_store dsc (msg,cont)
end;
send_request req