Skip to content

Commit

Permalink
Update IS-11 docs
Browse files Browse the repository at this point in the history
  • Loading branch information
N-Nagorny committed Mar 21, 2024
1 parent 7bce8b5 commit 7d47286
Showing 1 changed file with 12 additions and 10 deletions.
22 changes: 12 additions & 10 deletions Documents/IS-11.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,23 +15,25 @@ See the sequence diagram below on how a Node uses these callbacks.

### base_edid_handler

Callback inputs:
Callback input parameters:
- an Input ID
- an Optional of a Base EDID

Callback outputs:
Callback output parameters:
- an exception if present

``base_edid_handler`` notifies application-specific code about a Base EDID modification request (``PUT`` and ``DELETE`` operations).

It's expected to throw on ``PUT`` in order to indicate failures (e.g. an EDID validation failure).

Since ``nmos-cpp`` doesn't parse EDID, the reference implementation of this callback violates the spec because it doesn't reject invalid EDIDs. Production implementations using IS-11 Inputs with Base EDID support must replace the reference callback with an EDID-aware one.

### effective_edid_setter

Callback inputs:
Callback input parameters:
- an Input ID

Callback outputs:
Callback output parameters:
- a Variant of an Effective EDID or an href to it

``effective_edid_setter`` demands application-specific code to set Effective EDID of a specific Input when it may be required. These cases are:
Expand All @@ -42,11 +44,11 @@ It's expected to never throw.

### active_constraints_handler

Callback inputs:
Callback input parameters:
- a Sender resource
- requested Constraint Sets

Callback outputs:
Callback output parameters:
- a Boolean indicating whether the device can adhere to the requested Constraint Sets
- intersections of all combinations of each of the requested Constraint Sets and each of the Constraint Sets that describe the internal device capabilities
- an exception if present
Expand All @@ -71,14 +73,14 @@ See the sequence diagram below on how this whole process looks like.

### sender_validator

Callback inputs:
Callback input parameters:
- a Sender resource
- its Connection Sender resource
- its Source resource
- its Flow resource
- Constraint Sets from Active Constraints

Callback outputs:
Callback output parameters:
- a Sender state
- a complementary debug message if present

Expand All @@ -88,11 +90,11 @@ It's expected to never throw.

### receiver_validator

Callback inputs:
Callback input parameters:
- a Receiver resource
- its transport file from Connection API /active

Callback outputs:
Callback output parameters:
- a Receiver state
- a complementary debug message if present

Expand Down

0 comments on commit 7d47286

Please sign in to comment.