Files
egtbeamwall/EgtBEAMWALL.Supervisor/Utility/CurrentMachine.vb
T
2021-11-04 18:01:43 +01:00

126 lines
3.7 KiB
VB.net

Imports System.Collections.ObjectModel
Imports EgtUILib
Imports EgtWPFLib5
Imports EgtBEAMWALL.Core
Public Module CurrentMachine
Enum FlowTypes As Integer
ONEBYONE = 1
CONTINUOUS = 2
End Enum
' Nome macchina corrente
Private m_sMachineName As String = String.Empty
' Direttorio macchina corrente
Private m_sMachDir As String = String.Empty
' File ini della macchina
Private m_sMachIniFile As String = String.Empty
' File ini dei parametri macchina
Private m_sMachParamIniFile As String = String.Empty
' tipo di CN della macchina
Private m_NCType As NCTypes = NCTypes.NULL
Public ReadOnly Property NCType As Integer
Get
Return m_NCType
End Get
End Property
Private m_Flow As FlowTypes = FlowTypes.ONEBYONE
Friend ReadOnly Property Flow As FlowTypes
Get
Return m_Flow
End Get
End Property
#Region "Proprietà che leggono e scrivono i valori anche da o su file ini"
Friend ReadOnly Property sMachineName As String
Get
Return m_sMachineName
End Get
End Property
Friend ReadOnly Property sMachDir As String
Get
Return m_sMachDir
End Get
End Property
Friend ReadOnly Property sMachIniFile As String
Get
Return m_sMachIniFile
End Get
End Property
Friend ReadOnly Property sMachParamIniFile As String
Get
Return m_sMachParamIniFile
End Get
End Property
#End Region
'Private m_MachTableList As New ObservableCollection(Of MachTable)
'Public Property MachTableList As ObservableCollection(Of MachTable)
' Get
' Return m_MachTableList
' End Get
' Set(value As ObservableCollection(Of MachTable))
' m_MachTableList = value
' End Set
'End Property
#Region "Init"
Sub InitCurrentMachine(sMachinesRootDir As String, sMachineName As String)
' Nome macchina corrente
m_sMachineName = sMachineName
' Impostazione direttorio macchina
m_sMachDir = sMachinesRootDir & "\" & sMachineName
' Impostazione path MachIni file
m_sMachIniFile = sMachinesRootDir & "\" & sMachineName & "\" & sMachineName & ".ini"
' Impostazione path MachParamIni file
m_sMachParamIniFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & MACH_INI_FILE_NAME
' leggo tipo di avanzamento pezzi
m_Flow = GetPrivateProfileInt(S_GENERAL, K_FLOW, 1, m_sMachIniFile)
' crea l'elenco dei parametri della macchina corrente
CreateMachParams()
' recupero tipo di controllo
m_NCType = GetPrivateProfileInt(S_GENERAL, K_NCTYPE, 0, m_sMachIniFile)
End Sub
#End Region 'Init
#Region "Methods"
' funzione che crea l'elenco dei parametri Macchina
Friend Sub CreateMachParams()
'MachTableList.Clear()
'Dim NewMachParam As MachParam = Nothing
'Dim MachParamList As New ObservableCollection(Of MachParam)
'Dim TableIndex = 1
'Dim ParamIndex As Integer = 1
'Dim TableName As String = String.Empty
'' verifico che ci sia una table con l'indice designato e ne leggo il nome
'While GetMachPrivateProfileString(TableIndex, K_NAME, "", TableName)
' ' leggo tutti i parametri della table
' While MachParamIniFile.GetMachPrivateProfileParam(TableIndex, ParamIndex, NewMachParam)
' MachParamList.Add(NewMachParam)
' ParamIndex += 1
' End While
' MachTableList.Add(New MachTable(TableName, MachParamList))
' ' aggiorno indici e resetto lista per lettura dell'eventuale table successiva
' TableIndex += 1
' ParamIndex = 1
' MachParamList = New ObservableCollection(Of MachParam)
'End While
End Sub
#End Region 'Methods
End Module