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