MCPcopy Create free account
hub / github.com/Kitware/VTK / DeepCopy

Method DeepCopy

Common/DataModel/vtkReebGraph.cxx:648–722  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

646
647//------------------------------------------------------------------------------
648void vtkReebGraph::Implementation::DeepCopy(Implementation* srcG)
649{
650 MinimumScalarValue = srcG->MinimumScalarValue;
651 MaximumScalarValue = srcG->MaximumScalarValue;
652
653 inputMesh = srcG->inputMesh;
654 inputScalarField = srcG->inputScalarField;
655
656 ArcNumber = srcG->ArcNumber;
657 NodeNumber = srcG->NodeNumber;
658 LoopNumber = srcG->LoopNumber;
659
660 ScalarField = srcG->ScalarField;
661
662 VertexStream = srcG->VertexStream;
663
664 if (srcG->MainArcTable.Buffer)
665 {
666 MainArcTable.Size = srcG->MainArcTable.Size;
667 MainArcTable.Number = srcG->MainArcTable.Number;
668 free(this->MainArcTable.Buffer);
669 this->MainArcTable.Buffer = (vtkReebArc*)malloc(sizeof(vtkReebArc) * srcG->MainArcTable.Size);
670
671 memcpy(this->MainArcTable.Buffer, srcG->MainArcTable.Buffer,
672 sizeof(vtkReebArc) * srcG->MainArcTable.Size);
673 }
674
675 if (srcG->MainNodeTable.Buffer)
676 {
677 MainNodeTable.Size = srcG->MainNodeTable.Size;
678 MainNodeTable.Number = srcG->MainNodeTable.Number;
679 // free existing buffer
680 free(this->MainNodeTable.Buffer);
681 this->MainNodeTable.Buffer =
682 (vtkReebNode*)malloc(sizeof(vtkReebNode) * srcG->MainNodeTable.Size);
683
684 memcpy(this->MainNodeTable.Buffer, srcG->MainNodeTable.Buffer,
685 sizeof(vtkReebNode) * srcG->MainNodeTable.Size);
686 }
687
688 if (srcG->MainLabelTable.Buffer)
689 {
690 MainLabelTable.Size = srcG->MainLabelTable.Size;
691 MainLabelTable.Number = srcG->MainLabelTable.Number;
692 free(this->MainLabelTable.Buffer);
693
694 this->MainLabelTable.Buffer =
695 (vtkReebLabel*)malloc(sizeof(vtkReebLabel) * srcG->MainLabelTable.Size);
696 memcpy(this->MainLabelTable.Buffer, srcG->MainLabelTable.Buffer,
697 sizeof(vtkReebLabel) * srcG->MainLabelTable.Size);
698 }
699
700 if (srcG->ArcLoopTable)
701 {
702 this->ArcLoopTable = (vtkIdType*)malloc(sizeof(vtkIdType) * srcG->LoopNumber);
703 memcpy(this->ArcLoopTable, srcG->ArcLoopTable, sizeof(vtkIdType) * srcG->LoopNumber);
704 }
705

Callers

nothing calls this directly

Calls 1

DeepCopyFunction · 0.70

Tested by

no test coverage detected