Examples of GreedyTagAllocator


Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

  }
   
  public void testProjectIO() throws IOException, SequenceFormatException, DuplicateIDException {
    File f1 = new File("IOTest.prx"); //$NON-NLS-1$
    File f2 = new File("IOTest2.prx"); //$NON-NLS-1$
    Task t = pm.getProbeDesignTask(false,true, false,new GoodFairAcceptor(),new BestQualitySelector(),new DefaultProbeDesigner(new GreedyTagAllocator()),new DefaultTSSConstructor(),new StreamErrorHandler(System.err,true));
    t.run();   
   
    TagAllocationTable tat1 = pm.getProject().getTagAllocationTable();
   
    new ProjectXMLIOTask(pm,null,new FileWriter(f1)).run();
    new ProjectXMLIOTask(pm,null,new FileReader(f1)).run();   
    new ProjectXMLIOTask(pm,null,new FileWriter(f2)).run();
    new ProjectXMLIOTask(pm,null,new FileReader(f2)).run();   
    assertEquals(f1.length(),f2.length());
    TagAllocationTable tat2 = pm.getProject().getTagAllocationTable();
   
    assertTrue(tat1.equals(tat2));
   
    t = pm.getProbeDesignTask(false,true, false,new GoodFairAcceptor(),new BestQualitySelector(),new DefaultProbeDesigner(new GreedyTagAllocator()),new DefaultTSSConstructor(),null);
    t.run();   

    new ProjectXMLIOTask(pm,null,new FileWriter(f2)).run();
    new ProjectXMLIOTask(pm,null,new FileReader(f2)).run();   
   
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

    proj.getTargets().addSequence(t1);
    pm.setProject(proj);

    //First design, expected to result in a tag being allocated,
    //and the tag allocation table marking the tag as used
    pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true)).run();
    Probe p = proj.getProbes().getSequenceAt(0);
   
    assertTrue("Tag allocation failed", p.getTags().size()==1);    //$NON-NLS-1$

    //New design, without tag reset, expected to fail because tag is already used
    pm.getProbeDesignTask(false, false, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true)).run();  
    p = proj.getProbes().getSequenceAt(0);
   
    assertTrue("Tag allocation should have failed due to no tags left, but seems to have succeeded",p.getTags().size() == 0); //$NON-NLS-1$
   
    //New design, with reset. Expected to succeed because no tags should be used now
    pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true)).run();          
    p = proj.getProbes().getSequenceAt(0);   
   
    assertTrue("Tag allocation failed after reset",p.getTags().size() == 1);     //$NON-NLS-1$

  }
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

    });
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_ARMS,"false");
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_CANDIDATES,"false");
     
      //First design, expected to result in failure.
      pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodFairAcceptor(), new BestQualitySelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true)).run();
      Probe p = proj.getProbes().getSequenceAt(0);
              
      assertEquals("Tag allocation should have failed", 0, p.getTags().size());    //$NON-NLS-1$
      assertEquals("Quality expected to be bad", ProbeMakerConstants.BAD_QUALITY, ProbeMakerPropertyUtils.getRank(p));     
     
     
    //New design, with accept OK pairs. Expected to generate candidates, but fail.     
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_ARMS,"true");
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_CANDIDATES,"false");
      ProbeDesignTask task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodFairAcceptor(), new BestQualitySelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
      task.run();
      long candCount = task.getCandidatesGenerated();
      p = proj.getProbes().getSequenceAt(0);
     
      assertEquals("Tag allocation should have failed", 0, p.getTags().size());    //$NON-NLS-1$
      assertEquals("Candidates expected", libraries1_1[0].size() , candCount);
      assertEquals("Quality expected to be bad", ProbeMakerConstants.BAD_QUALITY, ProbeMakerPropertyUtils.getRank(p));     
     
    //New design, with accept OK pairs AND candidates. Expected to generate candidates, and find candidate with warning.     
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_ARMS,"true");
      proj.getSettings().getDesignParameters().put(Analyzer.PROP_ACCEPT_OK_CANDIDATES,"true");
      task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodFairAcceptor(), new BestQualitySelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
      task.run();
      candCount = task.getCandidatesGenerated();
      p = proj.getProbes().getSequenceAt(0);
      System.out.println("Probe");
      for (Iterator<KeyValue> i = p.getPropertySet().getKeyValueIterator();i.hasNext();) {
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

    proj.getSettings().addCandidateModuleStage1(dummy);

    pm.setProject(proj);

    //Make a new design after clearing tag usage   
    Task task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    task.run();
    Probe p = proj.getProbes().getSequenceAt(0);
    assertTrue("Tag allocated despite warning message",p.getTags().size() == 0); //$NON-NLS-1$

    proj.getSettings().getCandidateModulesStage1().clear();
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

    pm.setProject(proj);
   
    dummy.setData(DummyModule.KEY_WARNING_CHANCE, new Integer(100));
    proj.getSettings().addCandidateModuleStage1(dummy);

    ProbeDesignTask task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    task.run();

    //Check the number of candidates tested
    long candCount = task.getCandidatesGenerated();  
    assertTrue("Tag selection, 10 candidates expected, " + candCount + " generated.",candCount==10); //$NON-NLS-1$ //$NON-NLS-2$
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

    proj.getSettings().getDesignParameters().put(TagAllocator.PROP_USE_SPACER,"TRUE"); //$NON-NLS-1$
    proj.getSettings().getDesignParameters().put(TagAllocator.PROP_PREFERRED_LENGTH,String.valueOf(61));
    proj.getSettings().getDesignParameters().put(TagAllocator.PROP_SPACER_SEQUENCE,"CT");     //$NON-NLS-1$
    pm.setProject(proj);

    GreedyTagAllocator ta = new GreedyTagAllocator();          
    ProbeDesignTask task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(ta), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    //task.addListener(new TaskListener());
    task.run();

    long candCount = task.getCandidatesGenerated();

    //Check the number of candidates tested
    assertEquals("Constant spacer, 10 candidates expected, " + candCount + " generated.", candCount, 10); //$NON-NLS-1$ //$NON-NLS-2$

    proj.getSettings().getDesignParameters().put(TagAllocator.PROP_SPACER_SEQUENCE,""); //$NON-NLS-1$

    ta = new GreedyTagAllocator();
    //ta.setDebug(3,System.out);

    task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(), new NoSelector(), new DefaultProbeDesigner(ta), new DefaultTSSPairDesigner(new DefaultTSSConstructor()) ,new StreamErrorHandler(System.out,true));
    //task.addListener(new TaskListener());
    task.run();
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

//  Expand target and test use unique mode, 2 candidates expected
    TargetHandler.expandTargets(pm.getProject().getTargets());
    proj.getSettings().getArmModules().clear();   

    task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(),
        new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    task.run();
    candCount = task.getCandidatesGenerated();
    Probe p1 = pm.getProject().getProbes().getSequenceAt(0);
    Probe p2 = pm.getProject().getProbes().getSequenceAt(1);

    assertTrue("2 candidates expected, " + candCount + " generated.",candCount == 2); //$NON-NLS-1$ //$NON-NLS-2$
    assertTrue("Same tags allocated in unique mode!",p1.getTagAt(0)!=p2.getTagAt(0)); //$NON-NLS-1$

//  Expand target and test use per group, no modules, 2 candidates expected       
    libraries1_10[0].setMode(TagLibrary.USE_PER_GROUP);          

    task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(),
        new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    task.run();
    candCount = task.getCandidatesGenerated();
    p1 = pm.getProject().getProbes().getSequenceAt(0);
    p2 = pm.getProject().getProbes().getSequenceAt(1);

    assertTrue("2 candidates expected, " + candCount + " generated.",candCount == 2); //$NON-NLS-1$ //$NON-NLS-2$
    assertTrue("Different tags allocated in group mode!",p1.getTagAt(0)==p2.getTagAt(0)); //$NON-NLS-1$

//  Still expanded targets, per group mode, greedy allocator, dummy module in stage 1.
    //Expect 20 candidates generated
    libraries1_10[0].setMode(TagLibrary.USE_PER_GROUP);          
    proj.getSettings().getCandidateModulesStage1().add(dummy);   
      
    task = pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new GoodAcceptor(),
        new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true));
    task.run();
   
    candCount = task.getCandidatesGenerated();   
    assertTrue("20 candidates expected, " + candCount + " generated.",candCount == 20);      //$NON-NLS-1$ //$NON-NLS-2$
  }
View Full Code Here

Examples of org.moltools.apps.probemaker.ext.ta.GreedyTagAllocator

  }

  protected Probe[] performModeTest(byte mode) {
    pm.getProject().getTagSettings().getTagLibraries()[0].setMode(mode);
    pm.getProbeDesignTask(false, true, null, new DefaultNamingScheme(), new AllAcceptor(),
        new NoSelector(), new DefaultProbeDesigner(new GreedyTagAllocator()), new DefaultTSSPairDesigner(new DefaultTSSConstructor()), new StreamErrorHandler(System.out,true)).run();
   
    Probe[] probes = pm.getProject().getProbes().getSequenceList().toArray(new Probe[5]);
    return probes;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.