internal void AddReaderWriter(ComponentType componentType)
 {
     if (CalculateReaderWriterDependency.Add(componentType, ref m_JobDependencyForReadingSystems, ref m_JobDependencyForWritingSystems))
     {
         CompleteDependencyInternal();
     }
 }
示例#2
0
        internal void AddReaderWriter(ComponentType componentType)
        {
            if (CalculateReaderWriterDependency.Add(componentType, m_JobDependencyForReadingManagers, m_JobDependencyForWritingManagers))
            {
                m_JobDependencyForReadingManagersPtr = (int *)m_JobDependencyForReadingManagers.GetUnsafePtr();
                m_JobDependencyForWritingManagersPtr = (int *)m_JobDependencyForWritingManagers.GetUnsafePtr();

                m_JobDependencyForReadingManagersLength = m_JobDependencyForReadingManagers.Length;
                m_JobDependencyForWritingManagersLength = m_JobDependencyForWritingManagers.Length;
                CompleteDependencyInternal();
            }
        }
示例#3
0
        internal bool AddReaderWritersToLists(ref UnsafeIntList reading, ref UnsafeIntList writing)
        {
            bool anyAdded = false;

            for (int i = 0; i < m_QueryData->ReaderTypesCount; ++i)
            {
                anyAdded |= CalculateReaderWriterDependency.AddReaderTypeIndex(m_QueryData->ReaderTypes[i], ref reading, ref writing);
            }

            for (int i = 0; i < m_QueryData->WriterTypesCount; ++i)
            {
                anyAdded |= CalculateReaderWriterDependency.AddWriterTypeIndex(m_QueryData->WriterTypes[i], ref reading, ref writing);
            }
            return(anyAdded);
        }