anchor.diff:  handle_call({ get_devices }, _From, State) ->
       get_devices(State);
   
  -
   handle_call({ get_devices, CapKey }, _From, State) ->
       get_devices(State, CapKey);
   
   handle_call({ get_devices, CapKey, CapSpec }, _From, State) ->
       get_devices(State, CapKey, CapSpec);
  +
  +handle_call({ add_device, FileName }, _From, State) ->
  +    io:fwrite("FileName: ~p~n", [FileName]),
  +    add_new_device(filename:dirname(FileName),
  +		   filename:basename(FileName),
  +		   State);
  +
   
   
   %%--------------------------------------------------------------------
  
positive.code: 
  
  get_devices(State) when State#state.devices =:= [] ->
      LoadRes = erl_ddll:load(code:priv_dir(inpevt), ?INPEVT_DRIVER),
  
      if LoadRes =:= ok;
         LoadRes =:= { error, already_loaded } ->
              {Result, Devices } = scan_event_directory(?INPEVT_DIRECTORY),
              case Result of
                  ok ->
                      { reply, { ok, Devices }, #state { devices = Devices } };
  
                  _ ->
                      { reply, Result, State }
              end;
         true -> { reply, LoadRes, State }
      end;
  
  
  get_devices(State) when State#state.devices =/= [] ->
  
negative.code: -export([init/1, handle_call/3, handle_cast/2, handle_info/2,
           terminate/2, code_change/3]).
  
  -export([add_device/1]).
  
  -define(SERVER, ?MODULE).
  
  -record(syn, { element:: report | config | mt_report | mt_dropped }).
  