void Core::RunProcessors()
{
- if(mProcessors.Count() != 0)
- {
- DALI_LOG_RELEASE_INFO("Start RunProcessors\n");
-
- // Copy processor pointers to prevent changes to vector affecting loop iterator.
- Dali::Vector<Integration::Processor*> processors(mProcessors);
+ // Copy processor pointers to prevent changes to vector affecting loop iterator.
+ Dali::Vector<Integration::Processor*> processors(mProcessors);
- // To prevent accessing processor unregistered during the loop
- mProcessorUnregistered = false;
+ // To prevent accessing processor unregistered during the loop
+ mProcessorUnregistered = false;
- for(auto processor : processors)
+ for(auto processor : processors)
+ {
+ if(processor)
{
- if(processor)
+ if(!mProcessorUnregistered)
{
- if(!mProcessorUnregistered)
+ processor->Process(false);
+ }
+ else
+ {
+ // Run processor if the processor is still in the list.
+ // It may be removed during the loop.
+ auto iter = std::find(mProcessors.Begin(), mProcessors.End(), processor);
+ if(iter != mProcessors.End())
{
processor->Process(false);
}
- else
- {
- // Run processor if the processor is still in the list.
- // It may be removed during the loop.
- auto iter = std::find(mProcessors.Begin(), mProcessors.End(), processor);
- if(iter != mProcessors.End())
- {
- processor->Process(false);
- }
- }
}
}
- DALI_LOG_RELEASE_INFO("End RunProcessors\n");
}
}
void Core::RunPostProcessors()
{
- if(mPostProcessors.Count() != 0)
- {
- DALI_LOG_RELEASE_INFO("Start RunPostProcessors\n");
-
- // Copy processor pointers to prevent changes to vector affecting loop iterator.
- Dali::Vector<Integration::Processor*> processors(mPostProcessors);
+ // Copy processor pointers to prevent changes to vector affecting loop iterator.
+ Dali::Vector<Integration::Processor*> processors(mPostProcessors);
- // To prevent accessing processor unregistered during the loop
- mPostProcessorUnregistered = false;
+ // To prevent accessing processor unregistered during the loop
+ mPostProcessorUnregistered = false;
- for(auto processor : processors)
+ for(auto processor : processors)
+ {
+ if(processor)
{
- if(processor)
+ if(!mPostProcessorUnregistered)
{
- if(!mPostProcessorUnregistered)
+ processor->Process(true);
+ }
+ else
+ {
+ // Run processor if the processor is still in the list.
+ // It may be removed during the loop.
+ auto iter = std::find(mPostProcessors.Begin(), mPostProcessors.End(), processor);
+ if(iter != mPostProcessors.End())
{
processor->Process(true);
}
- else
- {
- // Run processor if the processor is still in the list.
- // It may be removed during the loop.
- auto iter = std::find(mPostProcessors.Begin(), mPostProcessors.End(), processor);
- if(iter != mPostProcessors.End())
- {
- processor->Process(true);
- }
- }
}
}
- DALI_LOG_RELEASE_INFO("End RunPostProcessors\n");
}
}
// INTERNAL INCLUDES
#include <dali/devel-api/common/owner-container.h>
#include <dali/devel-api/threading/mutex.h>
-#include <dali/integration-api/debug.h>
#include <dali/internal/common/message.h>
#include <dali/internal/event/common/complete-notification-interface.h>
#include <dali/internal/event/common/property-notification-impl.h>
MessageContainer::Iterator iter = mImpl->eventMessageQueue.Begin();
const MessageContainer::Iterator end = mImpl->eventMessageQueue.End();
- if(iter != end)
+ for(; iter != end; ++iter)
{
- DALI_LOG_RELEASE_INFO("Start ProcessMessages\n");
- for(; iter != end; ++iter)
- {
- (*iter)->Process(0u /*ignored*/);
- }
- DALI_LOG_RELEASE_INFO("End ProcessMessages\n");
+ (*iter)->Process(0u /*ignored*/);
}
// release the processed messages from event side queue
mImpl->eventMessageQueue.Clear();