BaseClass class and root of the type system. More...

#include <BaseClass.h>

Public Member Functions

 BaseClass ()
 Construction. More...
 
virtual PyObjectgetPyObject (void)
 This method returns the Python wrapper for a C++ object. More...
 
virtual Type getTypeId (void) const
 
bool isDerivedFrom (const Type type) const
 
virtual void setPyObject (PyObject *)
 
virtual ~BaseClass ()
 Destruction. More...
 

Static Public Member Functions

static void * create (void)
 
static Type getClassTypeId (void)
 
static void init (void)
 

Static Protected Member Functions

static void initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=nullptr)
 

Detailed Description

BaseClass class and root of the type system.

Constructor & Destructor Documentation

◆ BaseClass()

BaseClass::BaseClass ( )

Construction.

A constructor.

A more elaborate description of the constructor.

◆ ~BaseClass()

BaseClass::~BaseClass ( )
virtual

Destruction.

A destructor.

A more elaborate description of the destructor.

Member Function Documentation

◆ create()

static void* Base::BaseClass::create ( void  )
static

◆ getClassTypeId()

Type BaseClass::getClassTypeId ( void  )
static

Referenced by DrawingGui::TaskProjection::accept(), StdCmdImport::activated(), StdCmdEdit::activated(), StdCmdToggleNavigation::activated(), Gui::Application::activateWorkbench(), InspectionGui::ViewProviderProxyObject::addFlag(), SketcherGui::DrawSketchHandler::applyCursor(), SpreadsheetGui::ViewProviderSheet::beforeDelete(), Gui::Document::cloneView(), Part::FaceMaker::ConstructFromType(), Gui::Document::createView(), Gui::WorkbenchManager::createWorkbench(), SketcherGui::ViewProviderSketch::draw(), SketcherGui::ViewProviderSketch::drawConstraintIcons(), App::FunctionExpression::evalAggregate(), App::FunctionExpression::evaluate(), MeshGui::ViewProviderMesh::faceInfoCallback(), Gui::Document::getActiveView(), Gui::ViewProvider::getBoundingBox(), Gui::Document::getEditingViewOfViewProvider(), Part::TopoShape::getFacesFromSubelement(), Part::TopoShape::getLinesFromSubelement(), Gui::ViewProviderTextDocument::getMDIView(), SketcherGui::ViewProviderSketch::getScaleFactor(), AttacherGui::getUIStrings(), Gui::UserNavigationStyle::getUserFriendlyNames(), MeshGui::MeshSelection::getViewer(), Gui::Document::getViewOfNode(), StdViewScreenShot::isActive(), StdCmdToggleNavigation::isActive(), StdCmdMeasureDistance::isActive(), StdCmdTextureMapping::isActive(), Gui::View3DInventorPy::listNavigationTypes(), Gui::Dialog::DlgSettingsNavigation::loadSettings(), Gui::TreeWidget::mouseDoubleClickEvent(), Gui::TreeWidget::onActivateDocument(), Gui::View3DInventor::OnChange(), Gui::GraphicsView3D::OnChange(), Gui::Application::onLastWindowClosed(), Attacher::AttachEnginePy::PyInit(), Gui::Application::reopen(), Gui::Application::sActiveView(), Gui::Document::Save(), SketcherGui::ViewProviderSketch::seekConstraintPosition(), Gui::Document::setActiveView(), SketcherGui::DrawSketchHandler::setCursor(), Gui::View3DInventorViewer::setNavigationType(), Gui::Application::setupContextMenu(), AttacherGui::AttacherGuiPy::sGetModeStrings(), Gui::Application::slotNewDocument(), SketcherGui::DrawSketchHandler::unsetCursor(), SketcherGui::ViewProviderSketch::updateData(), and RaytracingGui::Module::~Module().

◆ getPyObject()

PyObject * BaseClass::getPyObject ( void  )
virtual

This method returns the Python wrapper for a C++ object.

It's in the responsibility of the programmer to do the correct reference counting. Basically there are two ways how to implement that: Either always return a new Python object then reference counting is not a matter or return always the same Python object then the reference counter must be incremented by one. However, it's absolutely forbidden to return always the same Python object without incrementing the reference counter.

The default implementation returns 'None'.

Reimplemented in Part::GeomArcOfConic, Part::GeomConic, Part::Geom2dArcOfConic, Part::Geom2dConic, Part::GeometryExtension, App::PropertyXLinkList, App::PropertyXLinkSubList, App::PropertyXLinkSub, App::PropertyXLink, App::PropertyPersistentObject, App::PropertyMaterialList, App::PropertyLinkSubList, App::PropertyColorList, App::PropertyLinkSub, App::PropertyBoolList, App::PropertyStringList, App::PropertyLinkList, App::PropertyLink, App::PropertyFloatList, App::Document, App::PropertyPlacementList, App::DocumentObject, App::PropertyPlacement, App::PropertyIntegerList, Base::FileException, App::PropertyVectorList, Spreadsheet::PropertySheet, App::PropertyExpressionEngine, App::Part, TechDraw::DrawViewDimension, Sketcher::Constraint, TechDraw::DrawViewPart, PartDesign::Body, TechDraw::DrawPage, Sketcher::PropertyConstraintList, TechDraw::DrawProjGroup, TechDraw::DrawView, TechDraw::DrawLeaderLine, Sketcher::ExternalGeometryExtension, TechDraw::DrawProjGroupItem, App::DocumentObjectGroup, Part::GeometryDefaultExtension< T >, PartDesignGui::ViewProvider, App::PropertyVector, Sketcher::SketchGeometryExtension, TechDraw::DrawViewSymbol, Gui::LinkView, TechDraw::DrawHatch, TechDraw::DrawGeomHatch, Part::GeomSurfaceOfExtrusion, Part::GeomSurfaceOfRevolution, Part::GeomTrimmedSurface, Part::GeomPlateSurface, Part::GeomOffsetSurface, App::PropertyMaterial, Part::GeomPlane, Part::GeomToroid, Part::GeomSphere, Part::GeomCone, App::PropertyColor, Part::GeomCylinder, Part::GeomBSplineSurface, Part::GeomBezierSurface, App::PropertyBool, Part::GeomOffsetCurve, Part::GeomLineSegment, Part::GeomLine, App::PropertyUUID, Part::GeomArcOfParabola, App::PropertyString, Part::GeomParabola, Part::GeomArcOfHyperbola, Part::GeomHyperbola, Part::Geom2dTrimmedCurve, Part::GeomArcOfEllipse, Part::Geom2dOffsetCurve, Part::Geom2dLineSegment, Part::GeomEllipse, Part::Geom2dLine, Part::GeomArcOfCircle, Part::Geom2dArcOfParabola, App::PropertyFloat, Part::GeomCircle, Part::Geom2dParabola, Part::Geom2dArcOfHyperbola, App::PropertyMap, Part::Geom2dHyperbola, Part::GeomTrimmedCurve, Part::Geom2dArcOfEllipse, App::PropertyIntegerSet, Part::Geom2dEllipse, Sketcher::SketchObject, Part::GeomBSplineCurve, Part::Geom2dArcOfCircle, TechDraw::GeomFormat, Gui::Document, Part::Geom2dCircle, App::PropertyMatrix, Part::GeomBezierCurve, Mesh::PropertyMeshKernel, Points::PropertyCurvatureList, Part::PropertyFilletEdges, TechDraw::CenterLine, Part::Geom2dBSplineCurve, App::PropertyEnumeration, Inspection::PropertyDistanceList, Mesh::PropertyCurvatureList, Part::GeomPoint, Part::GeometryDefaultExtension< T >, Points::PropertyNormalList, Part::PropertyShapeHistory, Part::Geom2dBezierCurve, Part::GeometryDefaultExtension< T >, TechDraw::CosmeticEdge, Part::GeometryDefaultExtension< T >, Base::Exception, Part::GeometryDefaultExtension< T >, App::PropertyPath, Part::PropertyPartShape, TechDraw::DrawViewClip, App::GeoFeature, Fem::PropertyFemMesh, Part::Geom2dPoint, Points::PropertyGreyValueList, Spreadsheet::PropertyColumnWidths, Spreadsheet::PropertyRowHeights, Fem::FemResultObject, Path::FeatureCompound, Robot::PropertyTrajectory, Mesh::PropertyNormalList, WebGui::BrowserView, Fem::PropertyPostDataObject, TechDraw::DrawTileWeld, Points::PropertyPointKernel, TechDraw::DrawSVGTemplate, TechDraw::DrawTemplate, TechDraw::DrawViewDimExtent, Path::Feature, Fem::FemMeshObject, Path::FeatureArea, Fem::FemSolverObject, Robot::RobotObject, Robot::TrajectoryObject, TechDraw::CosmeticVertex, TechDraw::DrawRichAnno, App::PropertyFileIncluded, Fem::FemSetNodesObject, Fem::FemSetObject, Path::PropertyPath, Path::PropertyTool, Path::PropertyTooltable, TechDraw::DrawTile, Gui::View3DInventor, App::InventorObject, App::VRMLObject, Fem::FemSetElementsObject, Fem::FemSetFacesObject, Fem::FemSetGeometryObject, Mesh::Feature, Gui::AbstractSplitView, SpreadsheetGui::SheetView, TechDraw::PropertyCosmeticEdgeList, TechDraw::PropertyCosmeticVertexList, TechDraw::PropertyGeomFormatList, TechDraw::DrawWeldSymbol, Part::PropertyGeometryList, PartDesign::Feature, App::PropertyInteger, TechDraw::PropertyCenterLineList, Measure::Measurement, TechDraw::DrawParametricTemplate, App::PropertyQuantity, App::PropertyPythonObject, Gui::ViewProviderLink, Part::BodyBase, PartDesign::FeaturePrimitive, Gui::ViewProviderDocumentObject, Part::Primitive, Part::Feature, Gui::AlignmentView, Gui::ViewProvider, Gui::PythonBaseWorkbench, Spreadsheet::Sheet, MeshGui::ViewProviderMesh, FemGui::ViewProviderFemMesh, DrawingGui::DrawingView, Fem::FemPostPipeline, TechDrawGui::MDIViewPage, Gui::MDIView, Gui::Workbench, and Gui::SelectionObject.

Referenced by Part::TopoShapeFacePy::curveOnSurface(), Spreadsheet::SheetPy::get(), Sandbox::DocumentObjectProtectorPy::getattr(), Part::OffsetCurve2dPy::getBasisCurve(), Part::OffsetSurfacePy::getBasisSurface(), App::PropertyContainerPy::getCustomAttributes(), Gui::ViewProviderPy::getCustomAttributes(), App::DocumentObjectPy::getCustomAttributes(), Spreadsheet::SheetPy::getCustomAttributes(), App::LinkBaseExtensionPy::getLinkExtProperty(), and App::PropertyContainerPy::getPropertyByName().

◆ getTypeId()

◆ init()

◆ initSubclass()

void BaseClass::initSubclass ( Base::Type toInit,
const char *  ClassName,
const char *  ParentName,
Type::instantiationMethod  method = nullptr 
)
staticprotected

◆ isDerivedFrom()

bool Base::BaseClass::isDerivedFrom ( const Type  type) const

References Base::Type::isDerivedFrom().

Referenced by StdCmdToggleSelectability::activated(), Gui::Application::activateView(), PartDesign::Body::addObject(), TechDraw::DrawPage::addView(), SurfaceGui::FillingVertexPanel::VertexSelection::allow(), SurfaceGui::FillingUnboundPanel::ShapeSelection::allow(), PartGui::DlgExtrusion::EdgeSelection::allow(), PartGui::DlgRevolution::EdgeSelection::allow(), SurfaceGui::GeomFillSurface::EdgeSelection::allow(), SurfaceGui::FillingPanel::ShapeSelection::allow(), Gui::ViewProviderLink::attach(), TechDrawGui::TaskRichAnno::calcTextStartPos(), Part::Extrusion::calculateShapeNormal(), Gui::ViewProviderDocumentObject::canDelete(), App::PropertyExpressionEngine::canonicalPath(), TechDrawGui::ViewProviderPage::claimChildren(), PartDesignGui::ViewProviderPipe::claimChildren(), PartDesignGui::ViewProviderSketchBased::claimChildren(), Gui::TreeWidget::contextMenuEvent(), Sketcher::SketchObject::convertToNURBS(), SpreadsheetGui::SheetModel::data(), Gui::SoFCUnifiedSelection::doAction(), SketcherGui::ViewProviderSketch::draw(), TechDrawGui::QGIViewBalloon::draw(), TechDrawGui::QGIViewDimension::draw(), SketcherGui::ViewProviderSketch::drawConstraintIcons(), TechDraw::DrawViewDetail::execute(), Surface::Cut::execute(), Drawing::FeatureViewSpreadsheet::execute(), Path::FeatureAreaView::execute(), App::Document::exportGraphviz(), Spreadsheet::Sheet::exportToFile(), PartDesign::FeatureBase::FeatureBase(), Sketcher::SketchObject::fillet(), ExportOCAFGui::findColors(), App::Origin::getAxis(), PartDesign::Transformed::getBaseObject(), PartDesign::ProfileBased::getBaseObject(), App::PropertyFileIncluded::getDocTransientPath(), Spreadsheet::Cell::getFormattedQuantity(), App::OriginGroupExtension::getGroupOfObject(), Gui::View3DInventorPy::getObjectInfo(), Gui::View3DInventorPy::getObjectsInfo(), App::OriginGroupExtension::getOrigin(), TechDrawGui::QGIDrawingTemplate::getParametricTemplate(), App::Origin::getPlane(), PartDesign::ProfileBased::getProfileWires(), PartDesignGui::getReferencedSelection(), SketcherGui::ViewProviderSketch::getScaleFactor(), Path::FeatureAreaView::getShapes(), TechDraw::DrawViewSpreadsheet::getSheetImage(), PartDesign::Transformed::getSketchObject(), TechDrawGui::QGISVGTemplate::getSVGTemplate(), Gui::LinkInfo::getView(), Gui::DocumentItem::getViewProvider(), TechDraw::DrawView::handleChangedPropertyType(), Part::Part2DObject::handleChangedPropertyType(), PartDesignGui::ViewProviderShapeBinder::highlightReferences(), PartDesign::Body::insertObject(), App::GeoFeatureGroupExtension::isLinkValid(), Import::ImportOCAF2::loadShapes(), PartGui::OffsetWidget::OffsetWidget(), App::Document::onBeforeChangeProperty(), App::OriginGroupExtension::onExtendedSetupObject(), PartDesignGui::TaskMirroredParameters::onSelectionChanged(), PartDesignGui::TaskPolarPatternParameters::onSelectionChanged(), PartDesignGui::TaskLinearPatternParameters::onSelectionChanged(), Gui::PropertyView::onTimer(), Gui::Dialog::find_placement::operator()(), App::DocumentObjectT::operator=(), PartDesignGui::TaskTransformedParameters::originalSelected(), App::PropertyLink::Paste(), App::PropertyLinkList::Paste(), App::PropertyLinkSub::Paste(), App::PropertyLinkSubList::Paste(), App::PropertyXLink::Paste(), App::PropertyXLinkSubList::Paste(), PartDesign::ProfileBased::positionByPrevious(), Attacher::AttachEngine::readLinks(), PartDesign::Body::removeObject(), TechDraw::DrawPage::removeView(), App::PropertyLink::resetLink(), App::PropertyLink::Restore(), App::PropertyLinkSub::Restore(), App::PropertyXLink::Restore(), Path::PropertyPath::RestoreDocFile(), Fem::PropertyPostDataObject::RestoreDocFile(), Part::PropertyPartShape::RestoreDocFile(), Gui::Application::sActiveView(), Fem::PropertyPostDataObject::SaveDocFile(), Part::PropertyPartShape::SaveDocFile(), SketcherGui::ViewProviderSketch::seekConstraintPosition(), Part::Part2DObject::seekTrimPoints(), App::PropertyLinkList::set1Value(), PartDesign::Body::setBaseProperty(), Gui::ViewProviderDragger::setEdit(), App::LinkBaseExtension::setProperty(), Gui::PropertyEditor::PropertyItem::setPropertyValue(), PartDesignGui::Workbench::setupContextMenu(), App::Origin::setupObject(), Gui::RecoveryWriter::shouldWrite(), Gui::Document::slotActivatedObject(), Gui::Document::slotChangedObject(), PartDesignGui::ViewProviderBody::slotChangedObjectGui(), Gui::ViewProviderOriginGroupExtension::slotChangedObjectGui(), Gui::Document::slotFinishRestoreDocument(), Gui::Document::slotRelabelObject(), Gui::Document::slotTransactionAppend(), App::PropertyXLink::supportXLink(), PartDesignGui::TaskRevolutionParameters::TaskRevolutionParameters(), Gui::ViewProviderVRMLObject::updateData(), TechDrawGui::ViewProviderTemplate::updateData(), Gui::ViewProviderDragger::updateData(), PartDesignGui::ViewProviderBody::updateData(), Gui::ViewProviderGeometryObject::updateData(), FemGui::ViewProviderFemMesh::updateData(), Gui::ViewProviderInventorObject::updateData(), SketcherGui::ViewProviderSketch::updateData(), PartDesignGui::ViewProviderBody::updateOriginDatumSize(), Gui::ViewProviderOriginGroupExtension::updateOriginSize(), TechDrawGui::MDIViewPage::updateTemplate(), Gui::RecoveryWriter::writeFiles(), App::PropertyLinkList::~PropertyLinkList(), App::PropertyLinkSub::~PropertyLinkSub(), App::PropertyLinkSubList::~PropertyLinkSubList(), and PartDesignGui::TaskDatumParameters::~TaskDatumParameters().

◆ setPyObject()

void BaseClass::setPyObject ( PyObject )
virtual

Reimplemented in App::PropertyListsT< T, ListT, ParentT >, App::PropertyListsT< long >, App::PropertyListsT< Base::Vector3d >, App::PropertyListsT< Color >, App::PropertyListsT< double >, App::PropertyListsT< std::string >, App::PropertyListsT< bool, boost::dynamic_bitset<> >, App::PropertyListsT< DocumentObject *, std::vector< DocumentObject * >, PropertyLinkListBase >, App::PropertyListsT< Material >, App::PropertyListsT< Base::Placement >, Mesh::PropertyMeshKernel, Mesh::PropertyCurvatureList, Part::PropertyPartShape, Fem::PropertyFemMesh, Robot::PropertyTrajectory, Fem::PropertyPostDataObject, Points::PropertyPointKernel, Path::PropertyPath, Path::PropertyTool, Path::PropertyTooltable, Base::FileException, Base::Exception, App::PropertyLinkListBase, App::PropertyLists, App::PropertyXLinkList, App::PropertyXLinkSubList, App::PropertyXLink, App::PropertyLinkSubList, App::PropertyLinkSub, App::PropertyBoolList, App::PropertyLink, App::PropertyPlacement, Spreadsheet::PropertySheet, App::PropertyExpressionEngine, Sketcher::PropertyConstraintList, App::PropertyVector, App::PropertyMaterial, App::PropertyColor, App::PropertyBool, App::PropertyUUID, App::PropertyString, App::PropertyFloatConstraint, App::PropertyFloat, App::PropertyMap, App::PropertyIntegerSet, App::PropertyIntegerConstraint, App::PropertyMatrix, Points::PropertyCurvatureList, Part::PropertyFilletEdges, App::PropertyEnumeration, Inspection::PropertyDistanceList, Points::PropertyNormalList, Part::PropertyShapeHistory, App::PropertyPath, App::PropertyQuantityConstraint, Points::PropertyGreyValueList, Mesh::PropertyNormalList, App::PropertyFileIncluded, Gui::AbstractSplitView, TechDraw::PropertyCosmeticEdgeList, TechDraw::PropertyCosmeticVertexList, TechDraw::PropertyGeomFormatList, Part::PropertyGeometryList, App::PropertyInteger, TechDraw::PropertyCenterLineList, App::PropertyQuantity, and App::PropertyPythonObject.

Referenced by TechDraw::DrawTemplatePy::setCustomAttributes(), TechDraw::DrawSVGTemplatePy::setCustomAttributes(), TechDraw::DrawParametricTemplatePy::setCustomAttributes(), App::PropertyContainerPy::setCustomAttributes(), Gui::ViewProviderPy::setCustomAttributes(), App::DocumentObjectPy::setCustomAttributes(), and Sketcher::SketchObjectPy::setCustomAttributes().


The documentation for this class was generated from the following files:
  • src/Base/BaseClass.h
  • src/Base/BaseClass.cpp