diff --git a/lib/c/labcomm.c b/lib/c/labcomm.c index 2b982e6f852e2c0098980bd43cbba198119f7ee2..bb487c0e988ed11dd9c56f3ed5700cb0ca9d47d0 100644 --- a/lib/c/labcomm.c +++ b/lib/c/labcomm.c @@ -355,6 +355,9 @@ static int signature_writer( } break; case labcomm_writer_available: { } break; + case labcomm_writer_send_signature: + case labcomm_writer_user_action: + return -ENOTSUP; //HERE BE DRAGONS: should probably be cleaned up } return 0; diff --git a/lib/c/labcomm.h b/lib/c/labcomm.h index 6d67fb2e125adae13bf3180b7a7cab042f4c70ea..9770188e3b4edc07fabbe96833199526642cc5ca 100644 --- a/lib/c/labcomm.h +++ b/lib/c/labcomm.h @@ -124,13 +124,14 @@ void labcomm_decoder_free( */ typedef enum { - labcomm_writer_alloc, - labcomm_writer_free, - labcomm_writer_start, - labcomm_writer_continue, - labcomm_writer_end, - labcomm_writer_available, - labcomm_writer_send_signature + labcomm_writer_alloc, // no args + labcomm_writer_free, // no args + labcomm_writer_start, // no args + labcomm_writer_continue, // no args + labcomm_writer_end, // no args + labcomm_writer_available, // no args + labcomm_writer_send_signature, // args = (labcomm_signature_t*, struct labcomm_encoder*) + labcomm_writer_user_action // args = (int user_action, ... defined by the writer) } labcomm_writer_action_t; typedef struct labcomm_writer { diff --git a/lib/c/labcomm_fd_reader_writer.c b/lib/c/labcomm_fd_reader_writer.c index 7eb68bddb9167d80866460e7cd58dc329d6b7b93..7f3e3e39d3c8c6be95d9fef6997070fda34f0a33 100644 --- a/lib/c/labcomm_fd_reader_writer.c +++ b/lib/c/labcomm_fd_reader_writer.c @@ -112,6 +112,9 @@ int labcomm_fd_writer( labcomm_encode_signature(e, signature); } break; + case labcomm_writer_user_action: { + result = -ENOTSUP; + } break; } return result; }