This commit is contained in:
tzim 2013-04-16 15:25:46 +00:00
parent d897ecc4ab
commit ddbc724475
2 changed files with 109 additions and 112 deletions

View file

@ -1,20 +1,12 @@
<Properties>
<MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|x86" />
<MonoDevelop.Ide.Workbench ActiveDocument="DMX-2.0/SeqLinUI.cs">
<MonoDevelop.Ide.Workbench ActiveDocument="DMX-2.0/SequenceurLineaire.cs">
<Files>
<File FileName="DMX-2.0/Conduite.cs" Line="40" Column="23" />
<File FileName="DMX-2.0/AssemblyInfo.cs" Line="1" Column="1" />
<File FileName="DMX-2.0/UniversDMX.cs" Line="20" Column="13" />
<File FileName="DMX-2.0/SeqLinUI.cs" Line="127" Column="4" />
<File FileName="DMX-2.0/MainWindow.cs" Line="98" Column="47" />
<File FileName="DMX-2.0/SequenceurLineaire.cs" Line="69" Column="22" />
<File FileName="DMX-2.0/Conduite.cs" Line="29" Column="17" />
<File FileName="DMX-2.0/Sequenceur.cs" Line="42" Column="4" />
<File FileName="DMX-2.0/SequenceurLineaire.cs" Line="9" Column="3" />
<File FileName="DMX-2.0/IDriverDMX.cs" Line="13" Column="1" />
<File FileName="DMX-2.0/Main.cs" Line="17" Column="4" />
<File FileName="DMX-2.0/MainWindow.cs" Line="74" Column="4" />
<File FileName="DMX-2.0/SeqLinUI.cs" Line="38" Column="4" />
<File FileName="DMX-2.0/SequenceurUI.cs" Line="21" Column="3" />
<File FileName="DMX-2.0.sln" Line="4" Column="89" />
<File FileName="DMX-2.0/SelSeqCircuits.cs" Line="16" Column="18" />
<File FileName="DMX-2.0/GestionCircuits.cs" Line="104" Column="33" />
</Files>
</MonoDevelop.Ide.Workbench>
<MonoDevelop.Ide.DebuggingService.Breakpoints>

View file

@ -6,18 +6,11 @@ namespace DMX2
{
public class SequenceurLineaire : Sequenceur
{
TimeSpan timeStamp = TimeSpan.Zero;
public TimeSpan TimeStamp {
get {
return timeStamp;
}
}
public class Effet {
public class Effet
{
string _nom;
public Effet (string nom, Dictionary<Circuit,int> valeurs, TimeSpan duree, TimeSpan transition)
{
_nom = nom;
@ -25,6 +18,7 @@ namespace DMX2
_duree = duree;
_transition = transition;
}
public string Nom {
get {
return _nom;
@ -32,6 +26,7 @@ namespace DMX2
}
Dictionary<Circuit,int> _valeurs;
public int this [Circuit index] {
get {
if (!_valeurs.ContainsKey (index))
@ -39,16 +34,21 @@ namespace DMX2
return _valeurs [index];
}
}
public void RetireCircuit(Circuit c){
public void RetireCircuit (Circuit c)
{
_valeurs.Remove (c);
}
TimeSpan _duree = TimeSpan.Zero ;
TimeSpan _transition = TimeSpan.Zero;
public TimeSpan Duree {
get {
return _duree;
}
}
public TimeSpan Transition {
get {
return _transition;
@ -58,7 +58,30 @@ namespace DMX2
}
TimeSpan timeStamp = TimeSpan.Zero;
List<Circuit> circuitsSeq = new List<Circuit> ();
List<Effet> effets = new List<Effet> ();
Effet effetcourrant = null;
bool enTransition = false;
Dictionary<Circuit,int> valeurscourantes = new Dictionary<Circuit, int> ();
Dictionary<Circuit,int> valeursinitiales = new Dictionary<Circuit, int> ();
Dictionary<Circuit,bool> valeurschangees = new Dictionary<Circuit, bool> ();
SeqLinUI ui = null;
public SequenceurLineaire ()
{
}
public SequenceurLineaire (int id) :base (id)
{
}
public TimeSpan TimeStamp {
get {
return timeStamp;
}
}
public ReadOnlyCollection<Circuit> Circuits {
get {
@ -66,6 +89,12 @@ namespace DMX2
}
}
public ReadOnlyCollection<Effet> Effets {
get {
return effets.AsReadOnly ();
}
}
public void ChangeCircuits (System.Collections.Generic.List<Circuit> list)
{
foreach (var c in circuitsSeq.ToArray()) {
@ -102,30 +131,6 @@ namespace DMX2
}
}
List<Effet> effets = new List<Effet>();
public ReadOnlyCollection<Effet> Effets {
get {
return effets.AsReadOnly() ;
}
}
Effet effetcourrant=null;
bool enTransition=false;
Dictionary<Circuit,int> valeurscourantes = new Dictionary<Circuit, int>();
Dictionary<Circuit,int> valeursinitiales = new Dictionary<Circuit, int>();
Dictionary<Circuit,bool> valeurschangees = new Dictionary<Circuit, bool>();
public SequenceurLineaire ()
{
}
public SequenceurLineaire (int id) :base (id)
{
}
public override int EtatCircuit (Circuit c)
{
if (!circuitsSeq.Contains (c))
@ -160,7 +165,8 @@ namespace DMX2
}
if (timeStamp >= effetcourrant.Duree) {
int index = effets.IndexOf (effetcourrant) + 1;
if (index < effets.Count) ChangeEffet(index);
if (index < effets.Count)
ChangeEffet (index);
}
}
@ -171,7 +177,6 @@ namespace DMX2
valeurscourantes [c] = effetcourrant [c];
}
public void ChangeEffet (int index)
{
effetcourrant = effets [index];
@ -191,13 +196,13 @@ namespace DMX2
throw new System.NotImplementedException ();
}
SeqLinUI ui=null;
public override SequenceurUI GetUI ()
{
if (ui == null) {
ui = new SeqLinUI (this);
ui.Destroyed += UiDestroyed;;
ui.Destroyed += UiDestroyed;
}
return ui;