/
redgpu
/
ezEngine
Обзор
Документация
Войти
/
redgpu
/
ezEngine
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
dev
Code/Engine/Foundation/DataProcessing/Stream/ProcessingStreamProcessor.h
40 строк
2 KB
Ingrater
clang-tidy modernize use default member init (#950)
19 май 2023, 13:25
Не верифицирован
19 май 2023, 13:25
c714416
Код
Авторство
О чём код?
#pragma once #include <Foundation/Basics.h> #include <Foundation/Reflection/Reflection.h> class ezProcessingStreamGroup; /// \brief Base class for all stream processor implementations. class EZ_FOUNDATION_DLL ezProcessingStreamProcessor : public ezReflectedClass { EZ_ADD_DYNAMIC_REFLECTION(ezProcessingStreamProcessor, ezReflectedClass); public: /// \brief Base constructor ezProcessingStreamProcessor(); /// \brief Base destructor. virtual ~ezProcessingStreamProcessor(); /// Used for sorting processors, to ensure a certain order. Lower priority == executed first. float m_fPriority = 0.0f; protected: friend class ezProcessingStreamGroup; /// \brief Internal method which needs to be implemented, gets the concrete stream bindings. /// This is called every time the streams are resized. Implementations should check that their required streams exist and are of the correct data /// types. virtual ezResult UpdateStreamBindings() = 0; /// \brief This method needs to be implemented in order to initialize new elements to specific values. virtual void InitializeElements(ezUInt64 uiStartIndex, ezUInt64 uiNumElements) = 0; /// \brief The actual method which processes the data, will be called with the number of elements to process. virtual void Process(ezUInt64 uiNumElements) = 0; /// \brief Back pointer to the stream group - will be set to the owner stream group when adding the stream processor to the group. /// Can be used to get stream pointers in UpdateStreamBindings(); ezProcessingStreamGroup* m_pStreamGroup = nullptr; };