コード例 #1
0
            /// <summary>
            /// Creates new tag bit row and assigns default values
            /// </summary>
            /// <param name="cParent">Parent Tag <see cref="TagsRow"/></param>
            /// <param name="pRowToBeCopied">New row is a shallow copy of the current rowToPaste</param>
            /// <returns>New <see cref="TagBitRow"/></returns>
            public void NewTagBitRow(TagsRow cParent, TagBitRow pRowToBeCopied)
            {
                TagBitRow dr = NewTagBitRow();

                dr.Name      = pRowToBeCopied.Name;
                dr.BitNumber = pRowToBeCopied.BitNumber;
                dr.TagID     = cParent.TagID;
                AddTagBitRow(dr);
                return;
            }
コード例 #2
0
            /// <summary>
            /// Creates new tag bit row and assigns default values
            /// </summary>
            /// <param name="cParent">Parent Tag <see cref="TagsRow"/></param>
            /// <param name="pPrefix">prefix for new tag-bit names that are created</param>
            /// <returns>New <see cref="TagBitRow"/></returns>
            public TagBitRow NewTagBitRow(TagsRow cParent, string pPrefix)
            {
                TagBitRow dr = NewTagBitRow();

                dr.TagID = cParent.TagID;
                short idx = (short)cParent.GetTagBitRows().Length;

                dr.Name      = string.Format("{0}{1}NewTagBit{2}", pPrefix, m_IdentSep, idx);
                dr.BitNumber = idx;
                return(dr);
            }
コード例 #3
0
            /// <summary>
            /// Creates new tags row and assigns default values
            /// </summary>
            /// <param name="pDatBlockID">Data block ID</param>
            /// <param name="pPrefix">Prefix for the name</param>
            /// <returns>New <see cref="TagsRow"/></returns>
            public TagsRow NewTagsRow(int pDatBlockID, string pPrefix)
            {
                TagsRow tr = NewTagsRow();

                tr.Name         = string.Format("{1}{2}Tag{0}", tr.TagID.ToString(), pPrefix, m_IdentSep);
                tr.DatBlockID   = pDatBlockID;
                tr.AccessRights = (sbyte)ItemAccessRights.ReadWrite;
                tr.StateTrigger = (sbyte)StateTrigger.None;
                tr.StateMask    = 0;
                return(tr);
            }
コード例 #4
0
            /// <summary>
            /// Creates new tags row and assigns default values
            /// </summary>
            /// <param name="pDatBlockID">Data block ID</param>
            /// <param name="pPrefix">Prefix for the name</param>
            /// <param name="pRowToBeCopied">row to be copied</param>
            /// <param name="pShallowCopy">indicates if the copy is shallow or deep</param>
            public void NewTagsRow(int pDatBlockID, TagsRow pRowToBeCopied, bool pShallowCopy, string pPrefix)
            {
                TagsRow dr = NewTagsRow(pDatBlockID, pPrefix);

                dr.AccessRights = pRowToBeCopied.AccessRights;
                dr.StateTrigger = pRowToBeCopied.StateTrigger;
                dr.Alarm        = pRowToBeCopied.Alarm;
                dr.AlarmMask    = pRowToBeCopied.AlarmMask;
                dr.StateMask    = pRowToBeCopied.StateMask;
                AddTagsRow(dr);
                foreach (ItemPropertiesTableRow iptr in pRowToBeCopied.GetItemPropertiesTableRows())
                {
                    ((ComunicationNet)DataSet).ItemPropertiesTable.NewItemPropertiesTableRow(iptr, dr.TagID);
                }
                if (!pShallowCopy)
                {
                    foreach (TagBitRow tr in pRowToBeCopied.GetTagBitRows())
                    {
                        ((ComunicationNet)DataSet).TagBit.NewTagBitRow(dr, string.Empty);
                    }
                }
                return;
            }