Пример #1
0
  private void processOptions(String opts) {
    String s2 = " ";

    DSS.auxParser.setCommand(opts); // load up aux parser

    EnergyMeterObj elem = activeEnergyMeterObj;

    /* Loop until no more options found */
    while (s2.length() > 0) {
      DSS.auxParser.getNextParam(); // ignore any parameter name not expecting any
      s2 = DSS.auxParser.stringValue().toLowerCase();
      if (s2.length() > 0) {
        switch (s2.charAt(0)) {
          case 'e':
            elem.setExcessFlag(true);
            break;
          case 't':
            elem.setExcessFlag(false);
            break;
          case 'r':
            elem.setZoneIsRadial(true);
            break;
          case 'm':
            elem.setZoneIsRadial(false);
            break;
          case 'c':
            elem.setVoltageUEOnly(false);
            break;
          case 'v':
            elem.setVoltageUEOnly(true);
            break;
        }
      }
    }
  }
Пример #2
0
  @Override
  protected int makeLike(String energyMeterName) {
    EnergyMeterObj elem;
    int success = 0;

    /* See if we can find this EnergyMeter name in the present collection */
    EnergyMeterObj other = (EnergyMeterObj) find(energyMeterName);

    if (other != null) {
      elem = activeEnergyMeterObj;

      elem.setNumPhases(other.getNumPhases());
      elem.setNumConds(other.getNumConds()); // force reallocation of terminal stuff

      elem.setElementName(other.getElementName());
      elem.setMeteredElement(other.getMeteredElement()); // pointer to target circuit element
      elem.setMeteredTerminalIdx(other.getMeteredTerminalIdx());
      elem.setExcessFlag(other.isExcessFlag());

      elem.setMaxZoneKVANorm(other.getMaxZoneKVANorm());
      elem.setMaxZoneKVAEmerg(other.getMaxZoneKVAEmerg());

      elem.setDefinedZoneListSize(other.getDefinedZoneListSize());
      elem.setDefinedZoneList(new String[elem.getDefinedZoneListSize()]);

      // copy strings over (actually incr ref count on string)
      for (int i = 0; i < elem.getDefinedZoneListSize(); i++)
        elem.getDefinedZoneList()[i] = other.getDefinedZoneList()[i];

      elem.setLocalOnly(other.isLocalOnly());
      elem.setVoltageUEOnly(other.isVoltageUEOnly());

      /* Boolean flags */
      elem.setLosses(other.isLosses());
      elem.setLineLosses(other.isLineLosses());
      elem.setXfmrLosses(other.isXfmrLosses());
      elem.setSeqLosses(other.isSeqLosses());
      elem.setThreePhaseLosses(other.isThreePhaseLosses());
      elem.setVBaseLosses(other.isVBaseLosses());
      elem.setPhaseVoltageReport(other.isPhaseVoltageReport());

      for (int i = 0; i < elem.getParentClass().getNumProperties(); i++)
        elem.setPropertyValue(i, other.getPropertyValue(i));

      success = 1;
    } else {
      DSS.doSimpleMsg("Error in EnergyMeter makeLike: \"" + energyMeterName + "\" not found.", 521);
    }

    return success;
  }