public bool Copy(CM1Group pSrcGroup)
        {
            trace?.Write(TraceLevel.Debug, "CM1Group::Copy");
            bool fnResult = true;

            try
            {
                trace     = pSrcGroup.trace;
                m_lId     = pSrcGroup.m_lId;
                m_lTypeId = pSrcGroup.m_lTypeId;
                m_dtLast  = pSrcGroup.m_dtLast.Copy();
                m_lState  = pSrcGroup.m_lState;
                //M1ComputeEx0 Attributes
                m_lAccumMoney   = pSrcGroup.m_lAccumMoney;
                m_lAccumMinutes = pSrcGroup.m_lAccumMinutes;
                //M1ComputeEx1 Attributes
                m_lEfecAccumMoney   = pSrcGroup.m_lEfecAccumMoney;
                m_lEfecAccumMinutes = pSrcGroup.m_lEfecAccumMinutes;
                m_lRealAccumMoney   = pSrcGroup.m_lRealAccumMoney;
                m_lRealAccumMinutes = pSrcGroup.m_lRealAccumMinutes;

                int i = 0;
                for (i = 0; i < CM1Constraint.CNSTR_NUM; i++)
                {
                    m_Cnstr[i].Copy(pSrcGroup.m_Cnstr[i]);
                }
            }
            catch (Exception error)
            {
                trace?.Write(TraceLevel.Error, error.ToLogString());
                fnResult = false;
            }

            return(fnResult);
        }
        public bool SetState(long lState)
        {
            if (lState < 0 || lState >= (long)M1GroupState.GRP_STATE_MAX)
            {
                return(false);
            }

            m_lState = (M1GroupState)lState;

            return(true);
        }
        public void Init()
        {
            m_lId     = GRP_UNDEFINED;
            m_lTypeId = GRP_UNDEFINED;
            m_dtLast.SetStatus(COPSDateStatus.Null);
            trace    = null;
            m_lState = M1GroupState.GRP_ON;

            ResetTime();
            ResetMoney();

            for (int i = 0; i < CM1Constraint.CNSTR_NUM; i++)
            {
                m_Cnstr[i] = new CM1Constraint();
                m_Cnstr[i].Set(CM1Constraint.CNSTR_UNDEFINED, CM1Constraint.CNSTR_UNDEFINED);
            }
        }