ru:toolworks:docs:apparatus:enchaining

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Следующая версия
Предыдущая версия
ru:toolworks:docs:apparatus:enchaining [2021/06/15 14:51] – создано + переведено jisparru:toolworks:docs:apparatus:enchaining [2022/07/18 18:11] (текущий) – Remove trouble. jispar
Строка 1: Строка 1:
 ====== Объединение в цепи ====== ====== Объединение в цепи ======
  
-Объединение в цепи - процесс отбора подмножества чанков (или белтовна базе определённого филььтр-критерия.+Объединение в цепи - процесс отбора подмножества чанков (или ремней) на базе определённого [[ru:toolworks:docs:apparatus:filter|фильтр]]-критерия. Как только ремни и чанки были объединены в цепь, они блокируются и любые структурные их изменения минимизируются в целях целостности [[ru:toolworks:docs:apparatus:iterating|итерации]]. 
 + 
 +===== Организация в C++ ===== 
 + 
 +В реальности довольно просто. Вы не создаёте цепи вручную, но они, на самом деле, управляются [[appi>class_u_machine.html|объектом-Машиной]] (Machine class). Предположим, вы уже собрали необходимый [[ru:toolworks:docs:apparatus:filter|Фильтр]], всё что осталось сделать - так это вызвать глобальный метод Механизма, называемый [[appi>class_u_mechanism.html#ab9c5280bbf348bee04751204ce0687c1|Enchain]], передавая применяемый фильтр. 
 + 
 +<code cpp> 
 +FChain& Chain = Mechanism->Enchain(Filter).Get(); 
 +</code> 
 + 
 +Теперь вы готовы [[ru:toolworks:docs:apparatus:iterating|итерироваться]] или [[ru:toolworks:docs:apparatus:operating|оперировать]] над цепью, но есть ещё кое-что. 
 + 
 +==== Твердотельные цепи ==== 
 + 
 +Вы можете создать специальную цепь, называемую //твердотельной//
 +Твердотельные цепи дают некоторые дополнительные возможности: получение прямых ссылок на трейты, например, параллелизм итерирования, - но они также и ограничивают доступные операции над Сущностями, так что изменить их структуру не получится. Иными словами, вы не сможете добавлять или удалять трейты, если цепь твердотельная. Создание твердотельной цепи выглядит просто: 
 + 
 +<code cpp> 
 +FSolidChain& Chain = Mechanism->EnchainSolid(Filter).Get(); 
 +</code> 
 + 
 + 
 +==== Чанк - Прокси ==== 
 + 
 +Если вы хотите итерироваться по чанкам напрямую, вам следует объединить их в один список прокси-чанков. 
 + 
 +Чтобы это сделать, доступен специальный перегруженный [[appi>class_a_mechanism.html#ae72188d973bed3d8484dc5ab87e5e1e1|метод]]. 
 +Он принимает [[ue>API/Runtime/Core/Containers/TArray|массив]] прокси-чанков своим вторым аргументом. Первый аргумент - фильтр.
  • ru/toolworks/docs/apparatus/enchaining.1623757918.txt.gz
  • Последнее изменение: 2021/06/15 14:51
  • jispar