uset and doco
[melted] / src / miracle / miracle_unit_commands.c
index e0f6003..99de3f4 100644 (file)
@@ -373,179 +373,24 @@ int miracle_get_unit_status( command_argument cmd_arg )
 
 int miracle_set_unit_property( command_argument cmd_arg )
 {
-       /*
-       dv_unit unit = miracle_get_unit(cmd_arg->unit);
-       
+       miracle_unit unit = miracle_get_unit(cmd_arg->unit);
+       char *name_value = (char*) cmd_arg->argument;
        if (unit == NULL)
                return RESPONSE_INVALID_UNIT;
        else
-       {
-               char *key = (char*) cmd_arg->argument;
-               char *value = NULL;
-
-               value = strchr( key, '=' );
-               if (value == NULL)
-                       return RESPONSE_OUT_OF_RANGE;
-               value[0] = 0;
-               value++;
-               miracle_log( LOG_DEBUG, "USET %s = %s", key, value );
-               if ( strncasecmp( key, "eof", 1024) == 0 )
-               {
-                       if ( strncasecmp( value, "pause", 1024) == 0)
-                               dv_unit_set_eof_action( unit, dv_player_pause );
-                       else if ( strncasecmp( value, "loop", 1024) == 0)
-                               dv_unit_set_eof_action( unit, dv_player_loop );
-                       else if ( strncasecmp( value, "stop", 1024) == 0)
-                               dv_unit_set_eof_action( unit, dv_player_terminate );
-                       else if ( strncasecmp( value, "clean", 1024) == 0)
-                               dv_unit_set_eof_action( unit, dv_player_clean_loop );
-                       else
-                               return RESPONSE_OUT_OF_RANGE;
-               }
-               else if ( strncasecmp( key, "points", 1024) == 0 )
-               {
-                       if ( strncasecmp( value, "use", 1024) == 0)
-                               dv_unit_set_mode( unit, dv_clip_mode_restricted );
-                       else if ( strncasecmp( value, "ignore", 1024) == 0)
-                               dv_unit_set_mode( unit, dv_clip_mode_unrestricted );
-                       else
-                               return RESPONSE_OUT_OF_RANGE;
-               }
-               else if ( strncasecmp( key, "syt_offset", 1024) == 0 )
-               {
-                       dv_unit_set_syt_offset( unit, atoi( value ) );
-               }
-               else if ( strncasecmp( key, "cip_n", 1024) == 0 )
-               {
-                       dv_unit_set_cip_n( unit, atoi( value ) );
-               }
-               else if ( strncasecmp( key, "cip_d", 1024) == 0 )
-               {
-                       dv_unit_set_cip_d( unit, atoi( value ) );
-               }
-               else if ( strncasecmp( key, "size", 1024) == 0 )
-               {
-                       dv_unit_set_buffer_size( unit, atoi( value ) );
-               }
-               else if ( strncasecmp( key, "n_frames", 1024) == 0 )
-               {
-                       dv_unit_set_n_frames( unit, atoi( value ) );
-               }               
-               else if ( strncasecmp( key, "n_fill", 1024) == 0 )
-               {
-                       dv_unit_set_n_fill( unit, atoi( value ) );
-               }               
-               else
-                       return RESPONSE_OUT_OF_RANGE;
-       }
-       */
+               miracle_unit_set( unit, name_value );
        return RESPONSE_SUCCESS;
 }
 
 int miracle_get_unit_property( command_argument cmd_arg )
 {
-       /*
-       dv_unit unit = miracle_get_unit(cmd_arg->unit);
-       
+       miracle_unit unit = miracle_get_unit(cmd_arg->unit);
+       char *name = (char*) cmd_arg->argument;
+       char *value = miracle_unit_get( unit, name );
        if (unit == NULL)
                return RESPONSE_INVALID_UNIT;
-       else
-       {
-               char *key = (char*) cmd_arg->argument;
-
-               if ( strncasecmp( key, "eof", 1024) == 0 )
-               {
-                       switch ( dv_unit_get_eof_action( unit ) )
-                       {
-                               case dv_player_pause:
-                                       dv_response_write( cmd_arg->response, "pause", strlen("pause") );
-                                       break;
-                               case dv_player_loop:
-                                       dv_response_write( cmd_arg->response, "loop", strlen("loop") );
-                                       break;
-                               case dv_player_terminate:
-                                       dv_response_write( cmd_arg->response, "stop", strlen("stop") );
-                                       break;
-                               case dv_player_clean_loop:
-                                       dv_response_write( cmd_arg->response, "clean", strlen("clean") );
-                                       break;
-                       }
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "points", 1024) == 0 )
-               {
-                       if ( dv_unit_get_mode( unit ) == dv_clip_mode_restricted )
-                               dv_response_write( cmd_arg->response, "use", strlen("use") );
-                       else
-                               dv_response_write( cmd_arg->response, "ignore", strlen("ignore") );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "syt_offset", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_syt_offset( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "cip_n", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_cip_n( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "cip_d", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_cip_d( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "size", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_buffer_size( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "n_frames", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_n_frames( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "n_fill", 1024) == 0 )
-               {
-                       dv_response_printf( cmd_arg->response, 1024, "%d\n",
-                               dv_unit_get_n_fill( unit ) );
-                       return RESPONSE_SUCCESS_1;
-               }
-               else if ( strncasecmp( key, "all", 1024 ) == 0 )
-               {
-                       switch ( dv_unit_get_eof_action( unit ) )
-                       {
-                               case dv_player_pause:
-                                       dv_response_write( cmd_arg->response, "eof=pause\n", strlen("pause") );
-                                       break;
-                               case dv_player_loop:
-                                       dv_response_write( cmd_arg->response, "eof=loop\n", strlen("loop") );
-                                       break;
-                               case dv_player_terminate:
-                                       dv_response_write( cmd_arg->response, "eof=stop\n", strlen("stop") );
-                                       break;
-                               case dv_player_clean_loop:
-                                       dv_response_write( cmd_arg->response, "eof=clean\n", strlen("clean") );
-                                       break;
-                       }
-                       if ( dv_unit_get_mode( unit ) == dv_clip_mode_restricted )
-                               dv_response_write( cmd_arg->response, "points=use\n", strlen("use") );
-                       else
-                               dv_response_write( cmd_arg->response, "points=ignore\n", strlen("ignore") );
-                       dv_response_printf( cmd_arg->response, 1024, "syt_offset=%d\n", dv_unit_get_syt_offset( unit ) );
-                       dv_response_printf( cmd_arg->response, 1024, "cip_n=%d\n", dv_unit_get_cip_n( unit ) );
-                       dv_response_printf( cmd_arg->response, 1024, "cip_d=%d\n", dv_unit_get_cip_d( unit ) );
-                       dv_response_printf( cmd_arg->response, 1024, "size=%d\n", dv_unit_get_buffer_size( unit ) );
-                       dv_response_printf( cmd_arg->response, 1024, "n_frames=%d\n", dv_unit_get_n_frames( unit ) );
-                       dv_response_printf( cmd_arg->response, 1024, "n_fill=%d\n", dv_unit_get_n_fill( unit ) );
-               }
-       }
-       */
+       else if ( value != NULL )
+               valerie_response_printf( cmd_arg->response, 1024, "%s\n", value );
        return RESPONSE_SUCCESS;
 }