Advertisement
Guest User

Untitled

a guest
Aug 3rd, 2020
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 370.11 KB | None | 0 0
  1. using Unity.Entities;
  2. using UnityEngine;
  3.  
  4. public abstract class QuickSystemBase : ComponentSystem {
  5.     public EntityQuery m_MainGroup;
  6. }
  7.  
  8. public abstract class QuickSystemClass<C> : QuickSystemBase where C : class {
  9.     protected override void OnCreate() {
  10.         m_MainGroup = GetEntityQuery(typeof(C));
  11.     }
  12.     protected override void OnUpdate() {
  13.         Entities.With(m_MainGroup).ForEach((C c) => {
  14.             OnUpdate(c);
  15.         });
  16.     }
  17.     protected abstract void OnUpdate(C c);
  18. }
  19. public abstract class QuickSystemClass<C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  20.     protected override void OnCreate() {
  21.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1));
  22.     }
  23.     protected override void OnUpdate() {
  24.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  25.             OnUpdate(c, ref t1);
  26.         });
  27.     }
  28.     protected abstract void OnUpdate(C c, ref T1 t1);
  29. }
  30. public abstract class QuickSystem<T1> : QuickSystemBase where T1 : struct, IComponentData {
  31.     protected override void OnCreate() {
  32.         m_MainGroup = GetEntityQuery(typeof(T1));
  33.     }
  34.     protected override void OnUpdate() {
  35.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  36.             OnUpdate(ref t1);
  37.         });
  38.     }
  39.     protected abstract void OnUpdate(ref T1 t1);
  40. }
  41. public abstract class QuickSystemClass<C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  42.     protected override void OnCreate() {
  43.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2));
  44.     }
  45.     protected override void OnUpdate() {
  46.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  47.             OnUpdate(c, ref t1, ref t2);
  48.         });
  49.     }
  50.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  51. }
  52. public abstract class QuickSystem<T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  53.     protected override void OnCreate() {
  54.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2));
  55.     }
  56.     protected override void OnUpdate() {
  57.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  58.             OnUpdate(ref t1, ref t2);
  59.         });
  60.     }
  61.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  62. }
  63. public abstract class QuickSystemClass<C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  64.     protected override void OnCreate() {
  65.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3));
  66.     }
  67.     protected override void OnUpdate() {
  68.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  69.             OnUpdate(c, ref t1, ref t2, ref t3);
  70.         });
  71.     }
  72.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  73. }
  74. public abstract class QuickSystem<T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  75.     protected override void OnCreate() {
  76.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3));
  77.     }
  78.     protected override void OnUpdate() {
  79.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  80.             OnUpdate(ref t1, ref t2, ref t3);
  81.         });
  82.     }
  83.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  84. }
  85. public abstract class QuickSystemClass<C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  86.     protected override void OnCreate() {
  87.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  88.     }
  89.     protected override void OnUpdate() {
  90.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  91.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  92.         });
  93.     }
  94.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  95. }
  96. public abstract class QuickSystem<T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  97.     protected override void OnCreate() {
  98.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  99.     }
  100.     protected override void OnUpdate() {
  101.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  102.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  103.         });
  104.     }
  105.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  106. }
  107. public abstract class QuickSystemClass<C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  108.     protected override void OnCreate() {
  109.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  110.     }
  111.     protected override void OnUpdate() {
  112.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  113.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  114.         });
  115.     }
  116.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  117. }
  118. public abstract class QuickSystem<T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  119.     protected override void OnCreate() {
  120.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  121.     }
  122.     protected override void OnUpdate() {
  123.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  124.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  125.         });
  126.     }
  127.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  128. }
  129. public abstract class QuickSystemEntityClass<C> : QuickSystemBase where C : class {
  130.     protected override void OnCreate() {
  131.         m_MainGroup = GetEntityQuery(typeof(C));
  132.     }
  133.     protected override void OnUpdate() {
  134.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  135.             OnUpdate(e, c);
  136.         });
  137.     }
  138.     protected abstract void OnUpdate(Entity e, C c);
  139. }
  140. public abstract class QuickSystemEntityClass<C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  141.     protected override void OnCreate() {
  142.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1));
  143.     }
  144.     protected override void OnUpdate() {
  145.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  146.             OnUpdate(e, c, ref t1);
  147.         });
  148.     }
  149.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  150. }
  151. public abstract class QuickSystemEntity<T1> : QuickSystemBase where T1 : struct, IComponentData {
  152.     protected override void OnCreate() {
  153.         m_MainGroup = GetEntityQuery(typeof(T1));
  154.     }
  155.     protected override void OnUpdate() {
  156.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  157.             OnUpdate(e, ref t1);
  158.         });
  159.     }
  160.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  161. }
  162. public abstract class QuickSystemEntityClass<C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  163.     protected override void OnCreate() {
  164.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2));
  165.     }
  166.     protected override void OnUpdate() {
  167.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  168.             OnUpdate(e, c, ref t1, ref t2);
  169.         });
  170.     }
  171.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  172. }
  173. public abstract class QuickSystemEntity<T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  174.     protected override void OnCreate() {
  175.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2));
  176.     }
  177.     protected override void OnUpdate() {
  178.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  179.             OnUpdate(e, ref t1, ref t2);
  180.         });
  181.     }
  182.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  183. }
  184. public abstract class QuickSystemEntityClass<C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  185.     protected override void OnCreate() {
  186.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3));
  187.     }
  188.     protected override void OnUpdate() {
  189.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  190.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  191.         });
  192.     }
  193.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  194. }
  195. public abstract class QuickSystemEntity<T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  196.     protected override void OnCreate() {
  197.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3));
  198.     }
  199.     protected override void OnUpdate() {
  200.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  201.             OnUpdate(e, ref t1, ref t2, ref t3);
  202.         });
  203.     }
  204.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  205. }
  206. public abstract class QuickSystemEntityClass<C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  207.     protected override void OnCreate() {
  208.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  209.     }
  210.     protected override void OnUpdate() {
  211.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  212.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  213.         });
  214.     }
  215.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  216. }
  217. public abstract class QuickSystemEntity<T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  218.     protected override void OnCreate() {
  219.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  220.     }
  221.     protected override void OnUpdate() {
  222.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  223.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  224.         });
  225.     }
  226.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  227. }
  228. public abstract class QuickSystemEntityClass<C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  229.     protected override void OnCreate() {
  230.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  231.     }
  232.     protected override void OnUpdate() {
  233.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  234.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  235.         });
  236.     }
  237.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  238. }
  239. public abstract class QuickSystemEntity<T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  240.     protected override void OnCreate() {
  241.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  242.     }
  243.     protected override void OnUpdate() {
  244.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  245.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  246.         });
  247.     }
  248.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  249. }
  250. public abstract class QuickSystemClassDelta<C> : QuickSystemBase where C : class {
  251.     protected override void OnCreate() {
  252.         m_MainGroup = GetEntityQuery(typeof(C));
  253.     }
  254.     protected override void OnUpdate() {
  255.         float delta = Time.DeltaTime;
  256.         Entities.With(m_MainGroup).ForEach((C c) => {
  257.             OnUpdate(c, delta);
  258.         });
  259.     }
  260.     protected abstract void OnUpdate(C c, float delta);
  261. }
  262. public abstract class QuickSystemClassDelta<C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  263.     protected override void OnCreate() {
  264.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1));
  265.     }
  266.     protected override void OnUpdate() {
  267.         float delta = Time.DeltaTime;
  268.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  269.             OnUpdate(c, ref t1, delta);
  270.         });
  271.     }
  272.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  273. }
  274. public abstract class QuickSystemDelta<T1> : QuickSystemBase where T1 : struct, IComponentData {
  275.     protected override void OnCreate() {
  276.         m_MainGroup = GetEntityQuery(typeof(T1));
  277.     }
  278.     protected override void OnUpdate() {
  279.         float delta = Time.DeltaTime;
  280.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  281.             OnUpdate(ref t1, delta);
  282.         });
  283.     }
  284.     protected abstract void OnUpdate(ref T1 t1, float delta);
  285. }
  286. public abstract class QuickSystemClassDelta<C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  287.     protected override void OnCreate() {
  288.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2));
  289.     }
  290.     protected override void OnUpdate() {
  291.         float delta = Time.DeltaTime;
  292.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  293.             OnUpdate(c, ref t1, ref t2, delta);
  294.         });
  295.     }
  296.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  297. }
  298. public abstract class QuickSystemDelta<T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  299.     protected override void OnCreate() {
  300.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2));
  301.     }
  302.     protected override void OnUpdate() {
  303.         float delta = Time.DeltaTime;
  304.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  305.             OnUpdate(ref t1, ref t2, delta);
  306.         });
  307.     }
  308.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  309. }
  310. public abstract class QuickSystemClassDelta<C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  311.     protected override void OnCreate() {
  312.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3));
  313.     }
  314.     protected override void OnUpdate() {
  315.         float delta = Time.DeltaTime;
  316.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  317.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  318.         });
  319.     }
  320.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  321. }
  322. public abstract class QuickSystemDelta<T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  323.     protected override void OnCreate() {
  324.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3));
  325.     }
  326.     protected override void OnUpdate() {
  327.         float delta = Time.DeltaTime;
  328.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  329.             OnUpdate(ref t1, ref t2, ref t3, delta);
  330.         });
  331.     }
  332.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  333. }
  334. public abstract class QuickSystemClassDelta<C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  335.     protected override void OnCreate() {
  336.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  337.     }
  338.     protected override void OnUpdate() {
  339.         float delta = Time.DeltaTime;
  340.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  341.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  342.         });
  343.     }
  344.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  345. }
  346. public abstract class QuickSystemDelta<T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  347.     protected override void OnCreate() {
  348.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  349.     }
  350.     protected override void OnUpdate() {
  351.         float delta = Time.DeltaTime;
  352.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  353.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  354.         });
  355.     }
  356.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  357. }
  358. public abstract class QuickSystemClassDelta<C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  359.     protected override void OnCreate() {
  360.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  361.     }
  362.     protected override void OnUpdate() {
  363.         float delta = Time.DeltaTime;
  364.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  365.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  366.         });
  367.     }
  368.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  369. }
  370. public abstract class QuickSystemDelta<T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  371.     protected override void OnCreate() {
  372.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  373.     }
  374.     protected override void OnUpdate() {
  375.         float delta = Time.DeltaTime;
  376.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  377.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  378.         });
  379.     }
  380.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  381. }
  382. public abstract class QuickSystemEntityClassDelta<C> : QuickSystemBase where C : class {
  383.     protected override void OnCreate() {
  384.         m_MainGroup = GetEntityQuery(typeof(C));
  385.     }
  386.     protected override void OnUpdate() {
  387.         float delta = Time.DeltaTime;
  388.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  389.             OnUpdate(e, c, delta);
  390.         });
  391.     }
  392.     protected abstract void OnUpdate(Entity e, C c, float delta);
  393. }
  394. public abstract class QuickSystemEntityClassDelta<C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  395.     protected override void OnCreate() {
  396.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1));
  397.     }
  398.     protected override void OnUpdate() {
  399.         float delta = Time.DeltaTime;
  400.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  401.             OnUpdate(e, c, ref t1, delta);
  402.         });
  403.     }
  404.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  405. }
  406. public abstract class QuickSystemEntityDelta<T1> : QuickSystemBase where T1 : struct, IComponentData {
  407.     protected override void OnCreate() {
  408.         m_MainGroup = GetEntityQuery(typeof(T1));
  409.     }
  410.     protected override void OnUpdate() {
  411.         float delta = Time.DeltaTime;
  412.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  413.             OnUpdate(e, ref t1, delta);
  414.         });
  415.     }
  416.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  417. }
  418. public abstract class QuickSystemEntityClassDelta<C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  419.     protected override void OnCreate() {
  420.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2));
  421.     }
  422.     protected override void OnUpdate() {
  423.         float delta = Time.DeltaTime;
  424.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  425.             OnUpdate(e, c, ref t1, ref t2, delta);
  426.         });
  427.     }
  428.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  429. }
  430. public abstract class QuickSystemEntityDelta<T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  431.     protected override void OnCreate() {
  432.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2));
  433.     }
  434.     protected override void OnUpdate() {
  435.         float delta = Time.DeltaTime;
  436.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  437.             OnUpdate(e, ref t1, ref t2, delta);
  438.         });
  439.     }
  440.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  441. }
  442. public abstract class QuickSystemEntityClassDelta<C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  443.     protected override void OnCreate() {
  444.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3));
  445.     }
  446.     protected override void OnUpdate() {
  447.         float delta = Time.DeltaTime;
  448.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  449.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  450.         });
  451.     }
  452.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  453. }
  454. public abstract class QuickSystemEntityDelta<T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  455.     protected override void OnCreate() {
  456.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3));
  457.     }
  458.     protected override void OnUpdate() {
  459.         float delta = Time.DeltaTime;
  460.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  461.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  462.         });
  463.     }
  464.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  465. }
  466. public abstract class QuickSystemEntityClassDelta<C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  467.     protected override void OnCreate() {
  468.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  469.     }
  470.     protected override void OnUpdate() {
  471.         float delta = Time.DeltaTime;
  472.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  473.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  474.         });
  475.     }
  476.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  477. }
  478. public abstract class QuickSystemEntityDelta<T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  479.     protected override void OnCreate() {
  480.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  481.     }
  482.     protected override void OnUpdate() {
  483.         float delta = Time.DeltaTime;
  484.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  485.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  486.         });
  487.     }
  488.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  489. }
  490. public abstract class QuickSystemEntityClassDelta<C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  491.     protected override void OnCreate() {
  492.         m_MainGroup = GetEntityQuery(typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  493.     }
  494.     protected override void OnUpdate() {
  495.         float delta = Time.DeltaTime;
  496.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  497.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  498.         });
  499.     }
  500.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  501. }
  502. public abstract class QuickSystemEntityDelta<T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  503.     protected override void OnCreate() {
  504.         m_MainGroup = GetEntityQuery(typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  505.     }
  506.     protected override void OnUpdate() {
  507.         float delta = Time.DeltaTime;
  508.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  509.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  510.         });
  511.     }
  512.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  513. }
  514. public abstract class QuickSystemShared<S> : QuickSystemBase where S : struct, ISharedComponentData {
  515.     protected override void OnCreate() {
  516.         m_MainGroup = GetEntityQuery(typeof(S));
  517.     }
  518.     protected override void OnUpdate() {
  519.         Entities.With(m_MainGroup).ForEach((S s) => {
  520.             OnUpdate(s);
  521.         });
  522.     }
  523.     protected abstract void OnUpdate(S s);
  524. }
  525. public abstract class QuickSystemShared<S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  526.     protected override void OnCreate() {
  527.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1));
  528.     }
  529.     protected override void OnUpdate() {
  530.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  531.             OnUpdate(s, ref t1);
  532.         });
  533.     }
  534.     protected abstract void OnUpdate(S s, ref T1 t1);
  535. }
  536. public abstract class QuickSystemShared<S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  537.     protected override void OnCreate() {
  538.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2));
  539.     }
  540.     protected override void OnUpdate() {
  541.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  542.             OnUpdate(s, ref t1, ref t2);
  543.         });
  544.     }
  545.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  546. }
  547. public abstract class QuickSystemShared<S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  548.     protected override void OnCreate() {
  549.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3));
  550.     }
  551.     protected override void OnUpdate() {
  552.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  553.             OnUpdate(s, ref t1, ref t2, ref t3);
  554.         });
  555.     }
  556.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  557. }
  558. public abstract class QuickSystemShared<S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  559.     protected override void OnCreate() {
  560.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  561.     }
  562.     protected override void OnUpdate() {
  563.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  564.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  565.         });
  566.     }
  567.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  568. }
  569. public abstract class QuickSystemShared<S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  570.     protected override void OnCreate() {
  571.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  572.     }
  573.     protected override void OnUpdate() {
  574.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  575.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  576.         });
  577.     }
  578.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  579. }
  580. public abstract class QuickSystemEntityShared<S> : QuickSystemBase where S : struct, ISharedComponentData {
  581.     protected override void OnCreate() {
  582.         m_MainGroup = GetEntityQuery(typeof(S));
  583.     }
  584.     protected override void OnUpdate() {
  585.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  586.             OnUpdate(e, s);
  587.         });
  588.     }
  589.     protected abstract void OnUpdate(Entity e, S s);
  590. }
  591. public abstract class QuickSystemEntityShared<S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  592.     protected override void OnCreate() {
  593.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1));
  594.     }
  595.     protected override void OnUpdate() {
  596.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  597.             OnUpdate(e, s, ref t1);
  598.         });
  599.     }
  600.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  601. }
  602. public abstract class QuickSystemEntityShared<S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  603.     protected override void OnCreate() {
  604.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2));
  605.     }
  606.     protected override void OnUpdate() {
  607.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  608.             OnUpdate(e, s, ref t1, ref t2);
  609.         });
  610.     }
  611.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  612. }
  613. public abstract class QuickSystemEntityShared<S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  614.     protected override void OnCreate() {
  615.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3));
  616.     }
  617.     protected override void OnUpdate() {
  618.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  619.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  620.         });
  621.     }
  622.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  623. }
  624. public abstract class QuickSystemEntityShared<S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  625.     protected override void OnCreate() {
  626.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  627.     }
  628.     protected override void OnUpdate() {
  629.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  630.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  631.         });
  632.     }
  633.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  634. }
  635. public abstract class QuickSystemEntityShared<S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  636.     protected override void OnCreate() {
  637.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  638.     }
  639.     protected override void OnUpdate() {
  640.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  641.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  642.         });
  643.     }
  644.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  645. }
  646. public abstract class QuickSystemSharedDelta<S> : QuickSystemBase where S : struct, ISharedComponentData {
  647.     protected override void OnCreate() {
  648.         m_MainGroup = GetEntityQuery(typeof(S));
  649.     }
  650.     protected override void OnUpdate() {
  651.         float delta = Time.DeltaTime;
  652.         Entities.With(m_MainGroup).ForEach((S s) => {
  653.             OnUpdate(s, delta);
  654.         });
  655.     }
  656.     protected abstract void OnUpdate(S s, float delta);
  657. }
  658. public abstract class QuickSystemSharedDelta<S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  659.     protected override void OnCreate() {
  660.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1));
  661.     }
  662.     protected override void OnUpdate() {
  663.         float delta = Time.DeltaTime;
  664.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  665.             OnUpdate(s, ref t1, delta);
  666.         });
  667.     }
  668.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  669. }
  670. public abstract class QuickSystemSharedDelta<S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  671.     protected override void OnCreate() {
  672.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2));
  673.     }
  674.     protected override void OnUpdate() {
  675.         float delta = Time.DeltaTime;
  676.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  677.             OnUpdate(s, ref t1, ref t2, delta);
  678.         });
  679.     }
  680.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  681. }
  682. public abstract class QuickSystemSharedDelta<S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  683.     protected override void OnCreate() {
  684.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3));
  685.     }
  686.     protected override void OnUpdate() {
  687.         float delta = Time.DeltaTime;
  688.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  689.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  690.         });
  691.     }
  692.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  693. }
  694. public abstract class QuickSystemSharedDelta<S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  695.     protected override void OnCreate() {
  696.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  697.     }
  698.     protected override void OnUpdate() {
  699.         float delta = Time.DeltaTime;
  700.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  701.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  702.         });
  703.     }
  704.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  705. }
  706. public abstract class QuickSystemSharedDelta<S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  707.     protected override void OnCreate() {
  708.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  709.     }
  710.     protected override void OnUpdate() {
  711.         float delta = Time.DeltaTime;
  712.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  713.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  714.         });
  715.     }
  716.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  717. }
  718. public abstract class QuickSystemEntitySharedDelta<S> : QuickSystemBase where S : struct, ISharedComponentData {
  719.     protected override void OnCreate() {
  720.         m_MainGroup = GetEntityQuery(typeof(S));
  721.     }
  722.     protected override void OnUpdate() {
  723.         float delta = Time.DeltaTime;
  724.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  725.             OnUpdate(e, s, delta);
  726.         });
  727.     }
  728.     protected abstract void OnUpdate(Entity e, S s, float delta);
  729. }
  730. public abstract class QuickSystemEntitySharedDelta<S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  731.     protected override void OnCreate() {
  732.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1));
  733.     }
  734.     protected override void OnUpdate() {
  735.         float delta = Time.DeltaTime;
  736.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  737.             OnUpdate(e, s, ref t1, delta);
  738.         });
  739.     }
  740.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  741. }
  742. public abstract class QuickSystemEntitySharedDelta<S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  743.     protected override void OnCreate() {
  744.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2));
  745.     }
  746.     protected override void OnUpdate() {
  747.         float delta = Time.DeltaTime;
  748.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  749.             OnUpdate(e, s, ref t1, ref t2, delta);
  750.         });
  751.     }
  752.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  753. }
  754. public abstract class QuickSystemEntitySharedDelta<S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  755.     protected override void OnCreate() {
  756.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3));
  757.     }
  758.     protected override void OnUpdate() {
  759.         float delta = Time.DeltaTime;
  760.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  761.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  762.         });
  763.     }
  764.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  765. }
  766. public abstract class QuickSystemEntitySharedDelta<S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  767.     protected override void OnCreate() {
  768.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  769.     }
  770.     protected override void OnUpdate() {
  771.         float delta = Time.DeltaTime;
  772.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  773.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  774.         });
  775.     }
  776.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  777. }
  778. public abstract class QuickSystemEntitySharedDelta<S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  779.     protected override void OnCreate() {
  780.         m_MainGroup = GetEntityQuery(typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  781.     }
  782.     protected override void OnUpdate() {
  783.         float delta = Time.DeltaTime;
  784.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  785.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  786.         });
  787.     }
  788.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  789. }
  790. public abstract class QuickSystemBuffer<D> : QuickSystemBase where D : struct, IBufferElementData {
  791.     protected override void OnCreate() {
  792.         m_MainGroup = GetEntityQuery(typeof(D));
  793.     }
  794.     protected override void OnUpdate() {
  795.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  796.             OnUpdate(d);
  797.         });
  798.     }
  799.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  800. }
  801. public abstract class QuickSystemBuffer<D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  802.     protected override void OnCreate() {
  803.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1));
  804.     }
  805.     protected override void OnUpdate() {
  806.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  807.             OnUpdate(d, ref t1);
  808.         });
  809.     }
  810.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  811. }
  812. public abstract class QuickSystemBuffer<D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  813.     protected override void OnCreate() {
  814.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2));
  815.     }
  816.     protected override void OnUpdate() {
  817.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  818.             OnUpdate(d, ref t1, ref t2);
  819.         });
  820.     }
  821.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  822. }
  823. public abstract class QuickSystemBuffer<D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  824.     protected override void OnCreate() {
  825.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3));
  826.     }
  827.     protected override void OnUpdate() {
  828.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  829.             OnUpdate(d, ref t1, ref t2, ref t3);
  830.         });
  831.     }
  832.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  833. }
  834. public abstract class QuickSystemBuffer<D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  835.     protected override void OnCreate() {
  836.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  837.     }
  838.     protected override void OnUpdate() {
  839.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  840.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  841.         });
  842.     }
  843.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  844. }
  845. public abstract class QuickSystemBuffer<D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  846.     protected override void OnCreate() {
  847.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  848.     }
  849.     protected override void OnUpdate() {
  850.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  851.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  852.         });
  853.     }
  854.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  855. }
  856. public abstract class QuickSystemEntityBuffer<D> : QuickSystemBase where D : struct, IBufferElementData {
  857.     protected override void OnCreate() {
  858.         m_MainGroup = GetEntityQuery(typeof(D));
  859.     }
  860.     protected override void OnUpdate() {
  861.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  862.             OnUpdate(e, d);
  863.         });
  864.     }
  865.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  866. }
  867. public abstract class QuickSystemEntityBuffer<D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  868.     protected override void OnCreate() {
  869.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1));
  870.     }
  871.     protected override void OnUpdate() {
  872.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  873.             OnUpdate(e, d, ref t1);
  874.         });
  875.     }
  876.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  877. }
  878. public abstract class QuickSystemEntityBuffer<D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  879.     protected override void OnCreate() {
  880.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2));
  881.     }
  882.     protected override void OnUpdate() {
  883.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  884.             OnUpdate(e, d, ref t1, ref t2);
  885.         });
  886.     }
  887.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  888. }
  889. public abstract class QuickSystemEntityBuffer<D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  890.     protected override void OnCreate() {
  891.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3));
  892.     }
  893.     protected override void OnUpdate() {
  894.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  895.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  896.         });
  897.     }
  898.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  899. }
  900. public abstract class QuickSystemEntityBuffer<D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  901.     protected override void OnCreate() {
  902.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  903.     }
  904.     protected override void OnUpdate() {
  905.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  906.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  907.         });
  908.     }
  909.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  910. }
  911. public abstract class QuickSystemEntityBuffer<D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  912.     protected override void OnCreate() {
  913.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  914.     }
  915.     protected override void OnUpdate() {
  916.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  917.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  918.         });
  919.     }
  920.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  921. }
  922. public abstract class QuickSystemBufferDelta<D> : QuickSystemBase where D : struct, IBufferElementData {
  923.     protected override void OnCreate() {
  924.         m_MainGroup = GetEntityQuery(typeof(D));
  925.     }
  926.     protected override void OnUpdate() {
  927.         float delta = Time.DeltaTime;
  928.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  929.             OnUpdate(d, delta);
  930.         });
  931.     }
  932.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  933. }
  934. public abstract class QuickSystemBufferDelta<D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  935.     protected override void OnCreate() {
  936.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1));
  937.     }
  938.     protected override void OnUpdate() {
  939.         float delta = Time.DeltaTime;
  940.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  941.             OnUpdate(d, ref t1, delta);
  942.         });
  943.     }
  944.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  945. }
  946. public abstract class QuickSystemBufferDelta<D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  947.     protected override void OnCreate() {
  948.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2));
  949.     }
  950.     protected override void OnUpdate() {
  951.         float delta = Time.DeltaTime;
  952.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  953.             OnUpdate(d, ref t1, ref t2, delta);
  954.         });
  955.     }
  956.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  957. }
  958. public abstract class QuickSystemBufferDelta<D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  959.     protected override void OnCreate() {
  960.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3));
  961.     }
  962.     protected override void OnUpdate() {
  963.         float delta = Time.DeltaTime;
  964.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  965.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  966.         });
  967.     }
  968.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  969. }
  970. public abstract class QuickSystemBufferDelta<D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  971.     protected override void OnCreate() {
  972.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  973.     }
  974.     protected override void OnUpdate() {
  975.         float delta = Time.DeltaTime;
  976.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  977.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  978.         });
  979.     }
  980.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  981. }
  982. public abstract class QuickSystemBufferDelta<D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  983.     protected override void OnCreate() {
  984.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  985.     }
  986.     protected override void OnUpdate() {
  987.         float delta = Time.DeltaTime;
  988.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  989.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  990.         });
  991.     }
  992.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  993. }
  994. public abstract class QuickSystemEntityBufferDelta<D> : QuickSystemBase where D : struct, IBufferElementData {
  995.     protected override void OnCreate() {
  996.         m_MainGroup = GetEntityQuery(typeof(D));
  997.     }
  998.     protected override void OnUpdate() {
  999.         float delta = Time.DeltaTime;
  1000.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  1001.             OnUpdate(e, d, delta);
  1002.         });
  1003.     }
  1004.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  1005. }
  1006. public abstract class QuickSystemEntityBufferDelta<D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  1007.     protected override void OnCreate() {
  1008.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1));
  1009.     }
  1010.     protected override void OnUpdate() {
  1011.         float delta = Time.DeltaTime;
  1012.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  1013.             OnUpdate(e, d, ref t1, delta);
  1014.         });
  1015.     }
  1016.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  1017. }
  1018. public abstract class QuickSystemEntityBufferDelta<D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1019.     protected override void OnCreate() {
  1020.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2));
  1021.     }
  1022.     protected override void OnUpdate() {
  1023.         float delta = Time.DeltaTime;
  1024.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  1025.             OnUpdate(e, d, ref t1, ref t2, delta);
  1026.         });
  1027.     }
  1028.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  1029. }
  1030. public abstract class QuickSystemEntityBufferDelta<D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1031.     protected override void OnCreate() {
  1032.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3));
  1033.     }
  1034.     protected override void OnUpdate() {
  1035.         float delta = Time.DeltaTime;
  1036.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1037.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  1038.         });
  1039.     }
  1040.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1041. }
  1042. public abstract class QuickSystemEntityBufferDelta<D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1043.     protected override void OnCreate() {
  1044.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1045.     }
  1046.     protected override void OnUpdate() {
  1047.         float delta = Time.DeltaTime;
  1048.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1049.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  1050.         });
  1051.     }
  1052.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1053. }
  1054. public abstract class QuickSystemEntityBufferDelta<D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1055.     protected override void OnCreate() {
  1056.         m_MainGroup = GetEntityQuery(typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1057.     }
  1058.     protected override void OnUpdate() {
  1059.         float delta = Time.DeltaTime;
  1060.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1061.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1062.         });
  1063.     }
  1064.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1065. }
  1066. public abstract class QuickSystemFilter1Class<F1, C> : QuickSystemBase where C : class {
  1067.     protected override void OnCreate() {
  1068.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C));
  1069.     }
  1070.     protected override void OnUpdate() {
  1071.         Entities.With(m_MainGroup).ForEach((C c) => {
  1072.             OnUpdate(c);
  1073.         });
  1074.     }
  1075.     protected abstract void OnUpdate(C c);
  1076. }
  1077. public abstract class QuickSystemFilter1Class<F1, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  1078.     protected override void OnCreate() {
  1079.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1));
  1080.     }
  1081.     protected override void OnUpdate() {
  1082.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  1083.             OnUpdate(c, ref t1);
  1084.         });
  1085.     }
  1086.     protected abstract void OnUpdate(C c, ref T1 t1);
  1087. }
  1088. public abstract class QuickSystemFilter1<F1, T1> : QuickSystemBase where T1 : struct, IComponentData {
  1089.     protected override void OnCreate() {
  1090.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1));
  1091.     }
  1092.     protected override void OnUpdate() {
  1093.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  1094.             OnUpdate(ref t1);
  1095.         });
  1096.     }
  1097.     protected abstract void OnUpdate(ref T1 t1);
  1098. }
  1099. public abstract class QuickSystemFilter1Class<F1, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1100.     protected override void OnCreate() {
  1101.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2));
  1102.     }
  1103.     protected override void OnUpdate() {
  1104.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  1105.             OnUpdate(c, ref t1, ref t2);
  1106.         });
  1107.     }
  1108.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  1109. }
  1110. public abstract class QuickSystemFilter1<F1, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1111.     protected override void OnCreate() {
  1112.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2));
  1113.     }
  1114.     protected override void OnUpdate() {
  1115.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  1116.             OnUpdate(ref t1, ref t2);
  1117.         });
  1118.     }
  1119.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  1120. }
  1121. public abstract class QuickSystemFilter1Class<F1, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1122.     protected override void OnCreate() {
  1123.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  1124.     }
  1125.     protected override void OnUpdate() {
  1126.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1127.             OnUpdate(c, ref t1, ref t2, ref t3);
  1128.         });
  1129.     }
  1130.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  1131. }
  1132. public abstract class QuickSystemFilter1<F1, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1133.     protected override void OnCreate() {
  1134.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3));
  1135.     }
  1136.     protected override void OnUpdate() {
  1137.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  1138.             OnUpdate(ref t1, ref t2, ref t3);
  1139.         });
  1140.     }
  1141.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  1142. }
  1143. public abstract class QuickSystemFilter1Class<F1, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1144.     protected override void OnCreate() {
  1145.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1146.     }
  1147.     protected override void OnUpdate() {
  1148.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1149.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  1150.         });
  1151.     }
  1152.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1153. }
  1154. public abstract class QuickSystemFilter1<F1, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1155.     protected override void OnCreate() {
  1156.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1157.     }
  1158.     protected override void OnUpdate() {
  1159.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1160.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  1161.         });
  1162.     }
  1163.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1164. }
  1165. public abstract class QuickSystemFilter1Class<F1, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1166.     protected override void OnCreate() {
  1167.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1168.     }
  1169.     protected override void OnUpdate() {
  1170.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1171.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  1172.         });
  1173.     }
  1174.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1175. }
  1176. public abstract class QuickSystemFilter1<F1, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1177.     protected override void OnCreate() {
  1178.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1179.     }
  1180.     protected override void OnUpdate() {
  1181.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1182.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  1183.         });
  1184.     }
  1185.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1186. }
  1187. public abstract class QuickSystemFilter1EntityClass<F1, C> : QuickSystemBase where C : class {
  1188.     protected override void OnCreate() {
  1189.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C));
  1190.     }
  1191.     protected override void OnUpdate() {
  1192.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  1193.             OnUpdate(e, c);
  1194.         });
  1195.     }
  1196.     protected abstract void OnUpdate(Entity e, C c);
  1197. }
  1198. public abstract class QuickSystemFilter1Entity<F1> : QuickSystemBase {
  1199.     protected override void OnCreate() {
  1200.         m_MainGroup = GetEntityQuery(typeof(F1));
  1201.     }
  1202.     protected override void OnUpdate() {
  1203.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  1204.             OnUpdate(e);
  1205.         });
  1206.     }
  1207.     protected abstract void OnUpdate(Entity e);
  1208. }
  1209. public abstract class QuickSystemFilter1EntityClass<F1, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  1210.     protected override void OnCreate() {
  1211.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1));
  1212.     }
  1213.     protected override void OnUpdate() {
  1214.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  1215.             OnUpdate(e, c, ref t1);
  1216.         });
  1217.     }
  1218.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  1219. }
  1220. public abstract class QuickSystemFilter1Entity<F1, T1> : QuickSystemBase where T1 : struct, IComponentData {
  1221.     protected override void OnCreate() {
  1222.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1));
  1223.     }
  1224.     protected override void OnUpdate() {
  1225.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  1226.             OnUpdate(e, ref t1);
  1227.         });
  1228.     }
  1229.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  1230. }
  1231. public abstract class QuickSystemFilter1EntityClass<F1, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1232.     protected override void OnCreate() {
  1233.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2));
  1234.     }
  1235.     protected override void OnUpdate() {
  1236.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  1237.             OnUpdate(e, c, ref t1, ref t2);
  1238.         });
  1239.     }
  1240.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  1241. }
  1242. public abstract class QuickSystemFilter1Entity<F1, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1243.     protected override void OnCreate() {
  1244.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2));
  1245.     }
  1246.     protected override void OnUpdate() {
  1247.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  1248.             OnUpdate(e, ref t1, ref t2);
  1249.         });
  1250.     }
  1251.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  1252. }
  1253. public abstract class QuickSystemFilter1EntityClass<F1, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1254.     protected override void OnCreate() {
  1255.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  1256.     }
  1257.     protected override void OnUpdate() {
  1258.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1259.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  1260.         });
  1261.     }
  1262.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  1263. }
  1264. public abstract class QuickSystemFilter1Entity<F1, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1265.     protected override void OnCreate() {
  1266.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3));
  1267.     }
  1268.     protected override void OnUpdate() {
  1269.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1270.             OnUpdate(e, ref t1, ref t2, ref t3);
  1271.         });
  1272.     }
  1273.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  1274. }
  1275. public abstract class QuickSystemFilter1EntityClass<F1, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1276.     protected override void OnCreate() {
  1277.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1278.     }
  1279.     protected override void OnUpdate() {
  1280.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1281.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  1282.         });
  1283.     }
  1284.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1285. }
  1286. public abstract class QuickSystemFilter1Entity<F1, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1287.     protected override void OnCreate() {
  1288.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1289.     }
  1290.     protected override void OnUpdate() {
  1291.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1292.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  1293.         });
  1294.     }
  1295.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1296. }
  1297. public abstract class QuickSystemFilter1EntityClass<F1, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1298.     protected override void OnCreate() {
  1299.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1300.     }
  1301.     protected override void OnUpdate() {
  1302.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1303.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  1304.         });
  1305.     }
  1306.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1307. }
  1308. public abstract class QuickSystemFilter1Entity<F1, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1309.     protected override void OnCreate() {
  1310.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1311.     }
  1312.     protected override void OnUpdate() {
  1313.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1314.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  1315.         });
  1316.     }
  1317.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1318. }
  1319. public abstract class QuickSystemFilter1ClassDelta<F1, C> : QuickSystemBase where C : class {
  1320.     protected override void OnCreate() {
  1321.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C));
  1322.     }
  1323.     protected override void OnUpdate() {
  1324.         float delta = Time.DeltaTime;
  1325.         Entities.With(m_MainGroup).ForEach((C c) => {
  1326.             OnUpdate(c, delta);
  1327.         });
  1328.     }
  1329.     protected abstract void OnUpdate(C c, float delta);
  1330. }
  1331. public abstract class QuickSystemFilter1ClassDelta<F1, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  1332.     protected override void OnCreate() {
  1333.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1));
  1334.     }
  1335.     protected override void OnUpdate() {
  1336.         float delta = Time.DeltaTime;
  1337.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  1338.             OnUpdate(c, ref t1, delta);
  1339.         });
  1340.     }
  1341.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  1342. }
  1343. public abstract class QuickSystemFilter1Delta<F1, T1> : QuickSystemBase where T1 : struct, IComponentData {
  1344.     protected override void OnCreate() {
  1345.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1));
  1346.     }
  1347.     protected override void OnUpdate() {
  1348.         float delta = Time.DeltaTime;
  1349.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  1350.             OnUpdate(ref t1, delta);
  1351.         });
  1352.     }
  1353.     protected abstract void OnUpdate(ref T1 t1, float delta);
  1354. }
  1355. public abstract class QuickSystemFilter1ClassDelta<F1, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1356.     protected override void OnCreate() {
  1357.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2));
  1358.     }
  1359.     protected override void OnUpdate() {
  1360.         float delta = Time.DeltaTime;
  1361.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  1362.             OnUpdate(c, ref t1, ref t2, delta);
  1363.         });
  1364.     }
  1365.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  1366. }
  1367. public abstract class QuickSystemFilter1Delta<F1, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1368.     protected override void OnCreate() {
  1369.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2));
  1370.     }
  1371.     protected override void OnUpdate() {
  1372.         float delta = Time.DeltaTime;
  1373.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  1374.             OnUpdate(ref t1, ref t2, delta);
  1375.         });
  1376.     }
  1377.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  1378. }
  1379. public abstract class QuickSystemFilter1ClassDelta<F1, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1380.     protected override void OnCreate() {
  1381.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  1382.     }
  1383.     protected override void OnUpdate() {
  1384.         float delta = Time.DeltaTime;
  1385.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1386.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  1387.         });
  1388.     }
  1389.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1390. }
  1391. public abstract class QuickSystemFilter1Delta<F1, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1392.     protected override void OnCreate() {
  1393.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3));
  1394.     }
  1395.     protected override void OnUpdate() {
  1396.         float delta = Time.DeltaTime;
  1397.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  1398.             OnUpdate(ref t1, ref t2, ref t3, delta);
  1399.         });
  1400.     }
  1401.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1402. }
  1403. public abstract class QuickSystemFilter1ClassDelta<F1, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1404.     protected override void OnCreate() {
  1405.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1406.     }
  1407.     protected override void OnUpdate() {
  1408.         float delta = Time.DeltaTime;
  1409.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1410.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  1411.         });
  1412.     }
  1413.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1414. }
  1415. public abstract class QuickSystemFilter1Delta<F1, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1416.     protected override void OnCreate() {
  1417.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1418.     }
  1419.     protected override void OnUpdate() {
  1420.         float delta = Time.DeltaTime;
  1421.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1422.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  1423.         });
  1424.     }
  1425.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1426. }
  1427. public abstract class QuickSystemFilter1ClassDelta<F1, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1428.     protected override void OnCreate() {
  1429.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1430.     }
  1431.     protected override void OnUpdate() {
  1432.         float delta = Time.DeltaTime;
  1433.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1434.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1435.         });
  1436.     }
  1437.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1438. }
  1439. public abstract class QuickSystemFilter1Delta<F1, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1440.     protected override void OnCreate() {
  1441.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1442.     }
  1443.     protected override void OnUpdate() {
  1444.         float delta = Time.DeltaTime;
  1445.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1446.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1447.         });
  1448.     }
  1449.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1450. }
  1451. public abstract class QuickSystemFilter1EntityClassDelta<F1, C> : QuickSystemBase where C : class {
  1452.     protected override void OnCreate() {
  1453.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C));
  1454.     }
  1455.     protected override void OnUpdate() {
  1456.         float delta = Time.DeltaTime;
  1457.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  1458.             OnUpdate(e, c, delta);
  1459.         });
  1460.     }
  1461.     protected abstract void OnUpdate(Entity e, C c, float delta);
  1462. }
  1463. public abstract class QuickSystemFilter1EntityDelta<F1> : QuickSystemBase {
  1464.     protected override void OnCreate() {
  1465.         m_MainGroup = GetEntityQuery(typeof(F1));
  1466.     }
  1467.     protected override void OnUpdate() {
  1468.         float delta = Time.DeltaTime;
  1469.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  1470.             OnUpdate(e, delta);
  1471.         });
  1472.     }
  1473.     protected abstract void OnUpdate(Entity e, float delta);
  1474. }
  1475. public abstract class QuickSystemFilter1EntityClassDelta<F1, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  1476.     protected override void OnCreate() {
  1477.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1));
  1478.     }
  1479.     protected override void OnUpdate() {
  1480.         float delta = Time.DeltaTime;
  1481.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  1482.             OnUpdate(e, c, ref t1, delta);
  1483.         });
  1484.     }
  1485.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  1486. }
  1487. public abstract class QuickSystemFilter1EntityDelta<F1, T1> : QuickSystemBase where T1 : struct, IComponentData {
  1488.     protected override void OnCreate() {
  1489.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1));
  1490.     }
  1491.     protected override void OnUpdate() {
  1492.         float delta = Time.DeltaTime;
  1493.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  1494.             OnUpdate(e, ref t1, delta);
  1495.         });
  1496.     }
  1497.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  1498. }
  1499. public abstract class QuickSystemFilter1EntityClassDelta<F1, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1500.     protected override void OnCreate() {
  1501.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2));
  1502.     }
  1503.     protected override void OnUpdate() {
  1504.         float delta = Time.DeltaTime;
  1505.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  1506.             OnUpdate(e, c, ref t1, ref t2, delta);
  1507.         });
  1508.     }
  1509.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  1510. }
  1511. public abstract class QuickSystemFilter1EntityDelta<F1, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1512.     protected override void OnCreate() {
  1513.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2));
  1514.     }
  1515.     protected override void OnUpdate() {
  1516.         float delta = Time.DeltaTime;
  1517.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  1518.             OnUpdate(e, ref t1, ref t2, delta);
  1519.         });
  1520.     }
  1521.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  1522. }
  1523. public abstract class QuickSystemFilter1EntityClassDelta<F1, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1524.     protected override void OnCreate() {
  1525.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  1526.     }
  1527.     protected override void OnUpdate() {
  1528.         float delta = Time.DeltaTime;
  1529.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1530.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  1531.         });
  1532.     }
  1533.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1534. }
  1535. public abstract class QuickSystemFilter1EntityDelta<F1, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1536.     protected override void OnCreate() {
  1537.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3));
  1538.     }
  1539.     protected override void OnUpdate() {
  1540.         float delta = Time.DeltaTime;
  1541.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1542.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  1543.         });
  1544.     }
  1545.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1546. }
  1547. public abstract class QuickSystemFilter1EntityClassDelta<F1, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1548.     protected override void OnCreate() {
  1549.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1550.     }
  1551.     protected override void OnUpdate() {
  1552.         float delta = Time.DeltaTime;
  1553.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1554.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  1555.         });
  1556.     }
  1557.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1558. }
  1559. public abstract class QuickSystemFilter1EntityDelta<F1, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1560.     protected override void OnCreate() {
  1561.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1562.     }
  1563.     protected override void OnUpdate() {
  1564.         float delta = Time.DeltaTime;
  1565.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1566.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  1567.         });
  1568.     }
  1569.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1570. }
  1571. public abstract class QuickSystemFilter1EntityClassDelta<F1, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1572.     protected override void OnCreate() {
  1573.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1574.     }
  1575.     protected override void OnUpdate() {
  1576.         float delta = Time.DeltaTime;
  1577.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1578.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1579.         });
  1580.     }
  1581.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1582. }
  1583. public abstract class QuickSystemFilter1EntityDelta<F1, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1584.     protected override void OnCreate() {
  1585.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1586.     }
  1587.     protected override void OnUpdate() {
  1588.         float delta = Time.DeltaTime;
  1589.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1590.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1591.         });
  1592.     }
  1593.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1594. }
  1595. public abstract class QuickSystemFilter1Shared<F1, S> : QuickSystemBase where S : struct, ISharedComponentData {
  1596.     protected override void OnCreate() {
  1597.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S));
  1598.     }
  1599.     protected override void OnUpdate() {
  1600.         Entities.With(m_MainGroup).ForEach((S s) => {
  1601.             OnUpdate(s);
  1602.         });
  1603.     }
  1604.     protected abstract void OnUpdate(S s);
  1605. }
  1606. public abstract class QuickSystemFilter1Shared<F1, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  1607.     protected override void OnCreate() {
  1608.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1));
  1609.     }
  1610.     protected override void OnUpdate() {
  1611.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  1612.             OnUpdate(s, ref t1);
  1613.         });
  1614.     }
  1615.     protected abstract void OnUpdate(S s, ref T1 t1);
  1616. }
  1617. public abstract class QuickSystemFilter1Shared<F1, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1618.     protected override void OnCreate() {
  1619.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2));
  1620.     }
  1621.     protected override void OnUpdate() {
  1622.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  1623.             OnUpdate(s, ref t1, ref t2);
  1624.         });
  1625.     }
  1626.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  1627. }
  1628. public abstract class QuickSystemFilter1Shared<F1, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1629.     protected override void OnCreate() {
  1630.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  1631.     }
  1632.     protected override void OnUpdate() {
  1633.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1634.             OnUpdate(s, ref t1, ref t2, ref t3);
  1635.         });
  1636.     }
  1637.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  1638. }
  1639. public abstract class QuickSystemFilter1Shared<F1, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1640.     protected override void OnCreate() {
  1641.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1642.     }
  1643.     protected override void OnUpdate() {
  1644.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1645.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  1646.         });
  1647.     }
  1648.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1649. }
  1650. public abstract class QuickSystemFilter1Shared<F1, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1651.     protected override void OnCreate() {
  1652.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1653.     }
  1654.     protected override void OnUpdate() {
  1655.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1656.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  1657.         });
  1658.     }
  1659.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1660. }
  1661. public abstract class QuickSystemFilter1EntityShared<F1, S> : QuickSystemBase where S : struct, ISharedComponentData {
  1662.     protected override void OnCreate() {
  1663.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S));
  1664.     }
  1665.     protected override void OnUpdate() {
  1666.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  1667.             OnUpdate(e, s);
  1668.         });
  1669.     }
  1670.     protected abstract void OnUpdate(Entity e, S s);
  1671. }
  1672. public abstract class QuickSystemFilter1EntityShared<F1, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  1673.     protected override void OnCreate() {
  1674.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1));
  1675.     }
  1676.     protected override void OnUpdate() {
  1677.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  1678.             OnUpdate(e, s, ref t1);
  1679.         });
  1680.     }
  1681.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  1682. }
  1683. public abstract class QuickSystemFilter1EntityShared<F1, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1684.     protected override void OnCreate() {
  1685.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2));
  1686.     }
  1687.     protected override void OnUpdate() {
  1688.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  1689.             OnUpdate(e, s, ref t1, ref t2);
  1690.         });
  1691.     }
  1692.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  1693. }
  1694. public abstract class QuickSystemFilter1EntityShared<F1, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1695.     protected override void OnCreate() {
  1696.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  1697.     }
  1698.     protected override void OnUpdate() {
  1699.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1700.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  1701.         });
  1702.     }
  1703.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  1704. }
  1705. public abstract class QuickSystemFilter1EntityShared<F1, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1706.     protected override void OnCreate() {
  1707.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1708.     }
  1709.     protected override void OnUpdate() {
  1710.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1711.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  1712.         });
  1713.     }
  1714.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1715. }
  1716. public abstract class QuickSystemFilter1EntityShared<F1, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1717.     protected override void OnCreate() {
  1718.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1719.     }
  1720.     protected override void OnUpdate() {
  1721.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1722.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  1723.         });
  1724.     }
  1725.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1726. }
  1727. public abstract class QuickSystemFilter1SharedDelta<F1, S> : QuickSystemBase where S : struct, ISharedComponentData {
  1728.     protected override void OnCreate() {
  1729.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S));
  1730.     }
  1731.     protected override void OnUpdate() {
  1732.         float delta = Time.DeltaTime;
  1733.         Entities.With(m_MainGroup).ForEach((S s) => {
  1734.             OnUpdate(s, delta);
  1735.         });
  1736.     }
  1737.     protected abstract void OnUpdate(S s, float delta);
  1738. }
  1739. public abstract class QuickSystemFilter1SharedDelta<F1, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  1740.     protected override void OnCreate() {
  1741.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1));
  1742.     }
  1743.     protected override void OnUpdate() {
  1744.         float delta = Time.DeltaTime;
  1745.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  1746.             OnUpdate(s, ref t1, delta);
  1747.         });
  1748.     }
  1749.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  1750. }
  1751. public abstract class QuickSystemFilter1SharedDelta<F1, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1752.     protected override void OnCreate() {
  1753.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2));
  1754.     }
  1755.     protected override void OnUpdate() {
  1756.         float delta = Time.DeltaTime;
  1757.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  1758.             OnUpdate(s, ref t1, ref t2, delta);
  1759.         });
  1760.     }
  1761.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  1762. }
  1763. public abstract class QuickSystemFilter1SharedDelta<F1, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1764.     protected override void OnCreate() {
  1765.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  1766.     }
  1767.     protected override void OnUpdate() {
  1768.         float delta = Time.DeltaTime;
  1769.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1770.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  1771.         });
  1772.     }
  1773.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1774. }
  1775. public abstract class QuickSystemFilter1SharedDelta<F1, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1776.     protected override void OnCreate() {
  1777.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1778.     }
  1779.     protected override void OnUpdate() {
  1780.         float delta = Time.DeltaTime;
  1781.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1782.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  1783.         });
  1784.     }
  1785.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1786. }
  1787. public abstract class QuickSystemFilter1SharedDelta<F1, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1788.     protected override void OnCreate() {
  1789.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1790.     }
  1791.     protected override void OnUpdate() {
  1792.         float delta = Time.DeltaTime;
  1793.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1794.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1795.         });
  1796.     }
  1797.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1798. }
  1799. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S> : QuickSystemBase where S : struct, ISharedComponentData {
  1800.     protected override void OnCreate() {
  1801.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S));
  1802.     }
  1803.     protected override void OnUpdate() {
  1804.         float delta = Time.DeltaTime;
  1805.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  1806.             OnUpdate(e, s, delta);
  1807.         });
  1808.     }
  1809.     protected abstract void OnUpdate(Entity e, S s, float delta);
  1810. }
  1811. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  1812.     protected override void OnCreate() {
  1813.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1));
  1814.     }
  1815.     protected override void OnUpdate() {
  1816.         float delta = Time.DeltaTime;
  1817.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  1818.             OnUpdate(e, s, ref t1, delta);
  1819.         });
  1820.     }
  1821.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  1822. }
  1823. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1824.     protected override void OnCreate() {
  1825.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2));
  1826.     }
  1827.     protected override void OnUpdate() {
  1828.         float delta = Time.DeltaTime;
  1829.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  1830.             OnUpdate(e, s, ref t1, ref t2, delta);
  1831.         });
  1832.     }
  1833.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  1834. }
  1835. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1836.     protected override void OnCreate() {
  1837.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  1838.     }
  1839.     protected override void OnUpdate() {
  1840.         float delta = Time.DeltaTime;
  1841.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1842.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  1843.         });
  1844.     }
  1845.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  1846. }
  1847. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1848.     protected override void OnCreate() {
  1849.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1850.     }
  1851.     protected override void OnUpdate() {
  1852.         float delta = Time.DeltaTime;
  1853.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1854.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  1855.         });
  1856.     }
  1857.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  1858. }
  1859. public abstract class QuickSystemFilter1EntitySharedDelta<F1, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1860.     protected override void OnCreate() {
  1861.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1862.     }
  1863.     protected override void OnUpdate() {
  1864.         float delta = Time.DeltaTime;
  1865.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1866.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  1867.         });
  1868.     }
  1869.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  1870. }
  1871. public abstract class QuickSystemFilter1Buffer<F1, D> : QuickSystemBase where D : struct, IBufferElementData {
  1872.     protected override void OnCreate() {
  1873.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D));
  1874.     }
  1875.     protected override void OnUpdate() {
  1876.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  1877.             OnUpdate(d);
  1878.         });
  1879.     }
  1880.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  1881. }
  1882. public abstract class QuickSystemFilter1Buffer<F1, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  1883.     protected override void OnCreate() {
  1884.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1));
  1885.     }
  1886.     protected override void OnUpdate() {
  1887.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  1888.             OnUpdate(d, ref t1);
  1889.         });
  1890.     }
  1891.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  1892. }
  1893. public abstract class QuickSystemFilter1Buffer<F1, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1894.     protected override void OnCreate() {
  1895.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2));
  1896.     }
  1897.     protected override void OnUpdate() {
  1898.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  1899.             OnUpdate(d, ref t1, ref t2);
  1900.         });
  1901.     }
  1902.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  1903. }
  1904. public abstract class QuickSystemFilter1Buffer<F1, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1905.     protected override void OnCreate() {
  1906.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  1907.     }
  1908.     protected override void OnUpdate() {
  1909.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1910.             OnUpdate(d, ref t1, ref t2, ref t3);
  1911.         });
  1912.     }
  1913.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  1914. }
  1915. public abstract class QuickSystemFilter1Buffer<F1, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1916.     protected override void OnCreate() {
  1917.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1918.     }
  1919.     protected override void OnUpdate() {
  1920.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1921.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  1922.         });
  1923.     }
  1924.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1925. }
  1926. public abstract class QuickSystemFilter1Buffer<F1, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1927.     protected override void OnCreate() {
  1928.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1929.     }
  1930.     protected override void OnUpdate() {
  1931.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1932.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  1933.         });
  1934.     }
  1935.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  1936. }
  1937. public abstract class QuickSystemFilter1EntityBuffer<F1, D> : QuickSystemBase where D : struct, IBufferElementData {
  1938.     protected override void OnCreate() {
  1939.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D));
  1940.     }
  1941.     protected override void OnUpdate() {
  1942.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  1943.             OnUpdate(e, d);
  1944.         });
  1945.     }
  1946.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  1947. }
  1948. public abstract class QuickSystemFilter1EntityBuffer<F1, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  1949.     protected override void OnCreate() {
  1950.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1));
  1951.     }
  1952.     protected override void OnUpdate() {
  1953.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  1954.             OnUpdate(e, d, ref t1);
  1955.         });
  1956.     }
  1957.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  1958. }
  1959. public abstract class QuickSystemFilter1EntityBuffer<F1, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  1960.     protected override void OnCreate() {
  1961.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2));
  1962.     }
  1963.     protected override void OnUpdate() {
  1964.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  1965.             OnUpdate(e, d, ref t1, ref t2);
  1966.         });
  1967.     }
  1968.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  1969. }
  1970. public abstract class QuickSystemFilter1EntityBuffer<F1, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  1971.     protected override void OnCreate() {
  1972.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  1973.     }
  1974.     protected override void OnUpdate() {
  1975.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  1976.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  1977.         });
  1978.     }
  1979.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  1980. }
  1981. public abstract class QuickSystemFilter1EntityBuffer<F1, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  1982.     protected override void OnCreate() {
  1983.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  1984.     }
  1985.     protected override void OnUpdate() {
  1986.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  1987.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  1988.         });
  1989.     }
  1990.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  1991. }
  1992. public abstract class QuickSystemFilter1EntityBuffer<F1, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  1993.     protected override void OnCreate() {
  1994.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  1995.     }
  1996.     protected override void OnUpdate() {
  1997.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  1998.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  1999.         });
  2000.     }
  2001.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2002. }
  2003. public abstract class QuickSystemFilter1BufferDelta<F1, D> : QuickSystemBase where D : struct, IBufferElementData {
  2004.     protected override void OnCreate() {
  2005.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D));
  2006.     }
  2007.     protected override void OnUpdate() {
  2008.         float delta = Time.DeltaTime;
  2009.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  2010.             OnUpdate(d, delta);
  2011.         });
  2012.     }
  2013.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  2014. }
  2015. public abstract class QuickSystemFilter1BufferDelta<F1, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  2016.     protected override void OnCreate() {
  2017.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1));
  2018.     }
  2019.     protected override void OnUpdate() {
  2020.         float delta = Time.DeltaTime;
  2021.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  2022.             OnUpdate(d, ref t1, delta);
  2023.         });
  2024.     }
  2025.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  2026. }
  2027. public abstract class QuickSystemFilter1BufferDelta<F1, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2028.     protected override void OnCreate() {
  2029.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2));
  2030.     }
  2031.     protected override void OnUpdate() {
  2032.         float delta = Time.DeltaTime;
  2033.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  2034.             OnUpdate(d, ref t1, ref t2, delta);
  2035.         });
  2036.     }
  2037.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  2038. }
  2039. public abstract class QuickSystemFilter1BufferDelta<F1, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2040.     protected override void OnCreate() {
  2041.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  2042.     }
  2043.     protected override void OnUpdate() {
  2044.         float delta = Time.DeltaTime;
  2045.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2046.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  2047.         });
  2048.     }
  2049.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2050. }
  2051. public abstract class QuickSystemFilter1BufferDelta<F1, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2052.     protected override void OnCreate() {
  2053.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2054.     }
  2055.     protected override void OnUpdate() {
  2056.         float delta = Time.DeltaTime;
  2057.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2058.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  2059.         });
  2060.     }
  2061.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2062. }
  2063. public abstract class QuickSystemFilter1BufferDelta<F1, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2064.     protected override void OnCreate() {
  2065.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2066.     }
  2067.     protected override void OnUpdate() {
  2068.         float delta = Time.DeltaTime;
  2069.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2070.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2071.         });
  2072.     }
  2073.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2074. }
  2075. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D> : QuickSystemBase where D : struct, IBufferElementData {
  2076.     protected override void OnCreate() {
  2077.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D));
  2078.     }
  2079.     protected override void OnUpdate() {
  2080.         float delta = Time.DeltaTime;
  2081.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  2082.             OnUpdate(e, d, delta);
  2083.         });
  2084.     }
  2085.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  2086. }
  2087. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  2088.     protected override void OnCreate() {
  2089.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1));
  2090.     }
  2091.     protected override void OnUpdate() {
  2092.         float delta = Time.DeltaTime;
  2093.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  2094.             OnUpdate(e, d, ref t1, delta);
  2095.         });
  2096.     }
  2097.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  2098. }
  2099. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2100.     protected override void OnCreate() {
  2101.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2));
  2102.     }
  2103.     protected override void OnUpdate() {
  2104.         float delta = Time.DeltaTime;
  2105.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  2106.             OnUpdate(e, d, ref t1, ref t2, delta);
  2107.         });
  2108.     }
  2109.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  2110. }
  2111. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2112.     protected override void OnCreate() {
  2113.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  2114.     }
  2115.     protected override void OnUpdate() {
  2116.         float delta = Time.DeltaTime;
  2117.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2118.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  2119.         });
  2120.     }
  2121.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2122. }
  2123. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2124.     protected override void OnCreate() {
  2125.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2126.     }
  2127.     protected override void OnUpdate() {
  2128.         float delta = Time.DeltaTime;
  2129.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2130.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  2131.         });
  2132.     }
  2133.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2134. }
  2135. public abstract class QuickSystemFilter1EntityBufferDelta<F1, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2136.     protected override void OnCreate() {
  2137.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2138.     }
  2139.     protected override void OnUpdate() {
  2140.         float delta = Time.DeltaTime;
  2141.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2142.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2143.         });
  2144.     }
  2145.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2146. }
  2147. public abstract class QuickSystemFilter2Class<F1, F2, C> : QuickSystemBase where C : class {
  2148.     protected override void OnCreate() {
  2149.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C));
  2150.     }
  2151.     protected override void OnUpdate() {
  2152.         Entities.With(m_MainGroup).ForEach((C c) => {
  2153.             OnUpdate(c);
  2154.         });
  2155.     }
  2156.     protected abstract void OnUpdate(C c);
  2157. }
  2158. public abstract class QuickSystemFilter2Class<F1, F2, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  2159.     protected override void OnCreate() {
  2160.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1));
  2161.     }
  2162.     protected override void OnUpdate() {
  2163.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  2164.             OnUpdate(c, ref t1);
  2165.         });
  2166.     }
  2167.     protected abstract void OnUpdate(C c, ref T1 t1);
  2168. }
  2169. public abstract class QuickSystemFilter2<F1, F2, T1> : QuickSystemBase where T1 : struct, IComponentData {
  2170.     protected override void OnCreate() {
  2171.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1));
  2172.     }
  2173.     protected override void OnUpdate() {
  2174.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  2175.             OnUpdate(ref t1);
  2176.         });
  2177.     }
  2178.     protected abstract void OnUpdate(ref T1 t1);
  2179. }
  2180. public abstract class QuickSystemFilter2Class<F1, F2, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2181.     protected override void OnCreate() {
  2182.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2));
  2183.     }
  2184.     protected override void OnUpdate() {
  2185.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  2186.             OnUpdate(c, ref t1, ref t2);
  2187.         });
  2188.     }
  2189.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  2190. }
  2191. public abstract class QuickSystemFilter2<F1, F2, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2192.     protected override void OnCreate() {
  2193.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2));
  2194.     }
  2195.     protected override void OnUpdate() {
  2196.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  2197.             OnUpdate(ref t1, ref t2);
  2198.         });
  2199.     }
  2200.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  2201. }
  2202. public abstract class QuickSystemFilter2Class<F1, F2, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2203.     protected override void OnCreate() {
  2204.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  2205.     }
  2206.     protected override void OnUpdate() {
  2207.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2208.             OnUpdate(c, ref t1, ref t2, ref t3);
  2209.         });
  2210.     }
  2211.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  2212. }
  2213. public abstract class QuickSystemFilter2<F1, F2, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2214.     protected override void OnCreate() {
  2215.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3));
  2216.     }
  2217.     protected override void OnUpdate() {
  2218.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  2219.             OnUpdate(ref t1, ref t2, ref t3);
  2220.         });
  2221.     }
  2222.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  2223. }
  2224. public abstract class QuickSystemFilter2Class<F1, F2, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2225.     protected override void OnCreate() {
  2226.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2227.     }
  2228.     protected override void OnUpdate() {
  2229.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2230.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  2231.         });
  2232.     }
  2233.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2234. }
  2235. public abstract class QuickSystemFilter2<F1, F2, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2236.     protected override void OnCreate() {
  2237.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2238.     }
  2239.     protected override void OnUpdate() {
  2240.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2241.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  2242.         });
  2243.     }
  2244.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2245. }
  2246. public abstract class QuickSystemFilter2Class<F1, F2, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2247.     protected override void OnCreate() {
  2248.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2249.     }
  2250.     protected override void OnUpdate() {
  2251.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2252.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  2253.         });
  2254.     }
  2255.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2256. }
  2257. public abstract class QuickSystemFilter2<F1, F2, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2258.     protected override void OnCreate() {
  2259.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2260.     }
  2261.     protected override void OnUpdate() {
  2262.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2263.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  2264.         });
  2265.     }
  2266.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2267. }
  2268. public abstract class QuickSystemFilter2EntityClass<F1, F2, C> : QuickSystemBase where C : class {
  2269.     protected override void OnCreate() {
  2270.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C));
  2271.     }
  2272.     protected override void OnUpdate() {
  2273.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  2274.             OnUpdate(e, c);
  2275.         });
  2276.     }
  2277.     protected abstract void OnUpdate(Entity e, C c);
  2278. }
  2279. public abstract class QuickSystemFilter2Entity<F1, F2> : QuickSystemBase {
  2280.     protected override void OnCreate() {
  2281.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2));
  2282.     }
  2283.     protected override void OnUpdate() {
  2284.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  2285.             OnUpdate(e);
  2286.         });
  2287.     }
  2288.     protected abstract void OnUpdate(Entity e);
  2289. }
  2290. public abstract class QuickSystemFilter2EntityClass<F1, F2, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  2291.     protected override void OnCreate() {
  2292.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1));
  2293.     }
  2294.     protected override void OnUpdate() {
  2295.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  2296.             OnUpdate(e, c, ref t1);
  2297.         });
  2298.     }
  2299.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  2300. }
  2301. public abstract class QuickSystemFilter2Entity<F1, F2, T1> : QuickSystemBase where T1 : struct, IComponentData {
  2302.     protected override void OnCreate() {
  2303.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1));
  2304.     }
  2305.     protected override void OnUpdate() {
  2306.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  2307.             OnUpdate(e, ref t1);
  2308.         });
  2309.     }
  2310.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  2311. }
  2312. public abstract class QuickSystemFilter2EntityClass<F1, F2, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2313.     protected override void OnCreate() {
  2314.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2));
  2315.     }
  2316.     protected override void OnUpdate() {
  2317.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  2318.             OnUpdate(e, c, ref t1, ref t2);
  2319.         });
  2320.     }
  2321.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  2322. }
  2323. public abstract class QuickSystemFilter2Entity<F1, F2, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2324.     protected override void OnCreate() {
  2325.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2));
  2326.     }
  2327.     protected override void OnUpdate() {
  2328.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  2329.             OnUpdate(e, ref t1, ref t2);
  2330.         });
  2331.     }
  2332.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  2333. }
  2334. public abstract class QuickSystemFilter2EntityClass<F1, F2, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2335.     protected override void OnCreate() {
  2336.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  2337.     }
  2338.     protected override void OnUpdate() {
  2339.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2340.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  2341.         });
  2342.     }
  2343.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  2344. }
  2345. public abstract class QuickSystemFilter2Entity<F1, F2, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2346.     protected override void OnCreate() {
  2347.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3));
  2348.     }
  2349.     protected override void OnUpdate() {
  2350.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2351.             OnUpdate(e, ref t1, ref t2, ref t3);
  2352.         });
  2353.     }
  2354.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  2355. }
  2356. public abstract class QuickSystemFilter2EntityClass<F1, F2, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2357.     protected override void OnCreate() {
  2358.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2359.     }
  2360.     protected override void OnUpdate() {
  2361.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2362.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  2363.         });
  2364.     }
  2365.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2366. }
  2367. public abstract class QuickSystemFilter2Entity<F1, F2, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2368.     protected override void OnCreate() {
  2369.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2370.     }
  2371.     protected override void OnUpdate() {
  2372.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2373.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  2374.         });
  2375.     }
  2376.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2377. }
  2378. public abstract class QuickSystemFilter2EntityClass<F1, F2, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2379.     protected override void OnCreate() {
  2380.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2381.     }
  2382.     protected override void OnUpdate() {
  2383.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2384.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  2385.         });
  2386.     }
  2387.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2388. }
  2389. public abstract class QuickSystemFilter2Entity<F1, F2, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2390.     protected override void OnCreate() {
  2391.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2392.     }
  2393.     protected override void OnUpdate() {
  2394.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2395.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  2396.         });
  2397.     }
  2398.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2399. }
  2400. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C> : QuickSystemBase where C : class {
  2401.     protected override void OnCreate() {
  2402.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C));
  2403.     }
  2404.     protected override void OnUpdate() {
  2405.         float delta = Time.DeltaTime;
  2406.         Entities.With(m_MainGroup).ForEach((C c) => {
  2407.             OnUpdate(c, delta);
  2408.         });
  2409.     }
  2410.     protected abstract void OnUpdate(C c, float delta);
  2411. }
  2412. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  2413.     protected override void OnCreate() {
  2414.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1));
  2415.     }
  2416.     protected override void OnUpdate() {
  2417.         float delta = Time.DeltaTime;
  2418.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  2419.             OnUpdate(c, ref t1, delta);
  2420.         });
  2421.     }
  2422.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  2423. }
  2424. public abstract class QuickSystemFilter2Delta<F1, F2, T1> : QuickSystemBase where T1 : struct, IComponentData {
  2425.     protected override void OnCreate() {
  2426.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1));
  2427.     }
  2428.     protected override void OnUpdate() {
  2429.         float delta = Time.DeltaTime;
  2430.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  2431.             OnUpdate(ref t1, delta);
  2432.         });
  2433.     }
  2434.     protected abstract void OnUpdate(ref T1 t1, float delta);
  2435. }
  2436. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2437.     protected override void OnCreate() {
  2438.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2));
  2439.     }
  2440.     protected override void OnUpdate() {
  2441.         float delta = Time.DeltaTime;
  2442.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  2443.             OnUpdate(c, ref t1, ref t2, delta);
  2444.         });
  2445.     }
  2446.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  2447. }
  2448. public abstract class QuickSystemFilter2Delta<F1, F2, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2449.     protected override void OnCreate() {
  2450.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2));
  2451.     }
  2452.     protected override void OnUpdate() {
  2453.         float delta = Time.DeltaTime;
  2454.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  2455.             OnUpdate(ref t1, ref t2, delta);
  2456.         });
  2457.     }
  2458.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  2459. }
  2460. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2461.     protected override void OnCreate() {
  2462.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  2463.     }
  2464.     protected override void OnUpdate() {
  2465.         float delta = Time.DeltaTime;
  2466.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2467.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  2468.         });
  2469.     }
  2470.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2471. }
  2472. public abstract class QuickSystemFilter2Delta<F1, F2, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2473.     protected override void OnCreate() {
  2474.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3));
  2475.     }
  2476.     protected override void OnUpdate() {
  2477.         float delta = Time.DeltaTime;
  2478.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  2479.             OnUpdate(ref t1, ref t2, ref t3, delta);
  2480.         });
  2481.     }
  2482.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2483. }
  2484. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2485.     protected override void OnCreate() {
  2486.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2487.     }
  2488.     protected override void OnUpdate() {
  2489.         float delta = Time.DeltaTime;
  2490.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2491.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  2492.         });
  2493.     }
  2494.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2495. }
  2496. public abstract class QuickSystemFilter2Delta<F1, F2, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2497.     protected override void OnCreate() {
  2498.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2499.     }
  2500.     protected override void OnUpdate() {
  2501.         float delta = Time.DeltaTime;
  2502.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2503.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  2504.         });
  2505.     }
  2506.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2507. }
  2508. public abstract class QuickSystemFilter2ClassDelta<F1, F2, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2509.     protected override void OnCreate() {
  2510.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2511.     }
  2512.     protected override void OnUpdate() {
  2513.         float delta = Time.DeltaTime;
  2514.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2515.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2516.         });
  2517.     }
  2518.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2519. }
  2520. public abstract class QuickSystemFilter2Delta<F1, F2, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2521.     protected override void OnCreate() {
  2522.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2523.     }
  2524.     protected override void OnUpdate() {
  2525.         float delta = Time.DeltaTime;
  2526.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2527.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2528.         });
  2529.     }
  2530.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2531. }
  2532. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C> : QuickSystemBase where C : class {
  2533.     protected override void OnCreate() {
  2534.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C));
  2535.     }
  2536.     protected override void OnUpdate() {
  2537.         float delta = Time.DeltaTime;
  2538.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  2539.             OnUpdate(e, c, delta);
  2540.         });
  2541.     }
  2542.     protected abstract void OnUpdate(Entity e, C c, float delta);
  2543. }
  2544. public abstract class QuickSystemFilter2EntityDelta<F1, F2> : QuickSystemBase {
  2545.     protected override void OnCreate() {
  2546.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2));
  2547.     }
  2548.     protected override void OnUpdate() {
  2549.         float delta = Time.DeltaTime;
  2550.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  2551.             OnUpdate(e, delta);
  2552.         });
  2553.     }
  2554.     protected abstract void OnUpdate(Entity e, float delta);
  2555. }
  2556. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  2557.     protected override void OnCreate() {
  2558.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1));
  2559.     }
  2560.     protected override void OnUpdate() {
  2561.         float delta = Time.DeltaTime;
  2562.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  2563.             OnUpdate(e, c, ref t1, delta);
  2564.         });
  2565.     }
  2566.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  2567. }
  2568. public abstract class QuickSystemFilter2EntityDelta<F1, F2, T1> : QuickSystemBase where T1 : struct, IComponentData {
  2569.     protected override void OnCreate() {
  2570.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1));
  2571.     }
  2572.     protected override void OnUpdate() {
  2573.         float delta = Time.DeltaTime;
  2574.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  2575.             OnUpdate(e, ref t1, delta);
  2576.         });
  2577.     }
  2578.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  2579. }
  2580. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2581.     protected override void OnCreate() {
  2582.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2));
  2583.     }
  2584.     protected override void OnUpdate() {
  2585.         float delta = Time.DeltaTime;
  2586.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  2587.             OnUpdate(e, c, ref t1, ref t2, delta);
  2588.         });
  2589.     }
  2590.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  2591. }
  2592. public abstract class QuickSystemFilter2EntityDelta<F1, F2, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2593.     protected override void OnCreate() {
  2594.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2));
  2595.     }
  2596.     protected override void OnUpdate() {
  2597.         float delta = Time.DeltaTime;
  2598.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  2599.             OnUpdate(e, ref t1, ref t2, delta);
  2600.         });
  2601.     }
  2602.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  2603. }
  2604. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2605.     protected override void OnCreate() {
  2606.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  2607.     }
  2608.     protected override void OnUpdate() {
  2609.         float delta = Time.DeltaTime;
  2610.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2611.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  2612.         });
  2613.     }
  2614.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2615. }
  2616. public abstract class QuickSystemFilter2EntityDelta<F1, F2, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2617.     protected override void OnCreate() {
  2618.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3));
  2619.     }
  2620.     protected override void OnUpdate() {
  2621.         float delta = Time.DeltaTime;
  2622.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2623.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  2624.         });
  2625.     }
  2626.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2627. }
  2628. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2629.     protected override void OnCreate() {
  2630.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2631.     }
  2632.     protected override void OnUpdate() {
  2633.         float delta = Time.DeltaTime;
  2634.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2635.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  2636.         });
  2637.     }
  2638.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2639. }
  2640. public abstract class QuickSystemFilter2EntityDelta<F1, F2, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2641.     protected override void OnCreate() {
  2642.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2643.     }
  2644.     protected override void OnUpdate() {
  2645.         float delta = Time.DeltaTime;
  2646.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2647.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  2648.         });
  2649.     }
  2650.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2651. }
  2652. public abstract class QuickSystemFilter2EntityClassDelta<F1, F2, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2653.     protected override void OnCreate() {
  2654.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2655.     }
  2656.     protected override void OnUpdate() {
  2657.         float delta = Time.DeltaTime;
  2658.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2659.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2660.         });
  2661.     }
  2662.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2663. }
  2664. public abstract class QuickSystemFilter2EntityDelta<F1, F2, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2665.     protected override void OnCreate() {
  2666.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2667.     }
  2668.     protected override void OnUpdate() {
  2669.         float delta = Time.DeltaTime;
  2670.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2671.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2672.         });
  2673.     }
  2674.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2675. }
  2676. public abstract class QuickSystemFilter2Shared<F1, F2, S> : QuickSystemBase where S : struct, ISharedComponentData {
  2677.     protected override void OnCreate() {
  2678.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S));
  2679.     }
  2680.     protected override void OnUpdate() {
  2681.         Entities.With(m_MainGroup).ForEach((S s) => {
  2682.             OnUpdate(s);
  2683.         });
  2684.     }
  2685.     protected abstract void OnUpdate(S s);
  2686. }
  2687. public abstract class QuickSystemFilter2Shared<F1, F2, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  2688.     protected override void OnCreate() {
  2689.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1));
  2690.     }
  2691.     protected override void OnUpdate() {
  2692.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  2693.             OnUpdate(s, ref t1);
  2694.         });
  2695.     }
  2696.     protected abstract void OnUpdate(S s, ref T1 t1);
  2697. }
  2698. public abstract class QuickSystemFilter2Shared<F1, F2, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2699.     protected override void OnCreate() {
  2700.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2));
  2701.     }
  2702.     protected override void OnUpdate() {
  2703.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  2704.             OnUpdate(s, ref t1, ref t2);
  2705.         });
  2706.     }
  2707.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  2708. }
  2709. public abstract class QuickSystemFilter2Shared<F1, F2, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2710.     protected override void OnCreate() {
  2711.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  2712.     }
  2713.     protected override void OnUpdate() {
  2714.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2715.             OnUpdate(s, ref t1, ref t2, ref t3);
  2716.         });
  2717.     }
  2718.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  2719. }
  2720. public abstract class QuickSystemFilter2Shared<F1, F2, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2721.     protected override void OnCreate() {
  2722.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2723.     }
  2724.     protected override void OnUpdate() {
  2725.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2726.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  2727.         });
  2728.     }
  2729.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2730. }
  2731. public abstract class QuickSystemFilter2Shared<F1, F2, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2732.     protected override void OnCreate() {
  2733.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2734.     }
  2735.     protected override void OnUpdate() {
  2736.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2737.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  2738.         });
  2739.     }
  2740.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2741. }
  2742. public abstract class QuickSystemFilter2EntityShared<F1, F2, S> : QuickSystemBase where S : struct, ISharedComponentData {
  2743.     protected override void OnCreate() {
  2744.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S));
  2745.     }
  2746.     protected override void OnUpdate() {
  2747.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  2748.             OnUpdate(e, s);
  2749.         });
  2750.     }
  2751.     protected abstract void OnUpdate(Entity e, S s);
  2752. }
  2753. public abstract class QuickSystemFilter2EntityShared<F1, F2, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  2754.     protected override void OnCreate() {
  2755.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1));
  2756.     }
  2757.     protected override void OnUpdate() {
  2758.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  2759.             OnUpdate(e, s, ref t1);
  2760.         });
  2761.     }
  2762.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  2763. }
  2764. public abstract class QuickSystemFilter2EntityShared<F1, F2, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2765.     protected override void OnCreate() {
  2766.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2));
  2767.     }
  2768.     protected override void OnUpdate() {
  2769.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  2770.             OnUpdate(e, s, ref t1, ref t2);
  2771.         });
  2772.     }
  2773.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  2774. }
  2775. public abstract class QuickSystemFilter2EntityShared<F1, F2, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2776.     protected override void OnCreate() {
  2777.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  2778.     }
  2779.     protected override void OnUpdate() {
  2780.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2781.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  2782.         });
  2783.     }
  2784.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  2785. }
  2786. public abstract class QuickSystemFilter2EntityShared<F1, F2, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2787.     protected override void OnCreate() {
  2788.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2789.     }
  2790.     protected override void OnUpdate() {
  2791.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2792.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  2793.         });
  2794.     }
  2795.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  2796. }
  2797. public abstract class QuickSystemFilter2EntityShared<F1, F2, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2798.     protected override void OnCreate() {
  2799.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2800.     }
  2801.     protected override void OnUpdate() {
  2802.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2803.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  2804.         });
  2805.     }
  2806.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  2807. }
  2808. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S> : QuickSystemBase where S : struct, ISharedComponentData {
  2809.     protected override void OnCreate() {
  2810.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S));
  2811.     }
  2812.     protected override void OnUpdate() {
  2813.         float delta = Time.DeltaTime;
  2814.         Entities.With(m_MainGroup).ForEach((S s) => {
  2815.             OnUpdate(s, delta);
  2816.         });
  2817.     }
  2818.     protected abstract void OnUpdate(S s, float delta);
  2819. }
  2820. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  2821.     protected override void OnCreate() {
  2822.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1));
  2823.     }
  2824.     protected override void OnUpdate() {
  2825.         float delta = Time.DeltaTime;
  2826.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  2827.             OnUpdate(s, ref t1, delta);
  2828.         });
  2829.     }
  2830.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  2831. }
  2832. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2833.     protected override void OnCreate() {
  2834.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2));
  2835.     }
  2836.     protected override void OnUpdate() {
  2837.         float delta = Time.DeltaTime;
  2838.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  2839.             OnUpdate(s, ref t1, ref t2, delta);
  2840.         });
  2841.     }
  2842.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  2843. }
  2844. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2845.     protected override void OnCreate() {
  2846.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  2847.     }
  2848.     protected override void OnUpdate() {
  2849.         float delta = Time.DeltaTime;
  2850.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2851.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  2852.         });
  2853.     }
  2854.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2855. }
  2856. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2857.     protected override void OnCreate() {
  2858.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2859.     }
  2860.     protected override void OnUpdate() {
  2861.         float delta = Time.DeltaTime;
  2862.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2863.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  2864.         });
  2865.     }
  2866.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2867. }
  2868. public abstract class QuickSystemFilter2SharedDelta<F1, F2, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2869.     protected override void OnCreate() {
  2870.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2871.     }
  2872.     protected override void OnUpdate() {
  2873.         float delta = Time.DeltaTime;
  2874.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2875.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2876.         });
  2877.     }
  2878.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2879. }
  2880. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S> : QuickSystemBase where S : struct, ISharedComponentData {
  2881.     protected override void OnCreate() {
  2882.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S));
  2883.     }
  2884.     protected override void OnUpdate() {
  2885.         float delta = Time.DeltaTime;
  2886.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  2887.             OnUpdate(e, s, delta);
  2888.         });
  2889.     }
  2890.     protected abstract void OnUpdate(Entity e, S s, float delta);
  2891. }
  2892. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  2893.     protected override void OnCreate() {
  2894.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1));
  2895.     }
  2896.     protected override void OnUpdate() {
  2897.         float delta = Time.DeltaTime;
  2898.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  2899.             OnUpdate(e, s, ref t1, delta);
  2900.         });
  2901.     }
  2902.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  2903. }
  2904. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2905.     protected override void OnCreate() {
  2906.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2));
  2907.     }
  2908.     protected override void OnUpdate() {
  2909.         float delta = Time.DeltaTime;
  2910.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  2911.             OnUpdate(e, s, ref t1, ref t2, delta);
  2912.         });
  2913.     }
  2914.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  2915. }
  2916. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2917.     protected override void OnCreate() {
  2918.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  2919.     }
  2920.     protected override void OnUpdate() {
  2921.         float delta = Time.DeltaTime;
  2922.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2923.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  2924.         });
  2925.     }
  2926.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  2927. }
  2928. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2929.     protected override void OnCreate() {
  2930.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2931.     }
  2932.     protected override void OnUpdate() {
  2933.         float delta = Time.DeltaTime;
  2934.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  2935.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  2936.         });
  2937.     }
  2938.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  2939. }
  2940. public abstract class QuickSystemFilter2EntitySharedDelta<F1, F2, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  2941.     protected override void OnCreate() {
  2942.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  2943.     }
  2944.     protected override void OnUpdate() {
  2945.         float delta = Time.DeltaTime;
  2946.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  2947.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  2948.         });
  2949.     }
  2950.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  2951. }
  2952. public abstract class QuickSystemFilter2Buffer<F1, F2, D> : QuickSystemBase where D : struct, IBufferElementData {
  2953.     protected override void OnCreate() {
  2954.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D));
  2955.     }
  2956.     protected override void OnUpdate() {
  2957.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  2958.             OnUpdate(d);
  2959.         });
  2960.     }
  2961.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  2962. }
  2963. public abstract class QuickSystemFilter2Buffer<F1, F2, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  2964.     protected override void OnCreate() {
  2965.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1));
  2966.     }
  2967.     protected override void OnUpdate() {
  2968.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  2969.             OnUpdate(d, ref t1);
  2970.         });
  2971.     }
  2972.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  2973. }
  2974. public abstract class QuickSystemFilter2Buffer<F1, F2, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  2975.     protected override void OnCreate() {
  2976.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2));
  2977.     }
  2978.     protected override void OnUpdate() {
  2979.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  2980.             OnUpdate(d, ref t1, ref t2);
  2981.         });
  2982.     }
  2983.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  2984. }
  2985. public abstract class QuickSystemFilter2Buffer<F1, F2, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  2986.     protected override void OnCreate() {
  2987.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  2988.     }
  2989.     protected override void OnUpdate() {
  2990.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  2991.             OnUpdate(d, ref t1, ref t2, ref t3);
  2992.         });
  2993.     }
  2994.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  2995. }
  2996. public abstract class QuickSystemFilter2Buffer<F1, F2, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  2997.     protected override void OnCreate() {
  2998.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  2999.     }
  3000.     protected override void OnUpdate() {
  3001.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3002.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  3003.         });
  3004.     }
  3005.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3006. }
  3007. public abstract class QuickSystemFilter2Buffer<F1, F2, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3008.     protected override void OnCreate() {
  3009.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3010.     }
  3011.     protected override void OnUpdate() {
  3012.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3013.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  3014.         });
  3015.     }
  3016.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3017. }
  3018. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D> : QuickSystemBase where D : struct, IBufferElementData {
  3019.     protected override void OnCreate() {
  3020.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D));
  3021.     }
  3022.     protected override void OnUpdate() {
  3023.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  3024.             OnUpdate(e, d);
  3025.         });
  3026.     }
  3027.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  3028. }
  3029. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  3030.     protected override void OnCreate() {
  3031.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1));
  3032.     }
  3033.     protected override void OnUpdate() {
  3034.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  3035.             OnUpdate(e, d, ref t1);
  3036.         });
  3037.     }
  3038.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  3039. }
  3040. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3041.     protected override void OnCreate() {
  3042.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2));
  3043.     }
  3044.     protected override void OnUpdate() {
  3045.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  3046.             OnUpdate(e, d, ref t1, ref t2);
  3047.         });
  3048.     }
  3049.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  3050. }
  3051. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3052.     protected override void OnCreate() {
  3053.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  3054.     }
  3055.     protected override void OnUpdate() {
  3056.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3057.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  3058.         });
  3059.     }
  3060.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  3061. }
  3062. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3063.     protected override void OnCreate() {
  3064.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3065.     }
  3066.     protected override void OnUpdate() {
  3067.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3068.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  3069.         });
  3070.     }
  3071.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3072. }
  3073. public abstract class QuickSystemFilter2EntityBuffer<F1, F2, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3074.     protected override void OnCreate() {
  3075.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3076.     }
  3077.     protected override void OnUpdate() {
  3078.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3079.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  3080.         });
  3081.     }
  3082.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3083. }
  3084. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D> : QuickSystemBase where D : struct, IBufferElementData {
  3085.     protected override void OnCreate() {
  3086.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D));
  3087.     }
  3088.     protected override void OnUpdate() {
  3089.         float delta = Time.DeltaTime;
  3090.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  3091.             OnUpdate(d, delta);
  3092.         });
  3093.     }
  3094.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  3095. }
  3096. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  3097.     protected override void OnCreate() {
  3098.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1));
  3099.     }
  3100.     protected override void OnUpdate() {
  3101.         float delta = Time.DeltaTime;
  3102.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  3103.             OnUpdate(d, ref t1, delta);
  3104.         });
  3105.     }
  3106.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  3107. }
  3108. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3109.     protected override void OnCreate() {
  3110.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2));
  3111.     }
  3112.     protected override void OnUpdate() {
  3113.         float delta = Time.DeltaTime;
  3114.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  3115.             OnUpdate(d, ref t1, ref t2, delta);
  3116.         });
  3117.     }
  3118.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  3119. }
  3120. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3121.     protected override void OnCreate() {
  3122.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  3123.     }
  3124.     protected override void OnUpdate() {
  3125.         float delta = Time.DeltaTime;
  3126.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3127.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  3128.         });
  3129.     }
  3130.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3131. }
  3132. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3133.     protected override void OnCreate() {
  3134.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3135.     }
  3136.     protected override void OnUpdate() {
  3137.         float delta = Time.DeltaTime;
  3138.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3139.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  3140.         });
  3141.     }
  3142.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3143. }
  3144. public abstract class QuickSystemFilter2BufferDelta<F1, F2, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3145.     protected override void OnCreate() {
  3146.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3147.     }
  3148.     protected override void OnUpdate() {
  3149.         float delta = Time.DeltaTime;
  3150.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3151.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3152.         });
  3153.     }
  3154.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3155. }
  3156. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D> : QuickSystemBase where D : struct, IBufferElementData {
  3157.     protected override void OnCreate() {
  3158.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D));
  3159.     }
  3160.     protected override void OnUpdate() {
  3161.         float delta = Time.DeltaTime;
  3162.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  3163.             OnUpdate(e, d, delta);
  3164.         });
  3165.     }
  3166.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  3167. }
  3168. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  3169.     protected override void OnCreate() {
  3170.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1));
  3171.     }
  3172.     protected override void OnUpdate() {
  3173.         float delta = Time.DeltaTime;
  3174.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  3175.             OnUpdate(e, d, ref t1, delta);
  3176.         });
  3177.     }
  3178.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  3179. }
  3180. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3181.     protected override void OnCreate() {
  3182.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2));
  3183.     }
  3184.     protected override void OnUpdate() {
  3185.         float delta = Time.DeltaTime;
  3186.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  3187.             OnUpdate(e, d, ref t1, ref t2, delta);
  3188.         });
  3189.     }
  3190.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  3191. }
  3192. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3193.     protected override void OnCreate() {
  3194.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  3195.     }
  3196.     protected override void OnUpdate() {
  3197.         float delta = Time.DeltaTime;
  3198.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3199.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  3200.         });
  3201.     }
  3202.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3203. }
  3204. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3205.     protected override void OnCreate() {
  3206.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3207.     }
  3208.     protected override void OnUpdate() {
  3209.         float delta = Time.DeltaTime;
  3210.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3211.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  3212.         });
  3213.     }
  3214.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3215. }
  3216. public abstract class QuickSystemFilter2EntityBufferDelta<F1, F2, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3217.     protected override void OnCreate() {
  3218.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3219.     }
  3220.     protected override void OnUpdate() {
  3221.         float delta = Time.DeltaTime;
  3222.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3223.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3224.         });
  3225.     }
  3226.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3227. }
  3228. public abstract class QuickSystemFilter3Class<F1, F2, F3, C> : QuickSystemBase where C : class {
  3229.     protected override void OnCreate() {
  3230.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C));
  3231.     }
  3232.     protected override void OnUpdate() {
  3233.         Entities.With(m_MainGroup).ForEach((C c) => {
  3234.             OnUpdate(c);
  3235.         });
  3236.     }
  3237.     protected abstract void OnUpdate(C c);
  3238. }
  3239. public abstract class QuickSystemFilter3Class<F1, F2, F3, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  3240.     protected override void OnCreate() {
  3241.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1));
  3242.     }
  3243.     protected override void OnUpdate() {
  3244.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  3245.             OnUpdate(c, ref t1);
  3246.         });
  3247.     }
  3248.     protected abstract void OnUpdate(C c, ref T1 t1);
  3249. }
  3250. public abstract class QuickSystemFilter3<F1, F2, F3, T1> : QuickSystemBase where T1 : struct, IComponentData {
  3251.     protected override void OnCreate() {
  3252.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1));
  3253.     }
  3254.     protected override void OnUpdate() {
  3255.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  3256.             OnUpdate(ref t1);
  3257.         });
  3258.     }
  3259.     protected abstract void OnUpdate(ref T1 t1);
  3260. }
  3261. public abstract class QuickSystemFilter3Class<F1, F2, F3, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3262.     protected override void OnCreate() {
  3263.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2));
  3264.     }
  3265.     protected override void OnUpdate() {
  3266.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  3267.             OnUpdate(c, ref t1, ref t2);
  3268.         });
  3269.     }
  3270.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  3271. }
  3272. public abstract class QuickSystemFilter3<F1, F2, F3, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3273.     protected override void OnCreate() {
  3274.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2));
  3275.     }
  3276.     protected override void OnUpdate() {
  3277.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  3278.             OnUpdate(ref t1, ref t2);
  3279.         });
  3280.     }
  3281.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  3282. }
  3283. public abstract class QuickSystemFilter3Class<F1, F2, F3, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3284.     protected override void OnCreate() {
  3285.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  3286.     }
  3287.     protected override void OnUpdate() {
  3288.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3289.             OnUpdate(c, ref t1, ref t2, ref t3);
  3290.         });
  3291.     }
  3292.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  3293. }
  3294. public abstract class QuickSystemFilter3<F1, F2, F3, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3295.     protected override void OnCreate() {
  3296.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3));
  3297.     }
  3298.     protected override void OnUpdate() {
  3299.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  3300.             OnUpdate(ref t1, ref t2, ref t3);
  3301.         });
  3302.     }
  3303.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  3304. }
  3305. public abstract class QuickSystemFilter3Class<F1, F2, F3, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3306.     protected override void OnCreate() {
  3307.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3308.     }
  3309.     protected override void OnUpdate() {
  3310.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3311.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  3312.         });
  3313.     }
  3314.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3315. }
  3316. public abstract class QuickSystemFilter3<F1, F2, F3, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3317.     protected override void OnCreate() {
  3318.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3319.     }
  3320.     protected override void OnUpdate() {
  3321.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3322.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  3323.         });
  3324.     }
  3325.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3326. }
  3327. public abstract class QuickSystemFilter3Class<F1, F2, F3, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3328.     protected override void OnCreate() {
  3329.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3330.     }
  3331.     protected override void OnUpdate() {
  3332.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3333.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  3334.         });
  3335.     }
  3336.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3337. }
  3338. public abstract class QuickSystemFilter3<F1, F2, F3, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3339.     protected override void OnCreate() {
  3340.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3341.     }
  3342.     protected override void OnUpdate() {
  3343.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3344.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  3345.         });
  3346.     }
  3347.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3348. }
  3349. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C> : QuickSystemBase where C : class {
  3350.     protected override void OnCreate() {
  3351.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C));
  3352.     }
  3353.     protected override void OnUpdate() {
  3354.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  3355.             OnUpdate(e, c);
  3356.         });
  3357.     }
  3358.     protected abstract void OnUpdate(Entity e, C c);
  3359. }
  3360. public abstract class QuickSystemFilter3Entity<F1, F2, F3> : QuickSystemBase {
  3361.     protected override void OnCreate() {
  3362.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3));
  3363.     }
  3364.     protected override void OnUpdate() {
  3365.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  3366.             OnUpdate(e);
  3367.         });
  3368.     }
  3369.     protected abstract void OnUpdate(Entity e);
  3370. }
  3371. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  3372.     protected override void OnCreate() {
  3373.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1));
  3374.     }
  3375.     protected override void OnUpdate() {
  3376.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  3377.             OnUpdate(e, c, ref t1);
  3378.         });
  3379.     }
  3380.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  3381. }
  3382. public abstract class QuickSystemFilter3Entity<F1, F2, F3, T1> : QuickSystemBase where T1 : struct, IComponentData {
  3383.     protected override void OnCreate() {
  3384.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1));
  3385.     }
  3386.     protected override void OnUpdate() {
  3387.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  3388.             OnUpdate(e, ref t1);
  3389.         });
  3390.     }
  3391.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  3392. }
  3393. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3394.     protected override void OnCreate() {
  3395.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2));
  3396.     }
  3397.     protected override void OnUpdate() {
  3398.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  3399.             OnUpdate(e, c, ref t1, ref t2);
  3400.         });
  3401.     }
  3402.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  3403. }
  3404. public abstract class QuickSystemFilter3Entity<F1, F2, F3, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3405.     protected override void OnCreate() {
  3406.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2));
  3407.     }
  3408.     protected override void OnUpdate() {
  3409.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  3410.             OnUpdate(e, ref t1, ref t2);
  3411.         });
  3412.     }
  3413.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  3414. }
  3415. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3416.     protected override void OnCreate() {
  3417.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  3418.     }
  3419.     protected override void OnUpdate() {
  3420.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3421.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  3422.         });
  3423.     }
  3424.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  3425. }
  3426. public abstract class QuickSystemFilter3Entity<F1, F2, F3, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3427.     protected override void OnCreate() {
  3428.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3));
  3429.     }
  3430.     protected override void OnUpdate() {
  3431.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3432.             OnUpdate(e, ref t1, ref t2, ref t3);
  3433.         });
  3434.     }
  3435.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  3436. }
  3437. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3438.     protected override void OnCreate() {
  3439.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3440.     }
  3441.     protected override void OnUpdate() {
  3442.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3443.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  3444.         });
  3445.     }
  3446.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3447. }
  3448. public abstract class QuickSystemFilter3Entity<F1, F2, F3, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3449.     protected override void OnCreate() {
  3450.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3451.     }
  3452.     protected override void OnUpdate() {
  3453.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3454.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  3455.         });
  3456.     }
  3457.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3458. }
  3459. public abstract class QuickSystemFilter3EntityClass<F1, F2, F3, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3460.     protected override void OnCreate() {
  3461.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3462.     }
  3463.     protected override void OnUpdate() {
  3464.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3465.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  3466.         });
  3467.     }
  3468.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3469. }
  3470. public abstract class QuickSystemFilter3Entity<F1, F2, F3, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3471.     protected override void OnCreate() {
  3472.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3473.     }
  3474.     protected override void OnUpdate() {
  3475.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3476.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  3477.         });
  3478.     }
  3479.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3480. }
  3481. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C> : QuickSystemBase where C : class {
  3482.     protected override void OnCreate() {
  3483.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C));
  3484.     }
  3485.     protected override void OnUpdate() {
  3486.         float delta = Time.DeltaTime;
  3487.         Entities.With(m_MainGroup).ForEach((C c) => {
  3488.             OnUpdate(c, delta);
  3489.         });
  3490.     }
  3491.     protected abstract void OnUpdate(C c, float delta);
  3492. }
  3493. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  3494.     protected override void OnCreate() {
  3495.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1));
  3496.     }
  3497.     protected override void OnUpdate() {
  3498.         float delta = Time.DeltaTime;
  3499.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  3500.             OnUpdate(c, ref t1, delta);
  3501.         });
  3502.     }
  3503.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  3504. }
  3505. public abstract class QuickSystemFilter3Delta<F1, F2, F3, T1> : QuickSystemBase where T1 : struct, IComponentData {
  3506.     protected override void OnCreate() {
  3507.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1));
  3508.     }
  3509.     protected override void OnUpdate() {
  3510.         float delta = Time.DeltaTime;
  3511.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  3512.             OnUpdate(ref t1, delta);
  3513.         });
  3514.     }
  3515.     protected abstract void OnUpdate(ref T1 t1, float delta);
  3516. }
  3517. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3518.     protected override void OnCreate() {
  3519.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2));
  3520.     }
  3521.     protected override void OnUpdate() {
  3522.         float delta = Time.DeltaTime;
  3523.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  3524.             OnUpdate(c, ref t1, ref t2, delta);
  3525.         });
  3526.     }
  3527.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  3528. }
  3529. public abstract class QuickSystemFilter3Delta<F1, F2, F3, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3530.     protected override void OnCreate() {
  3531.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2));
  3532.     }
  3533.     protected override void OnUpdate() {
  3534.         float delta = Time.DeltaTime;
  3535.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  3536.             OnUpdate(ref t1, ref t2, delta);
  3537.         });
  3538.     }
  3539.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  3540. }
  3541. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3542.     protected override void OnCreate() {
  3543.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  3544.     }
  3545.     protected override void OnUpdate() {
  3546.         float delta = Time.DeltaTime;
  3547.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3548.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  3549.         });
  3550.     }
  3551.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3552. }
  3553. public abstract class QuickSystemFilter3Delta<F1, F2, F3, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3554.     protected override void OnCreate() {
  3555.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3));
  3556.     }
  3557.     protected override void OnUpdate() {
  3558.         float delta = Time.DeltaTime;
  3559.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  3560.             OnUpdate(ref t1, ref t2, ref t3, delta);
  3561.         });
  3562.     }
  3563.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3564. }
  3565. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3566.     protected override void OnCreate() {
  3567.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3568.     }
  3569.     protected override void OnUpdate() {
  3570.         float delta = Time.DeltaTime;
  3571.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3572.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  3573.         });
  3574.     }
  3575.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3576. }
  3577. public abstract class QuickSystemFilter3Delta<F1, F2, F3, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3578.     protected override void OnCreate() {
  3579.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3580.     }
  3581.     protected override void OnUpdate() {
  3582.         float delta = Time.DeltaTime;
  3583.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3584.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  3585.         });
  3586.     }
  3587.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3588. }
  3589. public abstract class QuickSystemFilter3ClassDelta<F1, F2, F3, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3590.     protected override void OnCreate() {
  3591.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3592.     }
  3593.     protected override void OnUpdate() {
  3594.         float delta = Time.DeltaTime;
  3595.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3596.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3597.         });
  3598.     }
  3599.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3600. }
  3601. public abstract class QuickSystemFilter3Delta<F1, F2, F3, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3602.     protected override void OnCreate() {
  3603.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3604.     }
  3605.     protected override void OnUpdate() {
  3606.         float delta = Time.DeltaTime;
  3607.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3608.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3609.         });
  3610.     }
  3611.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3612. }
  3613. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C> : QuickSystemBase where C : class {
  3614.     protected override void OnCreate() {
  3615.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C));
  3616.     }
  3617.     protected override void OnUpdate() {
  3618.         float delta = Time.DeltaTime;
  3619.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  3620.             OnUpdate(e, c, delta);
  3621.         });
  3622.     }
  3623.     protected abstract void OnUpdate(Entity e, C c, float delta);
  3624. }
  3625. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3> : QuickSystemBase {
  3626.     protected override void OnCreate() {
  3627.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3));
  3628.     }
  3629.     protected override void OnUpdate() {
  3630.         float delta = Time.DeltaTime;
  3631.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  3632.             OnUpdate(e, delta);
  3633.         });
  3634.     }
  3635.     protected abstract void OnUpdate(Entity e, float delta);
  3636. }
  3637. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  3638.     protected override void OnCreate() {
  3639.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1));
  3640.     }
  3641.     protected override void OnUpdate() {
  3642.         float delta = Time.DeltaTime;
  3643.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  3644.             OnUpdate(e, c, ref t1, delta);
  3645.         });
  3646.     }
  3647.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  3648. }
  3649. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3, T1> : QuickSystemBase where T1 : struct, IComponentData {
  3650.     protected override void OnCreate() {
  3651.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1));
  3652.     }
  3653.     protected override void OnUpdate() {
  3654.         float delta = Time.DeltaTime;
  3655.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  3656.             OnUpdate(e, ref t1, delta);
  3657.         });
  3658.     }
  3659.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  3660. }
  3661. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3662.     protected override void OnCreate() {
  3663.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2));
  3664.     }
  3665.     protected override void OnUpdate() {
  3666.         float delta = Time.DeltaTime;
  3667.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  3668.             OnUpdate(e, c, ref t1, ref t2, delta);
  3669.         });
  3670.     }
  3671.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  3672. }
  3673. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3674.     protected override void OnCreate() {
  3675.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2));
  3676.     }
  3677.     protected override void OnUpdate() {
  3678.         float delta = Time.DeltaTime;
  3679.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  3680.             OnUpdate(e, ref t1, ref t2, delta);
  3681.         });
  3682.     }
  3683.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  3684. }
  3685. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3686.     protected override void OnCreate() {
  3687.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  3688.     }
  3689.     protected override void OnUpdate() {
  3690.         float delta = Time.DeltaTime;
  3691.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3692.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  3693.         });
  3694.     }
  3695.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3696. }
  3697. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3698.     protected override void OnCreate() {
  3699.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3));
  3700.     }
  3701.     protected override void OnUpdate() {
  3702.         float delta = Time.DeltaTime;
  3703.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3704.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  3705.         });
  3706.     }
  3707.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3708. }
  3709. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3710.     protected override void OnCreate() {
  3711.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3712.     }
  3713.     protected override void OnUpdate() {
  3714.         float delta = Time.DeltaTime;
  3715.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3716.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  3717.         });
  3718.     }
  3719.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3720. }
  3721. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3722.     protected override void OnCreate() {
  3723.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3724.     }
  3725.     protected override void OnUpdate() {
  3726.         float delta = Time.DeltaTime;
  3727.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3728.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  3729.         });
  3730.     }
  3731.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3732. }
  3733. public abstract class QuickSystemFilter3EntityClassDelta<F1, F2, F3, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3734.     protected override void OnCreate() {
  3735.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3736.     }
  3737.     protected override void OnUpdate() {
  3738.         float delta = Time.DeltaTime;
  3739.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3740.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3741.         });
  3742.     }
  3743.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3744. }
  3745. public abstract class QuickSystemFilter3EntityDelta<F1, F2, F3, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3746.     protected override void OnCreate() {
  3747.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3748.     }
  3749.     protected override void OnUpdate() {
  3750.         float delta = Time.DeltaTime;
  3751.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3752.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3753.         });
  3754.     }
  3755.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3756. }
  3757. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S> : QuickSystemBase where S : struct, ISharedComponentData {
  3758.     protected override void OnCreate() {
  3759.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S));
  3760.     }
  3761.     protected override void OnUpdate() {
  3762.         Entities.With(m_MainGroup).ForEach((S s) => {
  3763.             OnUpdate(s);
  3764.         });
  3765.     }
  3766.     protected abstract void OnUpdate(S s);
  3767. }
  3768. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  3769.     protected override void OnCreate() {
  3770.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1));
  3771.     }
  3772.     protected override void OnUpdate() {
  3773.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  3774.             OnUpdate(s, ref t1);
  3775.         });
  3776.     }
  3777.     protected abstract void OnUpdate(S s, ref T1 t1);
  3778. }
  3779. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3780.     protected override void OnCreate() {
  3781.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2));
  3782.     }
  3783.     protected override void OnUpdate() {
  3784.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  3785.             OnUpdate(s, ref t1, ref t2);
  3786.         });
  3787.     }
  3788.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  3789. }
  3790. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3791.     protected override void OnCreate() {
  3792.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  3793.     }
  3794.     protected override void OnUpdate() {
  3795.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3796.             OnUpdate(s, ref t1, ref t2, ref t3);
  3797.         });
  3798.     }
  3799.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  3800. }
  3801. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3802.     protected override void OnCreate() {
  3803.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3804.     }
  3805.     protected override void OnUpdate() {
  3806.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3807.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  3808.         });
  3809.     }
  3810.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3811. }
  3812. public abstract class QuickSystemFilter3Shared<F1, F2, F3, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3813.     protected override void OnCreate() {
  3814.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3815.     }
  3816.     protected override void OnUpdate() {
  3817.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3818.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  3819.         });
  3820.     }
  3821.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3822. }
  3823. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S> : QuickSystemBase where S : struct, ISharedComponentData {
  3824.     protected override void OnCreate() {
  3825.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S));
  3826.     }
  3827.     protected override void OnUpdate() {
  3828.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  3829.             OnUpdate(e, s);
  3830.         });
  3831.     }
  3832.     protected abstract void OnUpdate(Entity e, S s);
  3833. }
  3834. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  3835.     protected override void OnCreate() {
  3836.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1));
  3837.     }
  3838.     protected override void OnUpdate() {
  3839.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  3840.             OnUpdate(e, s, ref t1);
  3841.         });
  3842.     }
  3843.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  3844. }
  3845. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3846.     protected override void OnCreate() {
  3847.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2));
  3848.     }
  3849.     protected override void OnUpdate() {
  3850.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  3851.             OnUpdate(e, s, ref t1, ref t2);
  3852.         });
  3853.     }
  3854.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  3855. }
  3856. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3857.     protected override void OnCreate() {
  3858.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  3859.     }
  3860.     protected override void OnUpdate() {
  3861.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3862.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  3863.         });
  3864.     }
  3865.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  3866. }
  3867. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3868.     protected override void OnCreate() {
  3869.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3870.     }
  3871.     protected override void OnUpdate() {
  3872.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3873.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  3874.         });
  3875.     }
  3876.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  3877. }
  3878. public abstract class QuickSystemFilter3EntityShared<F1, F2, F3, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3879.     protected override void OnCreate() {
  3880.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3881.     }
  3882.     protected override void OnUpdate() {
  3883.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3884.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  3885.         });
  3886.     }
  3887.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  3888. }
  3889. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S> : QuickSystemBase where S : struct, ISharedComponentData {
  3890.     protected override void OnCreate() {
  3891.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S));
  3892.     }
  3893.     protected override void OnUpdate() {
  3894.         float delta = Time.DeltaTime;
  3895.         Entities.With(m_MainGroup).ForEach((S s) => {
  3896.             OnUpdate(s, delta);
  3897.         });
  3898.     }
  3899.     protected abstract void OnUpdate(S s, float delta);
  3900. }
  3901. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  3902.     protected override void OnCreate() {
  3903.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1));
  3904.     }
  3905.     protected override void OnUpdate() {
  3906.         float delta = Time.DeltaTime;
  3907.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  3908.             OnUpdate(s, ref t1, delta);
  3909.         });
  3910.     }
  3911.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  3912. }
  3913. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3914.     protected override void OnCreate() {
  3915.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2));
  3916.     }
  3917.     protected override void OnUpdate() {
  3918.         float delta = Time.DeltaTime;
  3919.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  3920.             OnUpdate(s, ref t1, ref t2, delta);
  3921.         });
  3922.     }
  3923.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  3924. }
  3925. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3926.     protected override void OnCreate() {
  3927.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  3928.     }
  3929.     protected override void OnUpdate() {
  3930.         float delta = Time.DeltaTime;
  3931.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  3932.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  3933.         });
  3934.     }
  3935.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  3936. }
  3937. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  3938.     protected override void OnCreate() {
  3939.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  3940.     }
  3941.     protected override void OnUpdate() {
  3942.         float delta = Time.DeltaTime;
  3943.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  3944.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  3945.         });
  3946.     }
  3947.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  3948. }
  3949. public abstract class QuickSystemFilter3SharedDelta<F1, F2, F3, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  3950.     protected override void OnCreate() {
  3951.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  3952.     }
  3953.     protected override void OnUpdate() {
  3954.         float delta = Time.DeltaTime;
  3955.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  3956.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  3957.         });
  3958.     }
  3959.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  3960. }
  3961. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S> : QuickSystemBase where S : struct, ISharedComponentData {
  3962.     protected override void OnCreate() {
  3963.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S));
  3964.     }
  3965.     protected override void OnUpdate() {
  3966.         float delta = Time.DeltaTime;
  3967.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  3968.             OnUpdate(e, s, delta);
  3969.         });
  3970.     }
  3971.     protected abstract void OnUpdate(Entity e, S s, float delta);
  3972. }
  3973. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  3974.     protected override void OnCreate() {
  3975.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1));
  3976.     }
  3977.     protected override void OnUpdate() {
  3978.         float delta = Time.DeltaTime;
  3979.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  3980.             OnUpdate(e, s, ref t1, delta);
  3981.         });
  3982.     }
  3983.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  3984. }
  3985. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  3986.     protected override void OnCreate() {
  3987.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2));
  3988.     }
  3989.     protected override void OnUpdate() {
  3990.         float delta = Time.DeltaTime;
  3991.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  3992.             OnUpdate(e, s, ref t1, ref t2, delta);
  3993.         });
  3994.     }
  3995.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  3996. }
  3997. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  3998.     protected override void OnCreate() {
  3999.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  4000.     }
  4001.     protected override void OnUpdate() {
  4002.         float delta = Time.DeltaTime;
  4003.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4004.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  4005.         });
  4006.     }
  4007.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4008. }
  4009. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4010.     protected override void OnCreate() {
  4011.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4012.     }
  4013.     protected override void OnUpdate() {
  4014.         float delta = Time.DeltaTime;
  4015.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4016.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  4017.         });
  4018.     }
  4019.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4020. }
  4021. public abstract class QuickSystemFilter3EntitySharedDelta<F1, F2, F3, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4022.     protected override void OnCreate() {
  4023.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4024.     }
  4025.     protected override void OnUpdate() {
  4026.         float delta = Time.DeltaTime;
  4027.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4028.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4029.         });
  4030.     }
  4031.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4032. }
  4033. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D> : QuickSystemBase where D : struct, IBufferElementData {
  4034.     protected override void OnCreate() {
  4035.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D));
  4036.     }
  4037.     protected override void OnUpdate() {
  4038.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  4039.             OnUpdate(d);
  4040.         });
  4041.     }
  4042.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  4043. }
  4044. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  4045.     protected override void OnCreate() {
  4046.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1));
  4047.     }
  4048.     protected override void OnUpdate() {
  4049.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  4050.             OnUpdate(d, ref t1);
  4051.         });
  4052.     }
  4053.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  4054. }
  4055. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4056.     protected override void OnCreate() {
  4057.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2));
  4058.     }
  4059.     protected override void OnUpdate() {
  4060.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  4061.             OnUpdate(d, ref t1, ref t2);
  4062.         });
  4063.     }
  4064.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  4065. }
  4066. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4067.     protected override void OnCreate() {
  4068.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  4069.     }
  4070.     protected override void OnUpdate() {
  4071.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4072.             OnUpdate(d, ref t1, ref t2, ref t3);
  4073.         });
  4074.     }
  4075.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  4076. }
  4077. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4078.     protected override void OnCreate() {
  4079.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4080.     }
  4081.     protected override void OnUpdate() {
  4082.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4083.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  4084.         });
  4085.     }
  4086.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4087. }
  4088. public abstract class QuickSystemFilter3Buffer<F1, F2, F3, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4089.     protected override void OnCreate() {
  4090.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4091.     }
  4092.     protected override void OnUpdate() {
  4093.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4094.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  4095.         });
  4096.     }
  4097.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4098. }
  4099. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D> : QuickSystemBase where D : struct, IBufferElementData {
  4100.     protected override void OnCreate() {
  4101.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D));
  4102.     }
  4103.     protected override void OnUpdate() {
  4104.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  4105.             OnUpdate(e, d);
  4106.         });
  4107.     }
  4108.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  4109. }
  4110. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  4111.     protected override void OnCreate() {
  4112.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1));
  4113.     }
  4114.     protected override void OnUpdate() {
  4115.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  4116.             OnUpdate(e, d, ref t1);
  4117.         });
  4118.     }
  4119.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  4120. }
  4121. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4122.     protected override void OnCreate() {
  4123.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2));
  4124.     }
  4125.     protected override void OnUpdate() {
  4126.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  4127.             OnUpdate(e, d, ref t1, ref t2);
  4128.         });
  4129.     }
  4130.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  4131. }
  4132. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4133.     protected override void OnCreate() {
  4134.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  4135.     }
  4136.     protected override void OnUpdate() {
  4137.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4138.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  4139.         });
  4140.     }
  4141.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  4142. }
  4143. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4144.     protected override void OnCreate() {
  4145.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4146.     }
  4147.     protected override void OnUpdate() {
  4148.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4149.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  4150.         });
  4151.     }
  4152.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4153. }
  4154. public abstract class QuickSystemFilter3EntityBuffer<F1, F2, F3, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4155.     protected override void OnCreate() {
  4156.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4157.     }
  4158.     protected override void OnUpdate() {
  4159.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4160.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  4161.         });
  4162.     }
  4163.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4164. }
  4165. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D> : QuickSystemBase where D : struct, IBufferElementData {
  4166.     protected override void OnCreate() {
  4167.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D));
  4168.     }
  4169.     protected override void OnUpdate() {
  4170.         float delta = Time.DeltaTime;
  4171.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  4172.             OnUpdate(d, delta);
  4173.         });
  4174.     }
  4175.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  4176. }
  4177. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  4178.     protected override void OnCreate() {
  4179.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1));
  4180.     }
  4181.     protected override void OnUpdate() {
  4182.         float delta = Time.DeltaTime;
  4183.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  4184.             OnUpdate(d, ref t1, delta);
  4185.         });
  4186.     }
  4187.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  4188. }
  4189. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4190.     protected override void OnCreate() {
  4191.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2));
  4192.     }
  4193.     protected override void OnUpdate() {
  4194.         float delta = Time.DeltaTime;
  4195.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  4196.             OnUpdate(d, ref t1, ref t2, delta);
  4197.         });
  4198.     }
  4199.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  4200. }
  4201. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4202.     protected override void OnCreate() {
  4203.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  4204.     }
  4205.     protected override void OnUpdate() {
  4206.         float delta = Time.DeltaTime;
  4207.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4208.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  4209.         });
  4210.     }
  4211.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4212. }
  4213. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4214.     protected override void OnCreate() {
  4215.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4216.     }
  4217.     protected override void OnUpdate() {
  4218.         float delta = Time.DeltaTime;
  4219.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4220.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  4221.         });
  4222.     }
  4223.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4224. }
  4225. public abstract class QuickSystemFilter3BufferDelta<F1, F2, F3, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4226.     protected override void OnCreate() {
  4227.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4228.     }
  4229.     protected override void OnUpdate() {
  4230.         float delta = Time.DeltaTime;
  4231.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4232.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4233.         });
  4234.     }
  4235.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4236. }
  4237. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D> : QuickSystemBase where D : struct, IBufferElementData {
  4238.     protected override void OnCreate() {
  4239.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D));
  4240.     }
  4241.     protected override void OnUpdate() {
  4242.         float delta = Time.DeltaTime;
  4243.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  4244.             OnUpdate(e, d, delta);
  4245.         });
  4246.     }
  4247.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  4248. }
  4249. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  4250.     protected override void OnCreate() {
  4251.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1));
  4252.     }
  4253.     protected override void OnUpdate() {
  4254.         float delta = Time.DeltaTime;
  4255.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  4256.             OnUpdate(e, d, ref t1, delta);
  4257.         });
  4258.     }
  4259.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  4260. }
  4261. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4262.     protected override void OnCreate() {
  4263.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2));
  4264.     }
  4265.     protected override void OnUpdate() {
  4266.         float delta = Time.DeltaTime;
  4267.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  4268.             OnUpdate(e, d, ref t1, ref t2, delta);
  4269.         });
  4270.     }
  4271.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  4272. }
  4273. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4274.     protected override void OnCreate() {
  4275.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  4276.     }
  4277.     protected override void OnUpdate() {
  4278.         float delta = Time.DeltaTime;
  4279.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4280.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  4281.         });
  4282.     }
  4283.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4284. }
  4285. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4286.     protected override void OnCreate() {
  4287.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4288.     }
  4289.     protected override void OnUpdate() {
  4290.         float delta = Time.DeltaTime;
  4291.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4292.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  4293.         });
  4294.     }
  4295.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4296. }
  4297. public abstract class QuickSystemFilter3EntityBufferDelta<F1, F2, F3, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4298.     protected override void OnCreate() {
  4299.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4300.     }
  4301.     protected override void OnUpdate() {
  4302.         float delta = Time.DeltaTime;
  4303.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4304.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4305.         });
  4306.     }
  4307.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4308. }
  4309. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C> : QuickSystemBase where C : class {
  4310.     protected override void OnCreate() {
  4311.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C));
  4312.     }
  4313.     protected override void OnUpdate() {
  4314.         Entities.With(m_MainGroup).ForEach((C c) => {
  4315.             OnUpdate(c);
  4316.         });
  4317.     }
  4318.     protected abstract void OnUpdate(C c);
  4319. }
  4320. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  4321.     protected override void OnCreate() {
  4322.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1));
  4323.     }
  4324.     protected override void OnUpdate() {
  4325.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  4326.             OnUpdate(c, ref t1);
  4327.         });
  4328.     }
  4329.     protected abstract void OnUpdate(C c, ref T1 t1);
  4330. }
  4331. public abstract class QuickSystemFilter4<F1, F2, F3, F4, T1> : QuickSystemBase where T1 : struct, IComponentData {
  4332.     protected override void OnCreate() {
  4333.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1));
  4334.     }
  4335.     protected override void OnUpdate() {
  4336.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  4337.             OnUpdate(ref t1);
  4338.         });
  4339.     }
  4340.     protected abstract void OnUpdate(ref T1 t1);
  4341. }
  4342. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4343.     protected override void OnCreate() {
  4344.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2));
  4345.     }
  4346.     protected override void OnUpdate() {
  4347.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  4348.             OnUpdate(c, ref t1, ref t2);
  4349.         });
  4350.     }
  4351.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  4352. }
  4353. public abstract class QuickSystemFilter4<F1, F2, F3, F4, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4354.     protected override void OnCreate() {
  4355.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2));
  4356.     }
  4357.     protected override void OnUpdate() {
  4358.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  4359.             OnUpdate(ref t1, ref t2);
  4360.         });
  4361.     }
  4362.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  4363. }
  4364. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4365.     protected override void OnCreate() {
  4366.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  4367.     }
  4368.     protected override void OnUpdate() {
  4369.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4370.             OnUpdate(c, ref t1, ref t2, ref t3);
  4371.         });
  4372.     }
  4373.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  4374. }
  4375. public abstract class QuickSystemFilter4<F1, F2, F3, F4, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4376.     protected override void OnCreate() {
  4377.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3));
  4378.     }
  4379.     protected override void OnUpdate() {
  4380.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  4381.             OnUpdate(ref t1, ref t2, ref t3);
  4382.         });
  4383.     }
  4384.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  4385. }
  4386. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4387.     protected override void OnCreate() {
  4388.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4389.     }
  4390.     protected override void OnUpdate() {
  4391.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4392.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  4393.         });
  4394.     }
  4395.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4396. }
  4397. public abstract class QuickSystemFilter4<F1, F2, F3, F4, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4398.     protected override void OnCreate() {
  4399.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4400.     }
  4401.     protected override void OnUpdate() {
  4402.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4403.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  4404.         });
  4405.     }
  4406.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4407. }
  4408. public abstract class QuickSystemFilter4Class<F1, F2, F3, F4, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4409.     protected override void OnCreate() {
  4410.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4411.     }
  4412.     protected override void OnUpdate() {
  4413.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4414.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  4415.         });
  4416.     }
  4417.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4418. }
  4419. public abstract class QuickSystemFilter4<F1, F2, F3, F4, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4420.     protected override void OnCreate() {
  4421.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4422.     }
  4423.     protected override void OnUpdate() {
  4424.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4425.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  4426.         });
  4427.     }
  4428.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4429. }
  4430. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C> : QuickSystemBase where C : class {
  4431.     protected override void OnCreate() {
  4432.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C));
  4433.     }
  4434.     protected override void OnUpdate() {
  4435.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  4436.             OnUpdate(e, c);
  4437.         });
  4438.     }
  4439.     protected abstract void OnUpdate(Entity e, C c);
  4440. }
  4441. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4> : QuickSystemBase {
  4442.     protected override void OnCreate() {
  4443.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4));
  4444.     }
  4445.     protected override void OnUpdate() {
  4446.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  4447.             OnUpdate(e);
  4448.         });
  4449.     }
  4450.     protected abstract void OnUpdate(Entity e);
  4451. }
  4452. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  4453.     protected override void OnCreate() {
  4454.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1));
  4455.     }
  4456.     protected override void OnUpdate() {
  4457.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  4458.             OnUpdate(e, c, ref t1);
  4459.         });
  4460.     }
  4461.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  4462. }
  4463. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4, T1> : QuickSystemBase where T1 : struct, IComponentData {
  4464.     protected override void OnCreate() {
  4465.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1));
  4466.     }
  4467.     protected override void OnUpdate() {
  4468.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  4469.             OnUpdate(e, ref t1);
  4470.         });
  4471.     }
  4472.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  4473. }
  4474. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4475.     protected override void OnCreate() {
  4476.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2));
  4477.     }
  4478.     protected override void OnUpdate() {
  4479.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  4480.             OnUpdate(e, c, ref t1, ref t2);
  4481.         });
  4482.     }
  4483.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  4484. }
  4485. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4486.     protected override void OnCreate() {
  4487.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2));
  4488.     }
  4489.     protected override void OnUpdate() {
  4490.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  4491.             OnUpdate(e, ref t1, ref t2);
  4492.         });
  4493.     }
  4494.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  4495. }
  4496. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4497.     protected override void OnCreate() {
  4498.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  4499.     }
  4500.     protected override void OnUpdate() {
  4501.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4502.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  4503.         });
  4504.     }
  4505.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  4506. }
  4507. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4508.     protected override void OnCreate() {
  4509.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3));
  4510.     }
  4511.     protected override void OnUpdate() {
  4512.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4513.             OnUpdate(e, ref t1, ref t2, ref t3);
  4514.         });
  4515.     }
  4516.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  4517. }
  4518. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4519.     protected override void OnCreate() {
  4520.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4521.     }
  4522.     protected override void OnUpdate() {
  4523.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4524.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  4525.         });
  4526.     }
  4527.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4528. }
  4529. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4530.     protected override void OnCreate() {
  4531.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4532.     }
  4533.     protected override void OnUpdate() {
  4534.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4535.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  4536.         });
  4537.     }
  4538.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4539. }
  4540. public abstract class QuickSystemFilter4EntityClass<F1, F2, F3, F4, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4541.     protected override void OnCreate() {
  4542.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4543.     }
  4544.     protected override void OnUpdate() {
  4545.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4546.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  4547.         });
  4548.     }
  4549.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4550. }
  4551. public abstract class QuickSystemFilter4Entity<F1, F2, F3, F4, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4552.     protected override void OnCreate() {
  4553.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4554.     }
  4555.     protected override void OnUpdate() {
  4556.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4557.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  4558.         });
  4559.     }
  4560.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4561. }
  4562. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C> : QuickSystemBase where C : class {
  4563.     protected override void OnCreate() {
  4564.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C));
  4565.     }
  4566.     protected override void OnUpdate() {
  4567.         float delta = Time.DeltaTime;
  4568.         Entities.With(m_MainGroup).ForEach((C c) => {
  4569.             OnUpdate(c, delta);
  4570.         });
  4571.     }
  4572.     protected abstract void OnUpdate(C c, float delta);
  4573. }
  4574. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  4575.     protected override void OnCreate() {
  4576.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1));
  4577.     }
  4578.     protected override void OnUpdate() {
  4579.         float delta = Time.DeltaTime;
  4580.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  4581.             OnUpdate(c, ref t1, delta);
  4582.         });
  4583.     }
  4584.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  4585. }
  4586. public abstract class QuickSystemFilter4Delta<F1, F2, F3, F4, T1> : QuickSystemBase where T1 : struct, IComponentData {
  4587.     protected override void OnCreate() {
  4588.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1));
  4589.     }
  4590.     protected override void OnUpdate() {
  4591.         float delta = Time.DeltaTime;
  4592.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  4593.             OnUpdate(ref t1, delta);
  4594.         });
  4595.     }
  4596.     protected abstract void OnUpdate(ref T1 t1, float delta);
  4597. }
  4598. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4599.     protected override void OnCreate() {
  4600.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2));
  4601.     }
  4602.     protected override void OnUpdate() {
  4603.         float delta = Time.DeltaTime;
  4604.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  4605.             OnUpdate(c, ref t1, ref t2, delta);
  4606.         });
  4607.     }
  4608.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  4609. }
  4610. public abstract class QuickSystemFilter4Delta<F1, F2, F3, F4, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4611.     protected override void OnCreate() {
  4612.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2));
  4613.     }
  4614.     protected override void OnUpdate() {
  4615.         float delta = Time.DeltaTime;
  4616.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  4617.             OnUpdate(ref t1, ref t2, delta);
  4618.         });
  4619.     }
  4620.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  4621. }
  4622. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4623.     protected override void OnCreate() {
  4624.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  4625.     }
  4626.     protected override void OnUpdate() {
  4627.         float delta = Time.DeltaTime;
  4628.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4629.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  4630.         });
  4631.     }
  4632.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4633. }
  4634. public abstract class QuickSystemFilter4Delta<F1, F2, F3, F4, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4635.     protected override void OnCreate() {
  4636.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3));
  4637.     }
  4638.     protected override void OnUpdate() {
  4639.         float delta = Time.DeltaTime;
  4640.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  4641.             OnUpdate(ref t1, ref t2, ref t3, delta);
  4642.         });
  4643.     }
  4644.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4645. }
  4646. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4647.     protected override void OnCreate() {
  4648.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4649.     }
  4650.     protected override void OnUpdate() {
  4651.         float delta = Time.DeltaTime;
  4652.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4653.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  4654.         });
  4655.     }
  4656.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4657. }
  4658. public abstract class QuickSystemFilter4Delta<F1, F2, F3, F4, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4659.     protected override void OnCreate() {
  4660.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4661.     }
  4662.     protected override void OnUpdate() {
  4663.         float delta = Time.DeltaTime;
  4664.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4665.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  4666.         });
  4667.     }
  4668.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4669. }
  4670. public abstract class QuickSystemFilter4ClassDelta<F1, F2, F3, F4, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4671.     protected override void OnCreate() {
  4672.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4673.     }
  4674.     protected override void OnUpdate() {
  4675.         float delta = Time.DeltaTime;
  4676.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4677.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4678.         });
  4679.     }
  4680.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4681. }
  4682. public abstract class QuickSystemFilter4Delta<F1, F2, F3, F4, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4683.     protected override void OnCreate() {
  4684.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4685.     }
  4686.     protected override void OnUpdate() {
  4687.         float delta = Time.DeltaTime;
  4688.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4689.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4690.         });
  4691.     }
  4692.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4693. }
  4694. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C> : QuickSystemBase where C : class {
  4695.     protected override void OnCreate() {
  4696.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C));
  4697.     }
  4698.     protected override void OnUpdate() {
  4699.         float delta = Time.DeltaTime;
  4700.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  4701.             OnUpdate(e, c, delta);
  4702.         });
  4703.     }
  4704.     protected abstract void OnUpdate(Entity e, C c, float delta);
  4705. }
  4706. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4> : QuickSystemBase {
  4707.     protected override void OnCreate() {
  4708.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4));
  4709.     }
  4710.     protected override void OnUpdate() {
  4711.         float delta = Time.DeltaTime;
  4712.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  4713.             OnUpdate(e, delta);
  4714.         });
  4715.     }
  4716.     protected abstract void OnUpdate(Entity e, float delta);
  4717. }
  4718. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  4719.     protected override void OnCreate() {
  4720.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1));
  4721.     }
  4722.     protected override void OnUpdate() {
  4723.         float delta = Time.DeltaTime;
  4724.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  4725.             OnUpdate(e, c, ref t1, delta);
  4726.         });
  4727.     }
  4728.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  4729. }
  4730. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4, T1> : QuickSystemBase where T1 : struct, IComponentData {
  4731.     protected override void OnCreate() {
  4732.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1));
  4733.     }
  4734.     protected override void OnUpdate() {
  4735.         float delta = Time.DeltaTime;
  4736.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  4737.             OnUpdate(e, ref t1, delta);
  4738.         });
  4739.     }
  4740.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  4741. }
  4742. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4743.     protected override void OnCreate() {
  4744.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2));
  4745.     }
  4746.     protected override void OnUpdate() {
  4747.         float delta = Time.DeltaTime;
  4748.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  4749.             OnUpdate(e, c, ref t1, ref t2, delta);
  4750.         });
  4751.     }
  4752.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  4753. }
  4754. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4755.     protected override void OnCreate() {
  4756.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2));
  4757.     }
  4758.     protected override void OnUpdate() {
  4759.         float delta = Time.DeltaTime;
  4760.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  4761.             OnUpdate(e, ref t1, ref t2, delta);
  4762.         });
  4763.     }
  4764.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  4765. }
  4766. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4767.     protected override void OnCreate() {
  4768.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  4769.     }
  4770.     protected override void OnUpdate() {
  4771.         float delta = Time.DeltaTime;
  4772.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4773.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  4774.         });
  4775.     }
  4776.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4777. }
  4778. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4779.     protected override void OnCreate() {
  4780.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3));
  4781.     }
  4782.     protected override void OnUpdate() {
  4783.         float delta = Time.DeltaTime;
  4784.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4785.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  4786.         });
  4787.     }
  4788.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  4789. }
  4790. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4791.     protected override void OnCreate() {
  4792.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4793.     }
  4794.     protected override void OnUpdate() {
  4795.         float delta = Time.DeltaTime;
  4796.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4797.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  4798.         });
  4799.     }
  4800.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4801. }
  4802. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4803.     protected override void OnCreate() {
  4804.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4805.     }
  4806.     protected override void OnUpdate() {
  4807.         float delta = Time.DeltaTime;
  4808.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4809.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  4810.         });
  4811.     }
  4812.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  4813. }
  4814. public abstract class QuickSystemFilter4EntityClassDelta<F1, F2, F3, F4, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4815.     protected override void OnCreate() {
  4816.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4817.     }
  4818.     protected override void OnUpdate() {
  4819.         float delta = Time.DeltaTime;
  4820.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4821.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4822.         });
  4823.     }
  4824.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4825. }
  4826. public abstract class QuickSystemFilter4EntityDelta<F1, F2, F3, F4, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4827.     protected override void OnCreate() {
  4828.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4829.     }
  4830.     protected override void OnUpdate() {
  4831.         float delta = Time.DeltaTime;
  4832.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4833.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  4834.         });
  4835.     }
  4836.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  4837. }
  4838. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S> : QuickSystemBase where S : struct, ISharedComponentData {
  4839.     protected override void OnCreate() {
  4840.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S));
  4841.     }
  4842.     protected override void OnUpdate() {
  4843.         Entities.With(m_MainGroup).ForEach((S s) => {
  4844.             OnUpdate(s);
  4845.         });
  4846.     }
  4847.     protected abstract void OnUpdate(S s);
  4848. }
  4849. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  4850.     protected override void OnCreate() {
  4851.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1));
  4852.     }
  4853.     protected override void OnUpdate() {
  4854.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  4855.             OnUpdate(s, ref t1);
  4856.         });
  4857.     }
  4858.     protected abstract void OnUpdate(S s, ref T1 t1);
  4859. }
  4860. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4861.     protected override void OnCreate() {
  4862.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2));
  4863.     }
  4864.     protected override void OnUpdate() {
  4865.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  4866.             OnUpdate(s, ref t1, ref t2);
  4867.         });
  4868.     }
  4869.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  4870. }
  4871. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4872.     protected override void OnCreate() {
  4873.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  4874.     }
  4875.     protected override void OnUpdate() {
  4876.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4877.             OnUpdate(s, ref t1, ref t2, ref t3);
  4878.         });
  4879.     }
  4880.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  4881. }
  4882. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4883.     protected override void OnCreate() {
  4884.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4885.     }
  4886.     protected override void OnUpdate() {
  4887.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4888.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  4889.         });
  4890.     }
  4891.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4892. }
  4893. public abstract class QuickSystemFilter4Shared<F1, F2, F3, F4, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4894.     protected override void OnCreate() {
  4895.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4896.     }
  4897.     protected override void OnUpdate() {
  4898.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4899.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  4900.         });
  4901.     }
  4902.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4903. }
  4904. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S> : QuickSystemBase where S : struct, ISharedComponentData {
  4905.     protected override void OnCreate() {
  4906.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S));
  4907.     }
  4908.     protected override void OnUpdate() {
  4909.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  4910.             OnUpdate(e, s);
  4911.         });
  4912.     }
  4913.     protected abstract void OnUpdate(Entity e, S s);
  4914. }
  4915. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  4916.     protected override void OnCreate() {
  4917.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1));
  4918.     }
  4919.     protected override void OnUpdate() {
  4920.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  4921.             OnUpdate(e, s, ref t1);
  4922.         });
  4923.     }
  4924.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  4925. }
  4926. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4927.     protected override void OnCreate() {
  4928.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2));
  4929.     }
  4930.     protected override void OnUpdate() {
  4931.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  4932.             OnUpdate(e, s, ref t1, ref t2);
  4933.         });
  4934.     }
  4935.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  4936. }
  4937. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  4938.     protected override void OnCreate() {
  4939.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  4940.     }
  4941.     protected override void OnUpdate() {
  4942.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  4943.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  4944.         });
  4945.     }
  4946.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  4947. }
  4948. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  4949.     protected override void OnCreate() {
  4950.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  4951.     }
  4952.     protected override void OnUpdate() {
  4953.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  4954.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  4955.         });
  4956.     }
  4957.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  4958. }
  4959. public abstract class QuickSystemFilter4EntityShared<F1, F2, F3, F4, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  4960.     protected override void OnCreate() {
  4961.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  4962.     }
  4963.     protected override void OnUpdate() {
  4964.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  4965.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  4966.         });
  4967.     }
  4968.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  4969. }
  4970. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S> : QuickSystemBase where S : struct, ISharedComponentData {
  4971.     protected override void OnCreate() {
  4972.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S));
  4973.     }
  4974.     protected override void OnUpdate() {
  4975.         float delta = Time.DeltaTime;
  4976.         Entities.With(m_MainGroup).ForEach((S s) => {
  4977.             OnUpdate(s, delta);
  4978.         });
  4979.     }
  4980.     protected abstract void OnUpdate(S s, float delta);
  4981. }
  4982. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  4983.     protected override void OnCreate() {
  4984.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1));
  4985.     }
  4986.     protected override void OnUpdate() {
  4987.         float delta = Time.DeltaTime;
  4988.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  4989.             OnUpdate(s, ref t1, delta);
  4990.         });
  4991.     }
  4992.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  4993. }
  4994. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  4995.     protected override void OnCreate() {
  4996.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2));
  4997.     }
  4998.     protected override void OnUpdate() {
  4999.         float delta = Time.DeltaTime;
  5000.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  5001.             OnUpdate(s, ref t1, ref t2, delta);
  5002.         });
  5003.     }
  5004.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  5005. }
  5006. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5007.     protected override void OnCreate() {
  5008.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  5009.     }
  5010.     protected override void OnUpdate() {
  5011.         float delta = Time.DeltaTime;
  5012.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5013.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  5014.         });
  5015.     }
  5016.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5017. }
  5018. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5019.     protected override void OnCreate() {
  5020.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5021.     }
  5022.     protected override void OnUpdate() {
  5023.         float delta = Time.DeltaTime;
  5024.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5025.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  5026.         });
  5027.     }
  5028.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5029. }
  5030. public abstract class QuickSystemFilter4SharedDelta<F1, F2, F3, F4, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5031.     protected override void OnCreate() {
  5032.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5033.     }
  5034.     protected override void OnUpdate() {
  5035.         float delta = Time.DeltaTime;
  5036.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5037.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5038.         });
  5039.     }
  5040.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5041. }
  5042. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S> : QuickSystemBase where S : struct, ISharedComponentData {
  5043.     protected override void OnCreate() {
  5044.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S));
  5045.     }
  5046.     protected override void OnUpdate() {
  5047.         float delta = Time.DeltaTime;
  5048.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  5049.             OnUpdate(e, s, delta);
  5050.         });
  5051.     }
  5052.     protected abstract void OnUpdate(Entity e, S s, float delta);
  5053. }
  5054. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  5055.     protected override void OnCreate() {
  5056.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1));
  5057.     }
  5058.     protected override void OnUpdate() {
  5059.         float delta = Time.DeltaTime;
  5060.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  5061.             OnUpdate(e, s, ref t1, delta);
  5062.         });
  5063.     }
  5064.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  5065. }
  5066. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5067.     protected override void OnCreate() {
  5068.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2));
  5069.     }
  5070.     protected override void OnUpdate() {
  5071.         float delta = Time.DeltaTime;
  5072.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  5073.             OnUpdate(e, s, ref t1, ref t2, delta);
  5074.         });
  5075.     }
  5076.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  5077. }
  5078. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5079.     protected override void OnCreate() {
  5080.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  5081.     }
  5082.     protected override void OnUpdate() {
  5083.         float delta = Time.DeltaTime;
  5084.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5085.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  5086.         });
  5087.     }
  5088.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5089. }
  5090. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5091.     protected override void OnCreate() {
  5092.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5093.     }
  5094.     protected override void OnUpdate() {
  5095.         float delta = Time.DeltaTime;
  5096.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5097.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  5098.         });
  5099.     }
  5100.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5101. }
  5102. public abstract class QuickSystemFilter4EntitySharedDelta<F1, F2, F3, F4, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5103.     protected override void OnCreate() {
  5104.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5105.     }
  5106.     protected override void OnUpdate() {
  5107.         float delta = Time.DeltaTime;
  5108.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5109.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5110.         });
  5111.     }
  5112.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5113. }
  5114. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D> : QuickSystemBase where D : struct, IBufferElementData {
  5115.     protected override void OnCreate() {
  5116.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D));
  5117.     }
  5118.     protected override void OnUpdate() {
  5119.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  5120.             OnUpdate(d);
  5121.         });
  5122.     }
  5123.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  5124. }
  5125. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  5126.     protected override void OnCreate() {
  5127.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1));
  5128.     }
  5129.     protected override void OnUpdate() {
  5130.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  5131.             OnUpdate(d, ref t1);
  5132.         });
  5133.     }
  5134.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  5135. }
  5136. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5137.     protected override void OnCreate() {
  5138.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2));
  5139.     }
  5140.     protected override void OnUpdate() {
  5141.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  5142.             OnUpdate(d, ref t1, ref t2);
  5143.         });
  5144.     }
  5145.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  5146. }
  5147. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5148.     protected override void OnCreate() {
  5149.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  5150.     }
  5151.     protected override void OnUpdate() {
  5152.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5153.             OnUpdate(d, ref t1, ref t2, ref t3);
  5154.         });
  5155.     }
  5156.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  5157. }
  5158. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5159.     protected override void OnCreate() {
  5160.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5161.     }
  5162.     protected override void OnUpdate() {
  5163.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5164.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  5165.         });
  5166.     }
  5167.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5168. }
  5169. public abstract class QuickSystemFilter4Buffer<F1, F2, F3, F4, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5170.     protected override void OnCreate() {
  5171.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5172.     }
  5173.     protected override void OnUpdate() {
  5174.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5175.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  5176.         });
  5177.     }
  5178.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5179. }
  5180. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D> : QuickSystemBase where D : struct, IBufferElementData {
  5181.     protected override void OnCreate() {
  5182.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D));
  5183.     }
  5184.     protected override void OnUpdate() {
  5185.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  5186.             OnUpdate(e, d);
  5187.         });
  5188.     }
  5189.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  5190. }
  5191. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  5192.     protected override void OnCreate() {
  5193.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1));
  5194.     }
  5195.     protected override void OnUpdate() {
  5196.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  5197.             OnUpdate(e, d, ref t1);
  5198.         });
  5199.     }
  5200.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  5201. }
  5202. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5203.     protected override void OnCreate() {
  5204.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2));
  5205.     }
  5206.     protected override void OnUpdate() {
  5207.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  5208.             OnUpdate(e, d, ref t1, ref t2);
  5209.         });
  5210.     }
  5211.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  5212. }
  5213. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5214.     protected override void OnCreate() {
  5215.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  5216.     }
  5217.     protected override void OnUpdate() {
  5218.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5219.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  5220.         });
  5221.     }
  5222.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  5223. }
  5224. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5225.     protected override void OnCreate() {
  5226.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5227.     }
  5228.     protected override void OnUpdate() {
  5229.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5230.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  5231.         });
  5232.     }
  5233.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5234. }
  5235. public abstract class QuickSystemFilter4EntityBuffer<F1, F2, F3, F4, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5236.     protected override void OnCreate() {
  5237.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5238.     }
  5239.     protected override void OnUpdate() {
  5240.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5241.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  5242.         });
  5243.     }
  5244.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5245. }
  5246. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D> : QuickSystemBase where D : struct, IBufferElementData {
  5247.     protected override void OnCreate() {
  5248.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D));
  5249.     }
  5250.     protected override void OnUpdate() {
  5251.         float delta = Time.DeltaTime;
  5252.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  5253.             OnUpdate(d, delta);
  5254.         });
  5255.     }
  5256.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  5257. }
  5258. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  5259.     protected override void OnCreate() {
  5260.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1));
  5261.     }
  5262.     protected override void OnUpdate() {
  5263.         float delta = Time.DeltaTime;
  5264.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  5265.             OnUpdate(d, ref t1, delta);
  5266.         });
  5267.     }
  5268.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  5269. }
  5270. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5271.     protected override void OnCreate() {
  5272.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2));
  5273.     }
  5274.     protected override void OnUpdate() {
  5275.         float delta = Time.DeltaTime;
  5276.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  5277.             OnUpdate(d, ref t1, ref t2, delta);
  5278.         });
  5279.     }
  5280.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  5281. }
  5282. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5283.     protected override void OnCreate() {
  5284.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  5285.     }
  5286.     protected override void OnUpdate() {
  5287.         float delta = Time.DeltaTime;
  5288.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5289.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  5290.         });
  5291.     }
  5292.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5293. }
  5294. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5295.     protected override void OnCreate() {
  5296.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5297.     }
  5298.     protected override void OnUpdate() {
  5299.         float delta = Time.DeltaTime;
  5300.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5301.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  5302.         });
  5303.     }
  5304.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5305. }
  5306. public abstract class QuickSystemFilter4BufferDelta<F1, F2, F3, F4, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5307.     protected override void OnCreate() {
  5308.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5309.     }
  5310.     protected override void OnUpdate() {
  5311.         float delta = Time.DeltaTime;
  5312.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5313.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5314.         });
  5315.     }
  5316.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5317. }
  5318. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D> : QuickSystemBase where D : struct, IBufferElementData {
  5319.     protected override void OnCreate() {
  5320.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D));
  5321.     }
  5322.     protected override void OnUpdate() {
  5323.         float delta = Time.DeltaTime;
  5324.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  5325.             OnUpdate(e, d, delta);
  5326.         });
  5327.     }
  5328.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  5329. }
  5330. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  5331.     protected override void OnCreate() {
  5332.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1));
  5333.     }
  5334.     protected override void OnUpdate() {
  5335.         float delta = Time.DeltaTime;
  5336.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  5337.             OnUpdate(e, d, ref t1, delta);
  5338.         });
  5339.     }
  5340.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  5341. }
  5342. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5343.     protected override void OnCreate() {
  5344.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2));
  5345.     }
  5346.     protected override void OnUpdate() {
  5347.         float delta = Time.DeltaTime;
  5348.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  5349.             OnUpdate(e, d, ref t1, ref t2, delta);
  5350.         });
  5351.     }
  5352.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  5353. }
  5354. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5355.     protected override void OnCreate() {
  5356.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  5357.     }
  5358.     protected override void OnUpdate() {
  5359.         float delta = Time.DeltaTime;
  5360.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5361.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  5362.         });
  5363.     }
  5364.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5365. }
  5366. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5367.     protected override void OnCreate() {
  5368.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5369.     }
  5370.     protected override void OnUpdate() {
  5371.         float delta = Time.DeltaTime;
  5372.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5373.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  5374.         });
  5375.     }
  5376.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5377. }
  5378. public abstract class QuickSystemFilter4EntityBufferDelta<F1, F2, F3, F4, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5379.     protected override void OnCreate() {
  5380.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5381.     }
  5382.     protected override void OnUpdate() {
  5383.         float delta = Time.DeltaTime;
  5384.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5385.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5386.         });
  5387.     }
  5388.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5389. }
  5390. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C> : QuickSystemBase where C : class {
  5391.     protected override void OnCreate() {
  5392.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C));
  5393.     }
  5394.     protected override void OnUpdate() {
  5395.         Entities.With(m_MainGroup).ForEach((C c) => {
  5396.             OnUpdate(c);
  5397.         });
  5398.     }
  5399.     protected abstract void OnUpdate(C c);
  5400. }
  5401. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  5402.     protected override void OnCreate() {
  5403.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1));
  5404.     }
  5405.     protected override void OnUpdate() {
  5406.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  5407.             OnUpdate(c, ref t1);
  5408.         });
  5409.     }
  5410.     protected abstract void OnUpdate(C c, ref T1 t1);
  5411. }
  5412. public abstract class QuickSystemFilter5<F1, F2, F3, F4, F5, T1> : QuickSystemBase where T1 : struct, IComponentData {
  5413.     protected override void OnCreate() {
  5414.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1));
  5415.     }
  5416.     protected override void OnUpdate() {
  5417.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  5418.             OnUpdate(ref t1);
  5419.         });
  5420.     }
  5421.     protected abstract void OnUpdate(ref T1 t1);
  5422. }
  5423. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5424.     protected override void OnCreate() {
  5425.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2));
  5426.     }
  5427.     protected override void OnUpdate() {
  5428.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  5429.             OnUpdate(c, ref t1, ref t2);
  5430.         });
  5431.     }
  5432.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2);
  5433. }
  5434. public abstract class QuickSystemFilter5<F1, F2, F3, F4, F5, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5435.     protected override void OnCreate() {
  5436.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2));
  5437.     }
  5438.     protected override void OnUpdate() {
  5439.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  5440.             OnUpdate(ref t1, ref t2);
  5441.         });
  5442.     }
  5443.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2);
  5444. }
  5445. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5446.     protected override void OnCreate() {
  5447.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  5448.     }
  5449.     protected override void OnUpdate() {
  5450.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5451.             OnUpdate(c, ref t1, ref t2, ref t3);
  5452.         });
  5453.     }
  5454.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3);
  5455. }
  5456. public abstract class QuickSystemFilter5<F1, F2, F3, F4, F5, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5457.     protected override void OnCreate() {
  5458.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3));
  5459.     }
  5460.     protected override void OnUpdate() {
  5461.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  5462.             OnUpdate(ref t1, ref t2, ref t3);
  5463.         });
  5464.     }
  5465.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3);
  5466. }
  5467. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5468.     protected override void OnCreate() {
  5469.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5470.     }
  5471.     protected override void OnUpdate() {
  5472.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5473.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4);
  5474.         });
  5475.     }
  5476.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5477. }
  5478. public abstract class QuickSystemFilter5<F1, F2, F3, F4, F5, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5479.     protected override void OnCreate() {
  5480.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5481.     }
  5482.     protected override void OnUpdate() {
  5483.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5484.             OnUpdate(ref t1, ref t2, ref t3, ref t4);
  5485.         });
  5486.     }
  5487.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5488. }
  5489. public abstract class QuickSystemFilter5Class<F1, F2, F3, F4, F5, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5490.     protected override void OnCreate() {
  5491.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5492.     }
  5493.     protected override void OnUpdate() {
  5494.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5495.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5);
  5496.         });
  5497.     }
  5498.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5499. }
  5500. public abstract class QuickSystemFilter5<F1, F2, F3, F4, F5, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5501.     protected override void OnCreate() {
  5502.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5503.     }
  5504.     protected override void OnUpdate() {
  5505.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5506.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5);
  5507.         });
  5508.     }
  5509.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5510. }
  5511. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C> : QuickSystemBase where C : class {
  5512.     protected override void OnCreate() {
  5513.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C));
  5514.     }
  5515.     protected override void OnUpdate() {
  5516.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  5517.             OnUpdate(e, c);
  5518.         });
  5519.     }
  5520.     protected abstract void OnUpdate(Entity e, C c);
  5521. }
  5522. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5> : QuickSystemBase {
  5523.     protected override void OnCreate() {
  5524.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5));
  5525.     }
  5526.     protected override void OnUpdate() {
  5527.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  5528.             OnUpdate(e);
  5529.         });
  5530.     }
  5531.     protected abstract void OnUpdate(Entity e);
  5532. }
  5533. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  5534.     protected override void OnCreate() {
  5535.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1));
  5536.     }
  5537.     protected override void OnUpdate() {
  5538.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  5539.             OnUpdate(e, c, ref t1);
  5540.         });
  5541.     }
  5542.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1);
  5543. }
  5544. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5, T1> : QuickSystemBase where T1 : struct, IComponentData {
  5545.     protected override void OnCreate() {
  5546.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1));
  5547.     }
  5548.     protected override void OnUpdate() {
  5549.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  5550.             OnUpdate(e, ref t1);
  5551.         });
  5552.     }
  5553.     protected abstract void OnUpdate(Entity e, ref T1 t1);
  5554. }
  5555. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5556.     protected override void OnCreate() {
  5557.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2));
  5558.     }
  5559.     protected override void OnUpdate() {
  5560.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  5561.             OnUpdate(e, c, ref t1, ref t2);
  5562.         });
  5563.     }
  5564.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2);
  5565. }
  5566. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5567.     protected override void OnCreate() {
  5568.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2));
  5569.     }
  5570.     protected override void OnUpdate() {
  5571.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  5572.             OnUpdate(e, ref t1, ref t2);
  5573.         });
  5574.     }
  5575.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2);
  5576. }
  5577. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5578.     protected override void OnCreate() {
  5579.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  5580.     }
  5581.     protected override void OnUpdate() {
  5582.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5583.             OnUpdate(e, c, ref t1, ref t2, ref t3);
  5584.         });
  5585.     }
  5586.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3);
  5587. }
  5588. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5589.     protected override void OnCreate() {
  5590.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3));
  5591.     }
  5592.     protected override void OnUpdate() {
  5593.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5594.             OnUpdate(e, ref t1, ref t2, ref t3);
  5595.         });
  5596.     }
  5597.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3);
  5598. }
  5599. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5600.     protected override void OnCreate() {
  5601.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5602.     }
  5603.     protected override void OnUpdate() {
  5604.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5605.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4);
  5606.         });
  5607.     }
  5608.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5609. }
  5610. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5611.     protected override void OnCreate() {
  5612.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5613.     }
  5614.     protected override void OnUpdate() {
  5615.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5616.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4);
  5617.         });
  5618.     }
  5619.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5620. }
  5621. public abstract class QuickSystemFilter5EntityClass<F1, F2, F3, F4, F5, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5622.     protected override void OnCreate() {
  5623.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5624.     }
  5625.     protected override void OnUpdate() {
  5626.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5627.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5);
  5628.         });
  5629.     }
  5630.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5631. }
  5632. public abstract class QuickSystemFilter5Entity<F1, F2, F3, F4, F5, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5633.     protected override void OnCreate() {
  5634.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5635.     }
  5636.     protected override void OnUpdate() {
  5637.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5638.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5);
  5639.         });
  5640.     }
  5641.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5642. }
  5643. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C> : QuickSystemBase where C : class {
  5644.     protected override void OnCreate() {
  5645.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C));
  5646.     }
  5647.     protected override void OnUpdate() {
  5648.         float delta = Time.DeltaTime;
  5649.         Entities.With(m_MainGroup).ForEach((C c) => {
  5650.             OnUpdate(c, delta);
  5651.         });
  5652.     }
  5653.     protected abstract void OnUpdate(C c, float delta);
  5654. }
  5655. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  5656.     protected override void OnCreate() {
  5657.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1));
  5658.     }
  5659.     protected override void OnUpdate() {
  5660.         float delta = Time.DeltaTime;
  5661.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1) => {
  5662.             OnUpdate(c, ref t1, delta);
  5663.         });
  5664.     }
  5665.     protected abstract void OnUpdate(C c, ref T1 t1, float delta);
  5666. }
  5667. public abstract class QuickSystemFilter5Delta<F1, F2, F3, F4, F5, T1> : QuickSystemBase where T1 : struct, IComponentData {
  5668.     protected override void OnCreate() {
  5669.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1));
  5670.     }
  5671.     protected override void OnUpdate() {
  5672.         float delta = Time.DeltaTime;
  5673.         Entities.With(m_MainGroup).ForEach((ref T1 t1) => {
  5674.             OnUpdate(ref t1, delta);
  5675.         });
  5676.     }
  5677.     protected abstract void OnUpdate(ref T1 t1, float delta);
  5678. }
  5679. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5680.     protected override void OnCreate() {
  5681.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2));
  5682.     }
  5683.     protected override void OnUpdate() {
  5684.         float delta = Time.DeltaTime;
  5685.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2) => {
  5686.             OnUpdate(c, ref t1, ref t2, delta);
  5687.         });
  5688.     }
  5689.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, float delta);
  5690. }
  5691. public abstract class QuickSystemFilter5Delta<F1, F2, F3, F4, F5, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5692.     protected override void OnCreate() {
  5693.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2));
  5694.     }
  5695.     protected override void OnUpdate() {
  5696.         float delta = Time.DeltaTime;
  5697.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2) => {
  5698.             OnUpdate(ref t1, ref t2, delta);
  5699.         });
  5700.     }
  5701.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, float delta);
  5702. }
  5703. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5704.     protected override void OnCreate() {
  5705.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  5706.     }
  5707.     protected override void OnUpdate() {
  5708.         float delta = Time.DeltaTime;
  5709.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5710.             OnUpdate(c, ref t1, ref t2, ref t3, delta);
  5711.         });
  5712.     }
  5713.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5714. }
  5715. public abstract class QuickSystemFilter5Delta<F1, F2, F3, F4, F5, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5716.     protected override void OnCreate() {
  5717.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3));
  5718.     }
  5719.     protected override void OnUpdate() {
  5720.         float delta = Time.DeltaTime;
  5721.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3) => {
  5722.             OnUpdate(ref t1, ref t2, ref t3, delta);
  5723.         });
  5724.     }
  5725.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5726. }
  5727. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5728.     protected override void OnCreate() {
  5729.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5730.     }
  5731.     protected override void OnUpdate() {
  5732.         float delta = Time.DeltaTime;
  5733.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5734.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, delta);
  5735.         });
  5736.     }
  5737.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5738. }
  5739. public abstract class QuickSystemFilter5Delta<F1, F2, F3, F4, F5, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5740.     protected override void OnCreate() {
  5741.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5742.     }
  5743.     protected override void OnUpdate() {
  5744.         float delta = Time.DeltaTime;
  5745.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5746.             OnUpdate(ref t1, ref t2, ref t3, ref t4, delta);
  5747.         });
  5748.     }
  5749.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5750. }
  5751. public abstract class QuickSystemFilter5ClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5752.     protected override void OnCreate() {
  5753.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5754.     }
  5755.     protected override void OnUpdate() {
  5756.         float delta = Time.DeltaTime;
  5757.         Entities.With(m_MainGroup).ForEach((C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5758.             OnUpdate(c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5759.         });
  5760.     }
  5761.     protected abstract void OnUpdate(C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5762. }
  5763. public abstract class QuickSystemFilter5Delta<F1, F2, F3, F4, F5, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5764.     protected override void OnCreate() {
  5765.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5766.     }
  5767.     protected override void OnUpdate() {
  5768.         float delta = Time.DeltaTime;
  5769.         Entities.With(m_MainGroup).ForEach((ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5770.             OnUpdate(ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5771.         });
  5772.     }
  5773.     protected abstract void OnUpdate(ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5774. }
  5775. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C> : QuickSystemBase where C : class {
  5776.     protected override void OnCreate() {
  5777.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C));
  5778.     }
  5779.     protected override void OnUpdate() {
  5780.         float delta = Time.DeltaTime;
  5781.         Entities.With(m_MainGroup).ForEach((Entity e, C c) => {
  5782.             OnUpdate(e, c, delta);
  5783.         });
  5784.     }
  5785.     protected abstract void OnUpdate(Entity e, C c, float delta);
  5786. }
  5787. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5> : QuickSystemBase {
  5788.     protected override void OnCreate() {
  5789.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5));
  5790.     }
  5791.     protected override void OnUpdate() {
  5792.         float delta = Time.DeltaTime;
  5793.         Entities.With(m_MainGroup).ForEach((Entity e) => {
  5794.             OnUpdate(e, delta);
  5795.         });
  5796.     }
  5797.     protected abstract void OnUpdate(Entity e, float delta);
  5798. }
  5799. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C, T1> : QuickSystemBase where C : class where T1 : struct, IComponentData {
  5800.     protected override void OnCreate() {
  5801.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1));
  5802.     }
  5803.     protected override void OnUpdate() {
  5804.         float delta = Time.DeltaTime;
  5805.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1) => {
  5806.             OnUpdate(e, c, ref t1, delta);
  5807.         });
  5808.     }
  5809.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, float delta);
  5810. }
  5811. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5, T1> : QuickSystemBase where T1 : struct, IComponentData {
  5812.     protected override void OnCreate() {
  5813.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1));
  5814.     }
  5815.     protected override void OnUpdate() {
  5816.         float delta = Time.DeltaTime;
  5817.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1) => {
  5818.             OnUpdate(e, ref t1, delta);
  5819.         });
  5820.     }
  5821.     protected abstract void OnUpdate(Entity e, ref T1 t1, float delta);
  5822. }
  5823. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C, T1, T2> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5824.     protected override void OnCreate() {
  5825.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2));
  5826.     }
  5827.     protected override void OnUpdate() {
  5828.         float delta = Time.DeltaTime;
  5829.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2) => {
  5830.             OnUpdate(e, c, ref t1, ref t2, delta);
  5831.         });
  5832.     }
  5833.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, float delta);
  5834. }
  5835. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5, T1, T2> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5836.     protected override void OnCreate() {
  5837.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2));
  5838.     }
  5839.     protected override void OnUpdate() {
  5840.         float delta = Time.DeltaTime;
  5841.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2) => {
  5842.             OnUpdate(e, ref t1, ref t2, delta);
  5843.         });
  5844.     }
  5845.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, float delta);
  5846. }
  5847. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5848.     protected override void OnCreate() {
  5849.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3));
  5850.     }
  5851.     protected override void OnUpdate() {
  5852.         float delta = Time.DeltaTime;
  5853.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5854.             OnUpdate(e, c, ref t1, ref t2, ref t3, delta);
  5855.         });
  5856.     }
  5857.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5858. }
  5859. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5, T1, T2, T3> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5860.     protected override void OnCreate() {
  5861.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3));
  5862.     }
  5863.     protected override void OnUpdate() {
  5864.         float delta = Time.DeltaTime;
  5865.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5866.             OnUpdate(e, ref t1, ref t2, ref t3, delta);
  5867.         });
  5868.     }
  5869.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  5870. }
  5871. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3, T4> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5872.     protected override void OnCreate() {
  5873.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5874.     }
  5875.     protected override void OnUpdate() {
  5876.         float delta = Time.DeltaTime;
  5877.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5878.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, delta);
  5879.         });
  5880.     }
  5881.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5882. }
  5883. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5, T1, T2, T3, T4> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5884.     protected override void OnCreate() {
  5885.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5886.     }
  5887.     protected override void OnUpdate() {
  5888.         float delta = Time.DeltaTime;
  5889.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5890.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, delta);
  5891.         });
  5892.     }
  5893.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  5894. }
  5895. public abstract class QuickSystemFilter5EntityClassDelta<F1, F2, F3, F4, F5, C, T1, T2, T3, T4, T5> : QuickSystemBase where C : class where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5896.     protected override void OnCreate() {
  5897.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(C), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5898.     }
  5899.     protected override void OnUpdate() {
  5900.         float delta = Time.DeltaTime;
  5901.         Entities.With(m_MainGroup).ForEach((Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5902.             OnUpdate(e, c, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5903.         });
  5904.     }
  5905.     protected abstract void OnUpdate(Entity e, C c, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5906. }
  5907. public abstract class QuickSystemFilter5EntityDelta<F1, F2, F3, F4, F5, T1, T2, T3, T4, T5> : QuickSystemBase where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5908.     protected override void OnCreate() {
  5909.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5910.     }
  5911.     protected override void OnUpdate() {
  5912.         float delta = Time.DeltaTime;
  5913.         Entities.With(m_MainGroup).ForEach((Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5914.             OnUpdate(e, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  5915.         });
  5916.     }
  5917.     protected abstract void OnUpdate(Entity e, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  5918. }
  5919. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S> : QuickSystemBase where S : struct, ISharedComponentData {
  5920.     protected override void OnCreate() {
  5921.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S));
  5922.     }
  5923.     protected override void OnUpdate() {
  5924.         Entities.With(m_MainGroup).ForEach((S s) => {
  5925.             OnUpdate(s);
  5926.         });
  5927.     }
  5928.     protected abstract void OnUpdate(S s);
  5929. }
  5930. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  5931.     protected override void OnCreate() {
  5932.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1));
  5933.     }
  5934.     protected override void OnUpdate() {
  5935.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  5936.             OnUpdate(s, ref t1);
  5937.         });
  5938.     }
  5939.     protected abstract void OnUpdate(S s, ref T1 t1);
  5940. }
  5941. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  5942.     protected override void OnCreate() {
  5943.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2));
  5944.     }
  5945.     protected override void OnUpdate() {
  5946.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  5947.             OnUpdate(s, ref t1, ref t2);
  5948.         });
  5949.     }
  5950.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2);
  5951. }
  5952. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  5953.     protected override void OnCreate() {
  5954.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  5955.     }
  5956.     protected override void OnUpdate() {
  5957.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  5958.             OnUpdate(s, ref t1, ref t2, ref t3);
  5959.         });
  5960.     }
  5961.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3);
  5962. }
  5963. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  5964.     protected override void OnCreate() {
  5965.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  5966.     }
  5967.     protected override void OnUpdate() {
  5968.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  5969.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4);
  5970.         });
  5971.     }
  5972.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  5973. }
  5974. public abstract class QuickSystemFilter5Shared<F1, F2, F3, F4, F5, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  5975.     protected override void OnCreate() {
  5976.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  5977.     }
  5978.     protected override void OnUpdate() {
  5979.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  5980.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5);
  5981.         });
  5982.     }
  5983.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  5984. }
  5985. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S> : QuickSystemBase where S : struct, ISharedComponentData {
  5986.     protected override void OnCreate() {
  5987.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S));
  5988.     }
  5989.     protected override void OnUpdate() {
  5990.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  5991.             OnUpdate(e, s);
  5992.         });
  5993.     }
  5994.     protected abstract void OnUpdate(Entity e, S s);
  5995. }
  5996. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  5997.     protected override void OnCreate() {
  5998.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1));
  5999.     }
  6000.     protected override void OnUpdate() {
  6001.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  6002.             OnUpdate(e, s, ref t1);
  6003.         });
  6004.     }
  6005.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1);
  6006. }
  6007. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6008.     protected override void OnCreate() {
  6009.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2));
  6010.     }
  6011.     protected override void OnUpdate() {
  6012.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  6013.             OnUpdate(e, s, ref t1, ref t2);
  6014.         });
  6015.     }
  6016.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2);
  6017. }
  6018. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6019.     protected override void OnCreate() {
  6020.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  6021.     }
  6022.     protected override void OnUpdate() {
  6023.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6024.             OnUpdate(e, s, ref t1, ref t2, ref t3);
  6025.         });
  6026.     }
  6027.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3);
  6028. }
  6029. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6030.     protected override void OnCreate() {
  6031.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6032.     }
  6033.     protected override void OnUpdate() {
  6034.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6035.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4);
  6036.         });
  6037.     }
  6038.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  6039. }
  6040. public abstract class QuickSystemFilter5EntityShared<F1, F2, F3, F4, F5, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6041.     protected override void OnCreate() {
  6042.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6043.     }
  6044.     protected override void OnUpdate() {
  6045.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6046.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5);
  6047.         });
  6048.     }
  6049.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  6050. }
  6051. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S> : QuickSystemBase where S : struct, ISharedComponentData {
  6052.     protected override void OnCreate() {
  6053.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S));
  6054.     }
  6055.     protected override void OnUpdate() {
  6056.         float delta = Time.DeltaTime;
  6057.         Entities.With(m_MainGroup).ForEach((S s) => {
  6058.             OnUpdate(s, delta);
  6059.         });
  6060.     }
  6061.     protected abstract void OnUpdate(S s, float delta);
  6062. }
  6063. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  6064.     protected override void OnCreate() {
  6065.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1));
  6066.     }
  6067.     protected override void OnUpdate() {
  6068.         float delta = Time.DeltaTime;
  6069.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1) => {
  6070.             OnUpdate(s, ref t1, delta);
  6071.         });
  6072.     }
  6073.     protected abstract void OnUpdate(S s, ref T1 t1, float delta);
  6074. }
  6075. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6076.     protected override void OnCreate() {
  6077.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2));
  6078.     }
  6079.     protected override void OnUpdate() {
  6080.         float delta = Time.DeltaTime;
  6081.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2) => {
  6082.             OnUpdate(s, ref t1, ref t2, delta);
  6083.         });
  6084.     }
  6085.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, float delta);
  6086. }
  6087. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6088.     protected override void OnCreate() {
  6089.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  6090.     }
  6091.     protected override void OnUpdate() {
  6092.         float delta = Time.DeltaTime;
  6093.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6094.             OnUpdate(s, ref t1, ref t2, ref t3, delta);
  6095.         });
  6096.     }
  6097.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  6098. }
  6099. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6100.     protected override void OnCreate() {
  6101.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6102.     }
  6103.     protected override void OnUpdate() {
  6104.         float delta = Time.DeltaTime;
  6105.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6106.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, delta);
  6107.         });
  6108.     }
  6109.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  6110. }
  6111. public abstract class QuickSystemFilter5SharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6112.     protected override void OnCreate() {
  6113.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6114.     }
  6115.     protected override void OnUpdate() {
  6116.         float delta = Time.DeltaTime;
  6117.         Entities.With(m_MainGroup).ForEach((S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6118.             OnUpdate(s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  6119.         });
  6120.     }
  6121.     protected abstract void OnUpdate(S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  6122. }
  6123. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S> : QuickSystemBase where S : struct, ISharedComponentData {
  6124.     protected override void OnCreate() {
  6125.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S));
  6126.     }
  6127.     protected override void OnUpdate() {
  6128.         float delta = Time.DeltaTime;
  6129.         Entities.With(m_MainGroup).ForEach((Entity e, S s) => {
  6130.             OnUpdate(e, s, delta);
  6131.         });
  6132.     }
  6133.     protected abstract void OnUpdate(Entity e, S s, float delta);
  6134. }
  6135. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S, T1> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData {
  6136.     protected override void OnCreate() {
  6137.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1));
  6138.     }
  6139.     protected override void OnUpdate() {
  6140.         float delta = Time.DeltaTime;
  6141.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1) => {
  6142.             OnUpdate(e, s, ref t1, delta);
  6143.         });
  6144.     }
  6145.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, float delta);
  6146. }
  6147. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S, T1, T2> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6148.     protected override void OnCreate() {
  6149.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2));
  6150.     }
  6151.     protected override void OnUpdate() {
  6152.         float delta = Time.DeltaTime;
  6153.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2) => {
  6154.             OnUpdate(e, s, ref t1, ref t2, delta);
  6155.         });
  6156.     }
  6157.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, float delta);
  6158. }
  6159. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6160.     protected override void OnCreate() {
  6161.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3));
  6162.     }
  6163.     protected override void OnUpdate() {
  6164.         float delta = Time.DeltaTime;
  6165.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6166.             OnUpdate(e, s, ref t1, ref t2, ref t3, delta);
  6167.         });
  6168.     }
  6169.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  6170. }
  6171. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3, T4> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6172.     protected override void OnCreate() {
  6173.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6174.     }
  6175.     protected override void OnUpdate() {
  6176.         float delta = Time.DeltaTime;
  6177.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6178.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, delta);
  6179.         });
  6180.     }
  6181.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  6182. }
  6183. public abstract class QuickSystemFilter5EntitySharedDelta<F1, F2, F3, F4, F5, S, T1, T2, T3, T4, T5> : QuickSystemBase where S : struct, ISharedComponentData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6184.     protected override void OnCreate() {
  6185.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(S), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6186.     }
  6187.     protected override void OnUpdate() {
  6188.         float delta = Time.DeltaTime;
  6189.         Entities.With(m_MainGroup).ForEach((Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6190.             OnUpdate(e, s, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  6191.         });
  6192.     }
  6193.     protected abstract void OnUpdate(Entity e, S s, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  6194. }
  6195. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D> : QuickSystemBase where D : struct, IBufferElementData {
  6196.     protected override void OnCreate() {
  6197.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D));
  6198.     }
  6199.     protected override void OnUpdate() {
  6200.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  6201.             OnUpdate(d);
  6202.         });
  6203.     }
  6204.     protected abstract void OnUpdate(DynamicBuffer<D> d);
  6205. }
  6206. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  6207.     protected override void OnCreate() {
  6208.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1));
  6209.     }
  6210.     protected override void OnUpdate() {
  6211.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  6212.             OnUpdate(d, ref t1);
  6213.         });
  6214.     }
  6215.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1);
  6216. }
  6217. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6218.     protected override void OnCreate() {
  6219.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2));
  6220.     }
  6221.     protected override void OnUpdate() {
  6222.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  6223.             OnUpdate(d, ref t1, ref t2);
  6224.         });
  6225.     }
  6226.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  6227. }
  6228. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6229.     protected override void OnCreate() {
  6230.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  6231.     }
  6232.     protected override void OnUpdate() {
  6233.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6234.             OnUpdate(d, ref t1, ref t2, ref t3);
  6235.         });
  6236.     }
  6237.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  6238. }
  6239. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6240.     protected override void OnCreate() {
  6241.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6242.     }
  6243.     protected override void OnUpdate() {
  6244.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6245.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4);
  6246.         });
  6247.     }
  6248.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  6249. }
  6250. public abstract class QuickSystemFilter5Buffer<F1, F2, F3, F4, F5, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6251.     protected override void OnCreate() {
  6252.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6253.     }
  6254.     protected override void OnUpdate() {
  6255.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6256.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5);
  6257.         });
  6258.     }
  6259.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  6260. }
  6261. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D> : QuickSystemBase where D : struct, IBufferElementData {
  6262.     protected override void OnCreate() {
  6263.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D));
  6264.     }
  6265.     protected override void OnUpdate() {
  6266.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  6267.             OnUpdate(e, d);
  6268.         });
  6269.     }
  6270.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d);
  6271. }
  6272. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  6273.     protected override void OnCreate() {
  6274.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1));
  6275.     }
  6276.     protected override void OnUpdate() {
  6277.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  6278.             OnUpdate(e, d, ref t1);
  6279.         });
  6280.     }
  6281.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1);
  6282. }
  6283. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6284.     protected override void OnCreate() {
  6285.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2));
  6286.     }
  6287.     protected override void OnUpdate() {
  6288.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  6289.             OnUpdate(e, d, ref t1, ref t2);
  6290.         });
  6291.     }
  6292.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2);
  6293. }
  6294. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6295.     protected override void OnCreate() {
  6296.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  6297.     }
  6298.     protected override void OnUpdate() {
  6299.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6300.             OnUpdate(e, d, ref t1, ref t2, ref t3);
  6301.         });
  6302.     }
  6303.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3);
  6304. }
  6305. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6306.     protected override void OnCreate() {
  6307.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6308.     }
  6309.     protected override void OnUpdate() {
  6310.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6311.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4);
  6312.         });
  6313.     }
  6314.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4);
  6315. }
  6316. public abstract class QuickSystemFilter5EntityBuffer<F1, F2, F3, F4, F5, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6317.     protected override void OnCreate() {
  6318.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6319.     }
  6320.     protected override void OnUpdate() {
  6321.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6322.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5);
  6323.         });
  6324.     }
  6325.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5);
  6326. }
  6327. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D> : QuickSystemBase where D : struct, IBufferElementData {
  6328.     protected override void OnCreate() {
  6329.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D));
  6330.     }
  6331.     protected override void OnUpdate() {
  6332.         float delta = Time.DeltaTime;
  6333.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d) => {
  6334.             OnUpdate(d, delta);
  6335.         });
  6336.     }
  6337.     protected abstract void OnUpdate(DynamicBuffer<D> d, float delta);
  6338. }
  6339. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  6340.     protected override void OnCreate() {
  6341.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1));
  6342.     }
  6343.     protected override void OnUpdate() {
  6344.         float delta = Time.DeltaTime;
  6345.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1) => {
  6346.             OnUpdate(d, ref t1, delta);
  6347.         });
  6348.     }
  6349.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, float delta);
  6350. }
  6351. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6352.     protected override void OnCreate() {
  6353.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2));
  6354.     }
  6355.     protected override void OnUpdate() {
  6356.         float delta = Time.DeltaTime;
  6357.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  6358.             OnUpdate(d, ref t1, ref t2, delta);
  6359.         });
  6360.     }
  6361.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  6362. }
  6363. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6364.     protected override void OnCreate() {
  6365.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  6366.     }
  6367.     protected override void OnUpdate() {
  6368.         float delta = Time.DeltaTime;
  6369.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6370.             OnUpdate(d, ref t1, ref t2, ref t3, delta);
  6371.         });
  6372.     }
  6373.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  6374. }
  6375. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6376.     protected override void OnCreate() {
  6377.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6378.     }
  6379.     protected override void OnUpdate() {
  6380.         float delta = Time.DeltaTime;
  6381.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6382.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, delta);
  6383.         });
  6384.     }
  6385.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  6386. }
  6387. public abstract class QuickSystemFilter5BufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6388.     protected override void OnCreate() {
  6389.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6390.     }
  6391.     protected override void OnUpdate() {
  6392.         float delta = Time.DeltaTime;
  6393.         Entities.With(m_MainGroup).ForEach((DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6394.             OnUpdate(d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  6395.         });
  6396.     }
  6397.     protected abstract void OnUpdate(DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  6398. }
  6399. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D> : QuickSystemBase where D : struct, IBufferElementData {
  6400.     protected override void OnCreate() {
  6401.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D));
  6402.     }
  6403.     protected override void OnUpdate() {
  6404.         float delta = Time.DeltaTime;
  6405.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d) => {
  6406.             OnUpdate(e, d, delta);
  6407.         });
  6408.     }
  6409.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, float delta);
  6410. }
  6411. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D, T1> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData {
  6412.     protected override void OnCreate() {
  6413.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1));
  6414.     }
  6415.     protected override void OnUpdate() {
  6416.         float delta = Time.DeltaTime;
  6417.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1) => {
  6418.             OnUpdate(e, d, ref t1, delta);
  6419.         });
  6420.     }
  6421.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, float delta);
  6422. }
  6423. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D, T1, T2> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData {
  6424.     protected override void OnCreate() {
  6425.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2));
  6426.     }
  6427.     protected override void OnUpdate() {
  6428.         float delta = Time.DeltaTime;
  6429.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2) => {
  6430.             OnUpdate(e, d, ref t1, ref t2, delta);
  6431.         });
  6432.     }
  6433.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, float delta);
  6434. }
  6435. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData {
  6436.     protected override void OnCreate() {
  6437.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3));
  6438.     }
  6439.     protected override void OnUpdate() {
  6440.         float delta = Time.DeltaTime;
  6441.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3) => {
  6442.             OnUpdate(e, d, ref t1, ref t2, ref t3, delta);
  6443.         });
  6444.     }
  6445.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, float delta);
  6446. }
  6447. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3, T4> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData {
  6448.     protected override void OnCreate() {
  6449.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4));
  6450.     }
  6451.     protected override void OnUpdate() {
  6452.         float delta = Time.DeltaTime;
  6453.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4) => {
  6454.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, delta);
  6455.         });
  6456.     }
  6457.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, float delta);
  6458. }
  6459. public abstract class QuickSystemFilter5EntityBufferDelta<F1, F2, F3, F4, F5, D, T1, T2, T3, T4, T5> : QuickSystemBase where D : struct, IBufferElementData where T1 : struct, IComponentData where T2 : struct, IComponentData where T3 : struct, IComponentData where T4 : struct, IComponentData where T5 : struct, IComponentData {
  6460.     protected override void OnCreate() {
  6461.         m_MainGroup = GetEntityQuery(typeof(F1), typeof(F2), typeof(F3), typeof(F4), typeof(F5), typeof(D), typeof(T1), typeof(T2), typeof(T3), typeof(T4), typeof(T5));
  6462.     }
  6463.     protected override void OnUpdate() {
  6464.         float delta = Time.DeltaTime;
  6465.         Entities.With(m_MainGroup).ForEach((Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5) => {
  6466.             OnUpdate(e, d, ref t1, ref t2, ref t3, ref t4, ref t5, delta);
  6467.         });
  6468.     }
  6469.     protected abstract void OnUpdate(Entity e, DynamicBuffer<D> d, ref T1 t1, ref T2 t2, ref T3 t3, ref T4 t4, ref T5 t5, float delta);
  6470. }
  6471.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement