Circuit.java~ 1.5 KB
import java.util.* ;
    
public class Circuit  {
    String Nom;
    java.util.List<Composant> composants = new ArrayList<Composant>();
    
    protected SondesTable tableSondes = new SondesTable();
    
    public void traceEtats(){
	System.out.println(Nom );
	for(Composant r : composants){
	    System.out.println( r.traceEtat()  );
	}
    }
	
    
    public List<String> nomenclature(){
	java.util.List<String> res= new ArrayList<String>(); 
	for(Composant r : composants){
	    res.add(r.getId());
	}
	return res;
    }
    
    public List<Interrupteur> getIns(){
	java.util.List<Interrupteur> res = new ArrayList<Interrupteur>();
	for(Composant r : composants){
	    if(r instanceof Interrupteur){res.add((Interrupteur)r);}
	}
	return res;
    }    
    public void description(){
	System.out.println(Nom );
	for(Composant r : composants){
	    System.out.println( r.description()  );
	}
    }
    
    public List<Vanne> getOuts(){
	java.util.List<Vanne> res = new ArrayList<Vanne>();
	for(Composant r : composants){
	    if(r instanceof Vanne){res.add((Vanne)r);}
	}
	return res;
    }
    
    public Circuit(String nom, Composant[] cps){
	Nom=nom;
	composants.addAll(Arrays.asList(cps));
	Collections.sort(composants);
    }

    public void probe(){
	for(Composant c : composants){
	    ((Porte)c).probe(tableSondes);
	}
    }
    public void resetSondes(){
	tableSondes.resetSondes();
    }
    public void unprobe(){
	for(Composant c : composants){
	    ((Porte)c).unprobe(tableSondes);
	}
    }
    
    
   
       
}