Salome HOME
Merge branch 'Dev_0.6.1' of newgeom:newgeom into Dev_0.6.1
[modules/shaper.git] / src / PartSetPlugin / PartSetPlugin_Part.cpp
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        PartSetPlugin_Part.cxx
4 // Created:     27 Mar 2014
5 // Author:      Mikhail PONIKAROV
6
7 #include "PartSetPlugin_Part.h"
8 #include "ModelAPI_Session.h"
9 #include "ModelAPI_Document.h"
10 #include "ModelAPI_Data.h"
11 #include "ModelAPI_AttributeDocRef.h"
12 #include <ModelAPI_ResultPart.h>
13
14 using namespace std;
15
16 PartSetPlugin_Part::PartSetPlugin_Part()
17 {
18 }
19
20 void PartSetPlugin_Part::initAttributes()
21 {  // all is in part result
22 }
23
24 void PartSetPlugin_Part::execute()
25 {
26   ResultPartPtr aResult = std::dynamic_pointer_cast<ModelAPI_ResultPart>(firstResult());
27   if (!aResult) {
28     aResult = document()->createPart(data());
29     setResult(aResult);
30     aResult->activate();
31   }
32 }
33
34 std::shared_ptr<ModelAPI_Document> PartSetPlugin_Part::documentToAdd()
35 {
36   return ModelAPI_Session::get()->moduleDocument();
37 }