From c7cb92f43f97ef5558eee0d7be6f18192134f3ec Mon Sep 17 00:00:00 2001 From: Andreas Stöckel Date: Sun, 12 Apr 2015 02:50:18 +0200 Subject: Replace NodeVector by ManagedVector where NodeVector functionality is not needed. Reduces calls to "Manager.registerEvent" to <10% of original value --- src/core/model/Document.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/core/model/Document.cpp') diff --git a/src/core/model/Document.cpp b/src/core/model/Document.cpp index 894330b..411a755 100644 --- a/src/core/model/Document.cpp +++ b/src/core/model/Document.cpp @@ -93,7 +93,8 @@ bool DocumentEntity::doValidate(Logger &logger) const * gather all fields of superclasses as well, that have not been * overridden in the subclasses. */ - NodeVector fieldDescs = descriptor->getFieldDescriptors(); + ManagedVector fieldDescs = + descriptor->getFieldDescriptors(); // iterate over every field for (unsigned int f = 0; f < fields.size(); f++) { // we have a special check for primitive fields. @@ -137,9 +138,9 @@ bool DocumentEntity::doValidate(Logger &logger) const std::unordered_set childClasses; { - NodeVector tmp = + ManagedVector tmp = fieldDescs[f]->getChildrenWithSubclasses(); - for (auto s : tmp) { + for (const auto &s : tmp) { childClasses.insert(s.get()); } } @@ -999,4 +1000,4 @@ const Rtti AnnotationEntity = .parent(&Node) .composedOf({&StructuredEntity, &DocumentPrimitive, &Anchor}); } -} \ No newline at end of file +} -- cgit v1.2.3