Ejemplo n.º 1
0
        /// <summary>
        /// Создание сборки по образцу / шаблону.
        /// При создании новой сборки копируется структура (дочерние сборки) из образца / шаблона.
        /// </summary>
        /// <param name="templAsm">сборка - образец или шаблон</param>
        /// <param name="mode">признак, определяющий, сохранять ссылку на шаблон\образец или нет</param>
        /// <returns>сборка</returns>
        public AssemblyBase CreateAssembly(AssemblyBase templAsm, FOLLOWMODE mode = FOLLOWMODE.Forget)
        {
            var id  = DBserver.CreateBlock(templAsm.BlockType.BlockTypeID, -1, 0);
            var asm = new AssemblyBase(templAsm, id, mode);

            CreateChildrenRequrs(asm.Children);
            return(asm);
        }
Ejemplo n.º 2
0
 /// <summary>
 /// Конструктор.
 /// </summary>
 /// <param name="templAsm">Сборка - образец/шаблон, на основе которой создаётся текущая сборка.</param>
 /// <param name="id">адрес стартового блока сборки</param>
 /// <param name="mode">признак, определяющий, сохранять ссылку на шаблон\образец или нет.</param>
 public AssemblyBase(AssemblyBase templAsm, BlockAddress id, FOLLOWMODE mode) :
     base(id, templAsm.BlockType, -1, 0, -1, -1, -1, null, DateTime.Now)
 {
     if (mode == FOLLOWMODE.Follow)
     {
         this.templAsm = templAsm;
     }
     CopyChildrenRequrs(this, templAsm.Children);
 }