Modifs diverses apres tests sur stager
This commit is contained in:
parent
4968abe429
commit
9efb590fea
6 changed files with 79 additions and 23 deletions
|
|
@ -74,7 +74,7 @@ namespace DMX2
|
||||||
// Démarrage du thread
|
// Démarrage du thread
|
||||||
tickThread = new Thread (new ThreadStart (ThreadLoop));
|
tickThread = new Thread (new ThreadStart (ThreadLoop));
|
||||||
tickThread.Start ();
|
tickThread.Start ();
|
||||||
derniereMaj = dernierTick = DateTime.Now;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public EventManager EventManager {
|
public EventManager EventManager {
|
||||||
|
|
@ -195,7 +195,7 @@ namespace DMX2
|
||||||
{
|
{
|
||||||
Thread.CurrentThread.Priority = ThreadPriority.AboveNormal;
|
Thread.CurrentThread.Priority = ThreadPriority.AboveNormal;
|
||||||
DateTime next;
|
DateTime next;
|
||||||
|
dernierTick = DateTime.Now;
|
||||||
while (running) {
|
while (running) {
|
||||||
|
|
||||||
try{
|
try{
|
||||||
|
|
|
||||||
|
|
@ -46,6 +46,7 @@ namespace DMX2
|
||||||
portname = serialport;
|
portname = serialport;
|
||||||
outputbuffer[0]=27;
|
outputbuffer[0]=27;
|
||||||
outputbuffer[1]=68;
|
outputbuffer[1]=68;
|
||||||
|
Start();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -59,20 +60,26 @@ namespace DMX2
|
||||||
|
|
||||||
void Connection ()
|
void Connection ()
|
||||||
{
|
{
|
||||||
|
Console.WriteLine ("DriverV2.Connection()");
|
||||||
if (serial != null) {
|
if (serial != null) {
|
||||||
serial.Close();
|
serial.Close ();
|
||||||
serial.Dispose();
|
serial.Dispose ();
|
||||||
}
|
}
|
||||||
serial = new SerialPort(portname, 460800,Parity.None,8,StopBits.One);
|
serial = new SerialPort (portname, 460800, Parity.None, 8, StopBits.One);
|
||||||
serial.DtrEnable = false;
|
//serial.DtrEnable = false;
|
||||||
serial.ReadTimeout = 15;
|
serial.ReadTimeout = 200;
|
||||||
serial.WriteTimeout = 200;
|
serial.WriteTimeout = 200;
|
||||||
serial.Open();
|
try {
|
||||||
etat = etatAutomate.Transmission;
|
serial.Open ();
|
||||||
|
etat = etatAutomate.Transmission;
|
||||||
|
} catch {
|
||||||
|
etat = etatAutomate.Deconnecte;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
volatile etatAutomate etat = etatAutomate.Deconnecte;
|
volatile etatAutomate etat = etatAutomate.Deconnecte;
|
||||||
DateTime finAttente = DateTime.Now;
|
DateTime finAttente = DateTime.Now;
|
||||||
|
int compteErreur = 0;
|
||||||
|
|
||||||
void MainLoop()
|
void MainLoop()
|
||||||
{
|
{
|
||||||
|
|
@ -81,7 +88,9 @@ namespace DMX2
|
||||||
switch (etat) {
|
switch (etat) {
|
||||||
case etatAutomate.Deconnecte:
|
case etatAutomate.Deconnecte:
|
||||||
Connection();
|
Connection();
|
||||||
Attente(DateTime.Now.AddMilliseconds(200));
|
compteErreur= 0;
|
||||||
|
Attente(DateTime.Now.AddMilliseconds(1000));
|
||||||
|
serial.DiscardInBuffer();
|
||||||
break;
|
break;
|
||||||
case etatAutomate.Transmission:
|
case etatAutomate.Transmission:
|
||||||
finAttente = DateTime.Now.AddMilliseconds (22);
|
finAttente = DateTime.Now.AddMilliseconds (22);
|
||||||
|
|
@ -90,8 +99,15 @@ namespace DMX2
|
||||||
Attente(finAttente);
|
Attente(finAttente);
|
||||||
break;
|
break;
|
||||||
case etatAutomate.Erreur:
|
case etatAutomate.Erreur:
|
||||||
Deconnecte();
|
compteErreur ++;
|
||||||
Attente(DateTime.Now.AddSeconds(2));
|
if(compteErreur>3){
|
||||||
|
Deconnecte();
|
||||||
|
Attente(DateTime.Now.AddSeconds(2));
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
Attente(DateTime.Now.AddSeconds(1));
|
||||||
|
etat = etatAutomate.Transmission;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
// case etatAutomate.Parametrage:
|
// case etatAutomate.Parametrage:
|
||||||
// EnvoiParam();
|
// EnvoiParam();
|
||||||
|
|
@ -115,6 +131,7 @@ namespace DMX2
|
||||||
|
|
||||||
void Deconnecte ()
|
void Deconnecte ()
|
||||||
{
|
{
|
||||||
|
Console.WriteLine("DriverV2.Deconnection");
|
||||||
etat = etatAutomate.Deconnecte;
|
etat = etatAutomate.Deconnecte;
|
||||||
if(serial == null) return;
|
if(serial == null) return;
|
||||||
|
|
||||||
|
|
@ -129,11 +146,12 @@ namespace DMX2
|
||||||
etat = etatAutomate.Erreur;
|
etat = etatAutomate.Erreur;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(patch1!=null) patch1.CalculUnivers(outputbuffer,3,512);
|
if(patch1!=null) patch1.CalculUnivers(outputbuffer,2,512);
|
||||||
|
|
||||||
serial.Write(outputbuffer,0,outputbuffer.Length);
|
serial.Write(outputbuffer,0,outputbuffer.Length);
|
||||||
|
|
||||||
} catch (TimeoutException ex) {
|
} catch (Exception ex) {
|
||||||
|
Console.WriteLine("Exception Envoi {0}",ex);
|
||||||
etat = etatAutomate.Erreur;
|
etat = etatAutomate.Erreur;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -158,9 +176,12 @@ namespace DMX2
|
||||||
}
|
}
|
||||||
|
|
||||||
serial.Read(inputbuffer,0,inputbuffer.Length);
|
serial.Read(inputbuffer,0,inputbuffer.Length);
|
||||||
ProcessInput();
|
//ProcessInput();
|
||||||
|
//Console.WriteLine(inputbuffer[0]);
|
||||||
} catch (TimeoutException ex) {
|
compteErreur= 0;
|
||||||
|
} catch (Exception ex) {
|
||||||
|
Console.WriteLine(serial.BytesToRead);
|
||||||
|
Console.WriteLine("Exception Reception {0}",ex);
|
||||||
etat = etatAutomate.Erreur;
|
etat = etatAutomate.Erreur;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,12 @@ namespace DMX2
|
||||||
TreeIter iter;
|
TreeIter iter;
|
||||||
lsCbUnivers.GetIterFirst(out iter);
|
lsCbUnivers.GetIterFirst(out iter);
|
||||||
cbUnivers.SetActiveIter(iter);
|
cbUnivers.SetActiveIter(iter);
|
||||||
|
this.Destroyed += HandleDestroyed;
|
||||||
|
}
|
||||||
|
|
||||||
|
void HandleDestroyed (object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
universEdite.AllumageForce[currDimm] = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
void RenderUniversName (CellLayout cell_layout, CellRenderer cell, TreeModel tree_model, TreeIter iter)
|
void RenderUniversName (CellLayout cell_layout, CellRenderer cell, TreeModel tree_model, TreeIter iter)
|
||||||
|
|
@ -223,6 +228,9 @@ namespace DMX2
|
||||||
majencour = true;
|
majencour = true;
|
||||||
int id = (int)(spinDimmer.Value);
|
int id = (int)(spinDimmer.Value);
|
||||||
|
|
||||||
|
universEdite.AllumageForce[currDimm] = false;
|
||||||
|
btAllume.Active = false;
|
||||||
|
|
||||||
currDimm = id - 1;
|
currDimm = id - 1;
|
||||||
tvDimm.SetCursor( new TreePath( new int[1] { currDimm }) ,null,false);
|
tvDimm.SetCursor( new TreePath( new int[1] { currDimm }) ,null,false);
|
||||||
|
|
||||||
|
|
@ -408,5 +416,13 @@ namespace DMX2
|
||||||
MajListeDimmer();
|
MajListeDimmer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void OnBtAllumeClicked (object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
if (majencour)
|
||||||
|
return;
|
||||||
|
universEdite.AllumageForce[currDimm] = btAllume.Active;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -105,19 +105,23 @@ namespace DMX2
|
||||||
if (fi == null)
|
if (fi == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
DriverDMX drv = Conduite.Courante.GetDriverByID (fi.Name);
|
drv = Conduite.Courante.GetDriverByID (fi.Name);
|
||||||
if (drv == null) {
|
if (drv == null) {
|
||||||
btnConnect.Visible = btnConnect.Sensitive = true;
|
btnConnect.Visible = btnConnect.Sensitive = true;
|
||||||
btnDisconnect.Visible = btnDisconnect.Sensitive = false;
|
btnDisconnect.Visible = btnDisconnect.Sensitive = false;
|
||||||
|
|
||||||
comboDriver.Sensitive = true;
|
comboDriver.Sensitive = true;
|
||||||
comboDriver.Active=-1;
|
comboDriver.Active=-1;
|
||||||
|
if(frmDrvChild.Child!=null)
|
||||||
|
frmDrvChild.Remove(frmDrvChild.Child);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
AfficheDriverUI(drv);
|
AfficheDriverUI();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DriverDMX drv=null;
|
||||||
protected void OnBtnConnectClicked (object sender, EventArgs e)
|
protected void OnBtnConnectClicked (object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
// Instancie
|
// Instancie
|
||||||
|
|
@ -132,7 +136,7 @@ namespace DMX2
|
||||||
if (fi == null)
|
if (fi == null)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
DriverDMX drv=null;
|
drv=null;
|
||||||
|
|
||||||
switch (comboDriver.Active) {
|
switch (comboDriver.Active) {
|
||||||
case 0:
|
case 0:
|
||||||
|
|
@ -147,16 +151,20 @@ namespace DMX2
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
AfficheDriverUI(drv);
|
AfficheDriverUI();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected void OnBtnDisConnectClicked (object sender, EventArgs e)
|
protected void OnBtnDisConnectClicked (object sender, EventArgs e)
|
||||||
{
|
{
|
||||||
//Dispose;
|
if (drv != null) {
|
||||||
|
drv.Dispose ();
|
||||||
|
Conduite.Courante.Drivers.Remove (drv);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void AfficheDriverUI(DriverDMX drv){
|
void AfficheDriverUI(){
|
||||||
btnConnect.Visible = false;
|
btnConnect.Visible = false;
|
||||||
comboDriver.Sensitive = false;
|
comboDriver.Sensitive = false;
|
||||||
|
|
||||||
|
|
@ -166,6 +174,15 @@ namespace DMX2
|
||||||
frmDrvChild.ShowAll();
|
frmDrvChild.ShowAll();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void EffaceDriverUI(){
|
||||||
|
btnConnect.Visible = true;
|
||||||
|
comboDriver.Sensitive = true;
|
||||||
|
|
||||||
|
btnDisconnect.Visible = btnDisconnect.Sensitive = false;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -376,6 +376,7 @@ namespace DMX2
|
||||||
this.btAdd.Clicked += new global::System.EventHandler (this.OnBtAddClicked);
|
this.btAdd.Clicked += new global::System.EventHandler (this.OnBtAddClicked);
|
||||||
this.btPatchDroit.Clicked += new global::System.EventHandler (this.OnBtPatchDroitClicked);
|
this.btPatchDroit.Clicked += new global::System.EventHandler (this.OnBtPatchDroitClicked);
|
||||||
this.btReset.Clicked += new global::System.EventHandler (this.OnBtResetClicked);
|
this.btReset.Clicked += new global::System.EventHandler (this.OnBtResetClicked);
|
||||||
|
this.btAllume.Clicked += new global::System.EventHandler (this.OnBtAllumeClicked);
|
||||||
this.spinDimmer.ValueChanged += new global::System.EventHandler (this.OnSpinDimmerValueChanged);
|
this.spinDimmer.ValueChanged += new global::System.EventHandler (this.OnSpinDimmerValueChanged);
|
||||||
this.cbCircuit.Changed += new global::System.EventHandler (this.OnCbCircuitChanged);
|
this.cbCircuit.Changed += new global::System.EventHandler (this.OnCbCircuitChanged);
|
||||||
this.cbFT.Changed += new global::System.EventHandler (this.OnCbFTChanged);
|
this.cbFT.Changed += new global::System.EventHandler (this.OnCbFTChanged);
|
||||||
|
|
|
||||||
|
|
@ -1366,6 +1366,7 @@ au sequenceur</property>
|
||||||
<property name="Icon">stock:gtk-find Menu</property>
|
<property name="Icon">stock:gtk-find Menu</property>
|
||||||
<property name="Label" translatable="yes">Allumer !</property>
|
<property name="Label" translatable="yes">Allumer !</property>
|
||||||
<property name="UseUnderline">True</property>
|
<property name="UseUnderline">True</property>
|
||||||
|
<signal name="Clicked" handler="OnBtAllumeClicked" />
|
||||||
</widget>
|
</widget>
|
||||||
<packing>
|
<packing>
|
||||||
<property name="Position">0</property>
|
<property name="Position">0</property>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue