MCPcopy Create free account
hub / github.com/MITK/MITK / Read

Method Read

Modules/SceneSerialization/autoload/IO/mitkSceneJsonFileReader.cpp:37–63  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

35 }
36
37 DataStorage::SetOfObjects::Pointer SceneJsonFileReader::Read(DataStorage &ds)
38 {
39 DataStorage::SetOfObjects::ConstPointer oldNodes = ds.GetAll();
40 SceneJsonReader::Pointer reader = SceneJsonReader::New();
41 reader->LoadScene(this->GetLocalFileName(), &ds, false);
42 DataStorage::SetOfObjects::ConstPointer newNodes = ds.GetAll();
43
44 // Compute the difference: nodes present after load but not before.
45 DataStorage::SetOfObjects::Pointer result = DataStorage::SetOfObjects::New();
46
47 unsigned int index = 0;
48 for (DataStorage::SetOfObjects::ConstIterator iter = newNodes->Begin(), iterEnd = newNodes->End(); iter != iterEnd;
49 ++iter)
50 {
51 if (!oldNodes->empty())
52 {
53 if (std::find(oldNodes->begin(), oldNodes->end(), iter.Value()) == oldNodes->end())
54 result->InsertElement(index++, iter.Value());
55 }
56 else
57 {
58 result->InsertElement(index++, iter.Value());
59 }
60 }
61
62 return result;
63 }
64
65 std::vector<BaseData::Pointer> SceneJsonFileReader::DoRead()
66 {

Callers 1

DoReadMethod · 0.95

Calls 10

GetAllMethod · 0.80
GetLocalFileNameMethod · 0.80
ValueMethod · 0.80
NewFunction · 0.50
LoadSceneMethod · 0.45
BeginMethod · 0.45
EndMethod · 0.45
emptyMethod · 0.45
beginMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected