예제 #1
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="psem">The PSEM communications object for the current session.</param>
        /// <param name="Table0">The table 0 object for the current device.</param>
        /// <param name="Table21">The table 21 object for the current device.</param>
        // Revision History
        // MM/DD/YY who Version Issue# Description
        // -------- --- ------- ------ ---------------------------------------
        // 12/14/10 SCW 9.70.18 N/A    Created for CENTRON II

        public MFGTable2053(CPSEM psem, CTable00 Table0, StdTable21 Table21)
            : base(psem, 2053, DetermineTableSize(Table0, Table21), TABLE_TIMEOUT)
        {
            m_Table0  = Table0;
            m_Table21 = Table21;

            m_DemandResetRegisterData = null;
        }
예제 #2
0
        /// <summary>
        /// Constructor used by EDL File
        /// </summary>
        /// <param name="reader">The binary reader that contains the table data</param>
        /// <param name="table0">The table 0 object</param>
        /// <param name="table21">The table 21 object</param>
        // Revision History
        // MM/DD/YY who Version Issue# Description
        // -------- --- ------- ------ ---------------------------------------
        // 12/14/10 SCW 9.70.18 N/A    Created for CENTRON II

        public MFGTable2053(PSEMBinaryReader reader, CTable00 table0, StdTable21 table21)
            : base(25, DetermineTableSize(table0, table21))
        {
            State     = TableState.Loaded;
            m_Reader  = reader;
            m_Table21 = table21;
            m_Table0  = table0;
            ParseData();
        }
예제 #3
0
        /// <summary>
        /// Determines that size of the table.
        /// </summary>
        /// <param name="Table0">The table 0 object for the current device.</param>
        /// <param name="Table21">The table 21 object for the current device.</param>
        /// <returns>The size of the table in bytes.</returns>
        // Revision History
        // MM/DD/YY who Version Issue# Description
        // -------- --- ------- ------ ---------------------------------------
        // 12/14/10 SCW 9.70.18 N/A    Created for CENTRON II

        private static uint DetermineTableSize(CTable00 Table0, StdTable21 Table21)
        {
            uint uiTableSize = 0;

            // End Time
            if (Table21.IncludeDateTime)
            {
                uiTableSize += Table0.STIMESize;
            }

            // Season index
            if (Table21.IncludeSeasonInfo)
            {
                uiTableSize += 1;
            }

            // Demand Reset Data
            uiTableSize += RegisterDataRecord.Size(Table0, Table21);

            return(uiTableSize);
        }