btstack/docs/l2cap.gv
2011-07-08 17:31:09 +00:00

58 lines
2.8 KiB
Plaintext

digraph l2cap {
// rankdir=LR;
size="8,5"
// orientation=landscape;
// rotate = 90;
OPEN [shape=doublecircle];
CLOSE [shape=doublecircle];
// DISCONNECT_REQUEST handling for non-open state
// WAIT_CONNECT_RSP->WILL_SEND_DISCONNECT_RESPONSE [label = "RECEIVED DISCONNECT_REQUEST"];
// WAIT_CONFIG_REQ_OR_SEND_CONFIG_REQ->WILL_SEND_DISCONNECT_RESPONSE [label = "DISCONNECTION_REQUEST"];
// WAIT_CONFIG_REQ_RSP_OR_CONFIG_REQ->WILL_SEND_DISCONNECT_RESPONSE [ label = "RECVEIVED DISCONNECTION_REQUEST"];
// WAIT_CONFIG_REQ->WILL_SEND_DISCONNECT_RESPONSE [label = "RECEIVED DISCONNECTION_REQUEST"];
// WAIT_CONFIG_REQ_RSP->WILL_SEND_DISCONNECT_RESPONSE [label = "RECEIVED DISCONNECTION_REQUEST"];
// WAIT_DISCONNECT->WILL_SEND_DISCONNECT_RESPONSE [label = "RECEIVED DISCONNECT_REQUEST"];
// l2cap_run
WILL_SEND_CREATE_CONNECTION -> WAIT_CONNECTION_COMPLETE [label = "SEND CREATE CONNECTION"];
WILL_SEND_CONNECTION_RESPONSE_DECLINE -> CLOSE [label = "SEND CONNECTION_RESPONSE ERR"];
WILL_SEND_CONNECTION_RESPONSE_ACCEPT -> CONFIG [label = "SEND CONNECTION_RESPONSE OK"];
WILL_SEND_CONNECTION_REQUEST -> WAIT_CONNECT_RSP [label = "SEND CONNECTION_REQUEST"];
WILL_SEND_DISCONNECT_RESPONSE -> CLOSE [ label = "SEND DISCONNECTION_RESPONSE"];
WILL_SEND_DISCONNECT_REQUEST -> WAIT_DISCONNECT [label = "SEND DISCONNECTION_REQUEST"];
// l2cap_create_channel_internal
CLOSE -> WILL_SEND_CREATE_CONNECTION [label = "l2cap create channel internal"];
// l2cap_disconnect_internal
OPEN -> WILL_SEND_DISCONNECT_REQUEST [label = "l2cap disconnect internal"];
// l2cap_handle_connection_success_for_addr
WAIT_CONNECTION_COMPLETE->WILL_SEND_CONNECTION_REQUEST [ label = "outgoing,baseband open"];
// l2cap_handle_disconnect_request
OPEN -> WILL_SEND_DISCONNECT_RESPONSE [label = "RECEIVED DISCONNECT_REQUEST"];
// l2cap_handle_connection_request
CLOSE -> WAIT_CLIENT_ACCEPT_OR_REJECT [label = "RECEIVED CONNECTION REQUEST"];
// l2cap_accept_connection_internal
WAIT_CLIENT_ACCEPT_OR_REJECT -> WILL_SEND_CONNECTION_RESPONSE_ACCEPT [ label = "l2cap accept internal"];
// l2cap_decline_connection_internal
WAIT_CLIENT_ACCEPT_OR_REJECT -> WILL_SEND_CONNECTION_RESPONSE_DECLINE [ label = "l2cap decline internal"];
// l2cap_signaling_handler_channel
WAIT_CONNECT_RSP->CONFIG [ label = "CONNECTION_RESPONSE OK"];
WAIT_CONNECT_RSP->CLOSE [label = "CONNECTION_RESPONSE ERR"];
WAIT_DISCONNECT->CLOSE [label = "RECEIVED DISCONNECT_RESPONSE"];
CONFIG->OPEN [label="RCVD CONF RSP && SENT CONF RSP"];
CONFIG->CONFIG[label="send and respond CONF REQ"];
// l2cap_close_connection
OPEN->WILL_SEND_DISCONNECT_REQUEST [label = "client closed"];
}