100 lines
3.0 KiB
VB.net
100 lines
3.0 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports EgtUILib
|
|
|
|
Public Module CurrentMachine
|
|
|
|
' 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
|
|
|
|
#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
|
|
|
|
' crea l'elenco dei parametri della macchina corrente
|
|
CreateMachParams()
|
|
|
|
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
|