Beispiel #1
0
  // This is an overload of redetectCaptureDevices.  It is meant to only redetect devices for
  // one CaptureDeviceManager.  For instance discover NetworkEncoder devices
  public void redetectCaptureDevices(CaptureDeviceManager mgr) {
    if (Sage.DBG) System.out.println("MMC is re-doing the capture device detection on " + mgr);
    mgr.detectCaptureDevices(
        (CaptureDevice[]) globalEncoderMap.values().toArray(new CaptureDevice[0]));
    CaptureDevice[] newDevs = mgr.getCaptureDevices();

    if (Sage.DBG) System.out.println("devices detected=" + java.util.Arrays.asList(newDevs));
    updateCaptureDeviceObjects(newDevs);

    if (Sage.DBG) System.out.println("EncoderMap=" + globalEncoderMap);
    NetworkClient.distributeRecursivePropertyChange("mmc/encoders");
    Seeker.getInstance().kick();
    Scheduler.getInstance().kick(true);
  }
Beispiel #2
0
  private void init() {
    alive = true;

    for (int i = 0; i < capDevMgrs.size(); i++) {
      CaptureDeviceManager mgr = (CaptureDeviceManager) capDevMgrs.get(i);
      if (Sage.DBG) System.out.println("MMC calling detectCaptureDevices on " + mgr);
      mgr.detectCaptureDevices(
          (CaptureDevice[]) globalEncoderMap.values().toArray(new CaptureDevice[0]));
      CaptureDevice[] newDevs = mgr.getCaptureDevices();
      if (Sage.DBG) System.out.println("devices detected=" + java.util.Arrays.asList(newDevs));
      for (int j = 0; j < newDevs.length; j++)
        globalEncoderMap.put(newDevs[j].getName(), newDevs[j]);

      if (Sage.DBG) System.out.println("EncoderMap=" + globalEncoderMap);
    }
  }