tool/CommandSoeRead.cpp
changeset 1870 0cee1fb7f0fd
parent 1869 14f634f5b613
child 1872 23d4e121faaf
equal deleted inserted replaced
1869:14f634f5b613 1870:0cee1fb7f0fd
    76 
    76 
    77 /****************************************************************************/
    77 /****************************************************************************/
    78 
    78 
    79 void CommandSoeRead::execute(const StringVector &args)
    79 void CommandSoeRead::execute(const StringVector &args)
    80 {
    80 {
    81 	MasterIndexList masterIndices;
       
    82     SlaveList slaves;
    81     SlaveList slaves;
    83     stringstream err;
    82     stringstream err;
    84     const DataType *dataType = NULL;
    83     const DataType *dataType = NULL;
    85     ec_ioctl_slave_soe_read_t ioctl;
    84     ec_ioctl_slave_soe_read_t ioctl;
    86 
    85 
    94     } catch (runtime_error &e) {
    93     } catch (runtime_error &e) {
    95         err << "Invalid IDN '" << args[0] << "': " << e.what();
    94         err << "Invalid IDN '" << args[0] << "': " << e.what();
    96         throwInvalidUsageException(err);
    95         throwInvalidUsageException(err);
    97     }
    96     }
    98 
    97 
    99 	masterIndices = getMasterIndices();
    98     MasterDevice m(getSingleMasterIndex());
   100     if (masterIndices.size() != 1) {
       
   101         err << getName() << " requires to select a single master!";
       
   102         throwInvalidUsageException(err);
       
   103     }
       
   104     MasterDevice m(masterIndices.front());
       
   105     m.open(MasterDevice::Read);
    99     m.open(MasterDevice::Read);
   106     slaves = selectedSlaves(m);
   100     slaves = selectedSlaves(m);
   107     if (slaves.size() != 1) {
   101     if (slaves.size() != 1) {
   108         throwSingleSlaveRequired(slaves.size());
   102         throwSingleSlaveRequired(slaves.size());
   109     }
   103     }