NAP
deserializeresult.h
1 /* This Source Code Form is subject to the terms of the Mozilla Public
2  * License, v. 2.0. If a copy of the MPL was not distributed with this
3  * file, You can obtain one at https://mozilla.org/MPL/2.0/. */
4 
5 #pragma once
6 
7 // Local Includes
8 #include "rtti.h"
9 #include "rttiutilities.h"
10 #include "path.h"
11 #include "unresolvedpointer.h"
12 
13 // External Includes
14 #include <string>
15 #include <utility/dllexport.h>
16 
17 namespace nap
18 {
19  namespace rtti
20  {
21  // Forward Declares
22  class Object;
23 
28  struct NAPAPI FileLink
29  {
30  std::string mTargetFile; // The path to the file that's being to
31  };
32 
33  using OwnedObjectList = std::vector<std::unique_ptr<rtti::Object>>;
34  using ObservedObjectList = std::vector<rtti::Object*>;
35 
40  struct NAPAPI DeserializeResult
41  {
42  DeserializeResult() = default;
43  DeserializeResult(const DeserializeResult&) = delete;
44  DeserializeResult& operator=(const DeserializeResult&) = delete;
45 
46  OwnedObjectList mReadObjects; // The list of objects that was read. Note that this struct owns these objects.
47  std::vector<FileLink> mFileLinks; // The list of FileLinks that was read
48  UnresolvedPointerList mUnresolvedPointers; // The list of UnresolvedPointers that was read
49  };
50 
51  } //< End Namespace nap
52 
53 }
nap::rtti::ObservedObjectList
std::vector< rtti::Object * > ObservedObjectList
Definition: deserializeresult.h:34
nap::rtti::DeserializeResult::mUnresolvedPointers
UnresolvedPointerList mUnresolvedPointers
Definition: deserializeresult.h:48
nap::rtti::DeserializeResult
Definition: deserializeresult.h:40
nap
Definition: templateapp.h:17
nap::rtti::DeserializeResult::mFileLinks
std::vector< FileLink > mFileLinks
Definition: deserializeresult.h:47
nap::rtti::DeserializeResult::mReadObjects
OwnedObjectList mReadObjects
Definition: deserializeresult.h:46
nap::rtti::UnresolvedPointerList
std::vector< UnresolvedPointer > UnresolvedPointerList
Definition: unresolvedpointer.h:51
nap::rtti::OwnedObjectList
std::vector< std::unique_ptr< rtti::Object > > OwnedObjectList
Definition: deserializeresult.h:33