//// AssignmentDynamcFactory.cpp// assignment-client/src///// Created by Seth Alves on 2015-6-19// Copyright 2015 High Fidelity, Inc.//// Distributed under the Apache License, Version 2.0.// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html// #include "AssignmentDynamicFactory.h" EntityDynamicPointer assignmentDynamicFactory(EntityDynamicType type, const QUuid& id, EntityItemPointer ownerEntity) { return std::make_shared<AssignmentDynamic>(type, id, ownerEntity);} EntityDynamicPointer AssignmentDynamicFactory::factory(EntityDynamicType type, const QUuid& id, EntityItemPointer ownerEntity, QVariantMap arguments) { EntityDynamicPointer dynamic = assignmentDynamicFactory(type, id, ownerEntity); if (dynamic) { bool ok = dynamic->updateArguments(arguments); if (ok) { return dynamic; } } return nullptr;} EntityDynamicPointer AssignmentDynamicFactory::factoryBA(EntityItemPointer ownerEntity, QByteArray data) { QDataStream serializedDynamicDataStream(data); EntityDynamicType type; QUuid id; serializedDynamicDataStream >> type; serializedDynamicDataStream >> id; EntityDynamicPointer dynamic = assignmentDynamicFactory(type, id, ownerEntity); if (dynamic) { dynamic->deserialize(data); } return dynamic;}
//
// AssignmentDynamcFactory.cpp
// assignment-client/src/
//
// Created by Seth Alves on 2015-6-19
// Copyright 2015 High Fidelity, Inc.
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
#include "AssignmentDynamicFactory.h"
EntityDynamicPointer assignmentDynamicFactory(EntityDynamicType type, const QUuid& id, EntityItemPointer ownerEntity) {
return std::make_shared<AssignmentDynamic>(type, id, ownerEntity);
}
EntityDynamicPointer AssignmentDynamicFactory::factory(EntityDynamicType type,
const QUuid& id,
EntityItemPointer ownerEntity,
QVariantMap arguments) {
EntityDynamicPointer dynamic = assignmentDynamicFactory(type, id, ownerEntity);
if (dynamic) {
bool ok = dynamic->updateArguments(arguments);
if (ok) {
return dynamic;
}
}
return nullptr;
}
EntityDynamicPointer AssignmentDynamicFactory::factoryBA(EntityItemPointer ownerEntity, QByteArray data) {
QDataStream serializedDynamicDataStream(data);
EntityDynamicType type;
QUuid id;
serializedDynamicDataStream >> type;
serializedDynamicDataStream >> id;
EntityDynamicPointer dynamic = assignmentDynamicFactory(type, id, ownerEntity);
if (dynamic) {
dynamic->deserialize(data);
}
return dynamic;
}