示例#1
0
 public static void next() throws Exception {
   if (REPEATMEDIA == ACTIVE) {
     REPEATMEDIA = UNACTIVE;
     GUI.getInstance().repeatTrack.setState(false);
   }
   GUI.getInstance().jTable.setValueAt(" ", CURRENTINDEXMEDIA, 0);
   if (CURRENTINDEXMEDIA == CURRENTPLAYLIST.getNumberOfMedia() - 1) {
     if (REPEATPLAYLIST == ACTIVE) {
       CURRENTINDEXMEDIA = 0;
       play(CURRENTPLAYLIST, CURRENTINDEXMEDIA);
     }
   } else {
     CURRENTINDEXMEDIA++;
     play(CURRENTPLAYLIST, CURRENTINDEXMEDIA);
   }
 }
示例#2
0
/** Created by sattas on 3/28/14. */
public class InputData {

  GUI t = GUI.getInstance();
  public static int size = 0;
  public static ArrayList timeList = new ArrayList();
  public static final int[] memarray =
      new int[] {255, 511, 767, 1023, 1279, 1535, 1791, 2047, 2303, 2559, 2815, 3071};

  public void readFile() throws IOException {
    try {

      FileInputStream fstream = new FileInputStream("dataIn.txt");
      DataInputStream in = new DataInputStream(fstream);
      BufferedReader br = new BufferedReader(new InputStreamReader(in));

      String strLine;
      int memi = -1;
      int strLineMemory = 59;

      while ((strLine = br.readLine()) != null) {

        t.data[strLineMemory++][1] = String.valueOf(strLine);
        memi++;

        size++;
        while ((strLine = br.readLine()) != null && !strLine.startsWith("*")) {

          String[] arr = strLine.split(" ");
          String command = arr[0];
          String operand = arr[1];

          toMemory(command, operand, memarray[memi]);
          memarray[memi] = memarray[memi] + 2;
          System.out.printf("%s %s ", command, operand);
        }
      }

      in.close();
    } catch (Exception e) { // Catch exception if any
      System.err.println("Error: " + e.getMessage());
    }

    MOSMain mos = new MOSMain();
    mos.planner();

    t.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    t.setSize(830, 800);
    t.setVisible(true);
    t.setTitle("Printer");
    sortTime();
  }

  public void toMemory(String command, String operand, int place) {

    if (GUI.data[place][1].equals("0")) {
      GUI.data[place][1] = command;
      GUI.data[place + 1][1] = operand;
      t.textfieldIC.setText("80");
      t.textfieldTI.setText("10");
    }

    t.textfieldMODE.setText("V");
    // pradiniai duomenys

    t.data[0][1] = "6"; // sokti, jei iskilo PI inerrupt
    t.data[1][1] = "18"; // sokti, jei iskilo SI inerrupt
    t.data[2][1] = "28"; // sokti, jei iskilo TI inerrupt
    t.data[3][1] = "38"; // sokti, jei iskilo IOI inerrupt

    // jei iskilo PI interupt:
    t.data[6][1] = "MVR1";
    t.data[7][1] = "48";
    t.data[8][1] = "LR1";
    t.data[9][1] = "17";
    t.data[10][1] = "MVR2";
    t.data[11][1] = "23";
    t.data[12][1] = "AD1";
    t.data[13][1] = "17";
    t.data[14][1] = "exit";

    // jei iskilo SI interupt:
    t.data[18][1] = "MVR1";
    t.data[19][1] = "478";
    t.data[20][1] = "LR1";
    t.data[21][1] = "27";
    t.data[22][1] = "MVR2";
    t.data[23][1] = "95";
    t.data[24][1] = "AD1";
    t.data[25][1] = "27";
    t.data[26][1] = "exit";

    // jei iskilo TI interupt:
    t.data[28][1] = "MVR1";
    t.data[29][1] = "72";
    t.data[30][1] = "LR1";
    t.data[31][1] = "37";
    t.data[32][1] = "MVR2";
    t.data[33][1] = "24";
    t.data[34][1] = "AD1";
    t.data[35][1] = "37";
    t.data[36][1] = "exit";

    // jei iskilo IOI interupt:
    t.data[38][1] = "MVR1";
    t.data[39][1] = "486";
    t.data[40][1] = "LR1";
    t.data[41][1] = "49";
    t.data[42][1] = "MVR2";
    t.data[43][1] = "64";
    t.data[44][1] = "AD1";
    t.data[45][1] = "49";
    t.data[46][1] = "exit";
  }

  public void sortTime() {
    int i = 59;
    // int [] temp = new int[InputData.size];

    while (Integer.valueOf(t.data[i][1]) != 0) {
      timeList.add(Integer.valueOf(t.data[i][1]));
      i++;
    }
    i = 59;

    Collections.sort(timeList);

    // return(temp);

    // System.out.println(getMinValue(temp));
    // for (int a=0;a<InputData.size;a++){
    //	data[i][1] = String.valueOf(temp[a]);
    //	i++;
    // }
  }
}
示例#3
0
 public static void stop2() {
   instance.setsStates(SunoneStates.IN_STOP);
   PLAYSTATUS = NEXTWASSTOP;
   player.stop();
   GUI.getInstance().reinitialiseComposantsLecteur();
 }
示例#4
0
  public static void play(Playlist playlist, int indexofmedia) throws Exception {
    // la valeur x est utilis�e pour le positionnement du JScroolPane de la
    // JTable
    // la valeur qu'elle cotient � �t� choisit par des experiences que nous
    // avons r�alis�s
    instance.setsStates(SunoneStates.IN_PLAY);
    int x = (4 * 414) / 23;
    // recup�ration du chemin d'une musique dans la playlist
    // la m�thode open file est d�finie dans la classe FileEdited permet juste
    // de lire et renvoyer le chemin d'un fichier
    BufferedReader br = FileEdited.openFile(playlist.getName(), indexofmedia);
    String s = br.readLine();
    br.close();
    CURRENTMEDIA = s;

    do { // debut la grande boucle qui boucle jusqu'� la fin du fin de la playlist
      // et r�p�te eventuellement lorsque Repeter la playlist(REPEATPLAYLIST) est
      // activ�e
      while (s != null) { // boucle de lecture jusqu'� la fin du fichier afin de reinitialiser
        // les param�tres pour la lecture avant de tester repeatPlaylist.

        if (s != null) // debut du trraitement pour chaque fichier multimedia
        // dont le chemin a �t� lu dans la playlist.
        {
          // localisation du m�dia gr�ce � la classe Medialocator de JMF
          // cette methode permet d'encapsuler le media elle permet nous permet
          // donc
          // de faire abstraction du format du fichier utili� ( qu'il soit
          // mp3,mpg, avi ou autres)
          MediaLocator mediaLocator = new MediaLocator((new File(s).toURL()).toString());
          do { // debut de la boucle dont la condition de sortit est que repeter
            // musique
            // ne soit pas activ�.si REPEATMEDIA est activ� il repete la m�me
            // musique.
            try {

              // creation du player. c'est sur lui que le traitement se fait
              // on utilise la classe Manager qui est le gestionnaire permettant
              // return
              // un player (qui est en fait une thread) et c'est sur elle que
              // les op�rations de lecture se feront.
              player = Manager.createPlayer(mediaLocator);

              // ajout du listener qui permet d'�couter les differents phases
              // par lesquels passent
              // le player: de la realisation au debut de la lecture comme nous
              // le verons dans son code
              player.addControllerListener(
                  new ControllerAdapter() {
                    double dureeTotale = 0;

                    // permet d'�couter la fin de la r�alisation du media cet �tat
                    // ne peut �tre atteint que lorsque
                    // la m�thode realise() a �t� appel� auparavant.
                    // lorsque la r�alisation se termine par exemple par exemple, on
                    // peut retirer plusieurs
                    // propri�t� du media. Comme la dur�e totale
                    public void realizeComplete(RealizeCompleteEvent re) {
                      // recuperation de la dur�e du media.
                      dureeTotale = player.getDuration().getSeconds();
                      try {
                        if (PLAYSTATUS != NEXTWASPAUSE) {
                          // quelques initialisations des labels centraux de
                          // l'interface graphique
                          // aussi bien celui du nom de l'artiste que celui de la
                          // dur�e totale de la musique
                          GUI.getInstance().jLabel6.setText("00:00/00:00");
                          GUI.getInstance().jLabel.setText(getArtistName(CURRENTMEDIA));
                          GUI.getInstance().jSlider1.setValue(0);
                        }
                      } catch (Exception e) {
                      }
                      GUI.getInstance().jSlider1.setMaximum((int) dureeTotale);
                      player.prefetch();
                    }

                    public void prefetchComplete(PrefetchCompleteEvent pe) {
                      GUI.getInstance().reinitialiseComposantsLecteur();
                      GUI.getInstance().mediaVisuel = player.getVisualComponent();
                      if (GUI.getInstance().mediaVisuel != null)
                        GUI.getInstance()
                            .mediaVisuel
                            .addMouseListener(
                                new MouseListener() {

                                  public void mouseClicked(MouseEvent e) {
                                    if (e.getClickCount() == 2) {
                                      if (fullScrean == 0) {
                                        fullScrean = 1;
                                        GUI.getInstance().fullScrean =
                                            GUI.getInstance().getFullScrean();
                                        Toolkit kit = Toolkit.getDefaultToolkit();
                                        Dimension screen = kit.getScreenSize();
                                        GUI.getInstance().fullScrean.setSize(screen);
                                        GUI.getInstance()
                                            .fullScrean
                                            .add(GUI.getInstance().mediaVisuel);
                                        GUI.getInstance().setVisible(false);
                                        GUI.getInstance().fullScrean.setAlwaysOnTop(true);
                                        GUI.getInstance().fullScrean.setVisible(true);

                                      } else {
                                        fullScrean = 0;
                                        GUI.getInstance()
                                            .videoPanel
                                            .add(
                                                GUI.getInstance().mediaVisuel, BorderLayout.CENTER);
                                        GUI.getInstance().fullScrean.setVisible(false);
                                        GUI.getInstance().setVisible(true);
                                        GUI.getInstance().fullScrean = null;
                                      }
                                    }
                                  }

                                  public void mouseEntered(MouseEvent e) {}

                                  public void mouseExited(MouseEvent e) {}

                                  public void mousePressed(MouseEvent e) {}

                                  public void mouseReleased(MouseEvent e) {}
                                });
                      player.getGainControl().setDB(-70 + GUI.getInstance().jSlider.getValue());
                      if (GUI.getInstance().mediaVisuel != null) {
                        GUI.getInstance()
                            .jContentPane
                            .add(GUI.getInstance().getJPanel4(), BorderLayout.CENTER);
                        GUI.getInstance()
                            .videoPanel
                            .add(GUI.getInstance().mediaVisuel, BorderLayout.CENTER);
                        GUI.getInstance().videoPanel.setVisible(true);
                        GUI.getInstance().videoPanel.setTitle("SunOne");
                        GUI.getInstance().videoPanel.pack();
                        if (GUI.getInstance().fullScrean != null) {
                          GUI.getInstance().fullScrean.add(GUI.getInstance().mediaVisuel);
                          GUI.getInstance().fullScrean.setVisible(true);
                        }
                      }
                      player.start();
                    }
                  });
              player.realize();

              while (player.getState() != Player.Started) {
                Thread.sleep(70);
              }
              String timeTotal = conversion((int) player.getDuration().getSeconds());
              GUI.getInstance().jTable.setValueAt(timeTotal, CURRENTINDEXMEDIA, 2);
              GUI.getInstance().jTable.setValueAt(GUI.fleche, CURRENTINDEXMEDIA, 0);
              if (CURRENTINDEXMEDIA != 0)
                GUI.getInstance().jTable.setValueAt(" ", CURRENTINDEXMEDIA - 1, 0);
              GUI.getInstance()
                  .jScrollPane
                  .getVerticalScrollBar()
                  .setValue(((4 * 414) / 23) * (CURRENTINDEXMEDIA / 4));
              x += x;
              scrollIncrement = 0;
              if (PLAYSTATUS == NEXTWASPAUSE) {
                player.setMediaTime(TIME);
                PLAYSTATUS = -1;
              }
              while (player.getState() == Player.Started) {
                Thread.sleep(1000);
                int i = (int) player.getMediaTime().getSeconds();
                GUI.getInstance().jSlider1.setValue(i);
                GUI.getInstance().jLabel6.setText(conversion(i) + "/" + timeTotal);
              }

            } catch (NoPlayerException noplayeur) {

              noplayeur.printStackTrace();
            } catch (IOException io) {
              io.printStackTrace();
            }
          } while (REPEATMEDIA == ACTIVE);
        }
        CURRENTINDEXMEDIA = CURRENTINDEXMEDIA + 1;
        br = FileEdited.openFile(playlist.getName(), CURRENTINDEXMEDIA);
        s = br.readLine();
        br.close();
        CURRENTMEDIA = s;
      } // fin de while on a atteint la fin du fichier
      // est assez important car il faut reinitialiser les param�tres et tester
      // si repeat eat actif
      // c'est � dire se replacer au debut du fichier.
      br = FileEdited.openFile(playlist.NAME, 0);
      s = br.readLine();
      br.close();
      CURRENTMEDIA = s;
      CURRENTINDEXMEDIA = 0;

    } while (REPEATPLAYLIST == ACTIVE); // fin de la grande boucle qui tete repeat
    // playlist

  }