App: use forward declarations

This commit is contained in:
wmayer
2022-03-04 21:09:46 +01:00
parent 693315755f
commit 95c70e7f4c
33 changed files with 52 additions and 21 deletions

View File

@@ -31,13 +31,15 @@
#include <Base/Observer.h>
#include <Base/Parameter.h>
#include <Base/PyObjectBase.h>
// forward declarations
typedef struct _object PyObject;
typedef struct PyMethodDef PyMethodDef;
namespace Base
{
class ConsoleObserverStd;
class ConsoleObserverFile;
class ConsoleObserverStd;
class ConsoleObserverFile;
}
namespace App

View File

@@ -25,8 +25,10 @@
#define APP_DOCUMENTOBJECTEXTENSION_H
#include "Extension.h"
#include <Base/Matrix.h>
namespace Base {
class Matrix4D;
}
namespace App {
class DocumentObject;
class DocumentObjectExecReturn;
@@ -40,7 +42,7 @@ class AppExport DocumentObjectExtension : public App::Extension
//The cass does not have properties itself, but it is important to provide the property access
//functions. see cpp file for details
EXTENSION_PROPERTY_HEADER_WITH_OVERRIDE(App::DocumentObjectExtension );
EXTENSION_PROPERTY_HEADER_WITH_OVERRIDE(App::DocumentObjectExtension);
public:
@@ -51,8 +53,8 @@ public:
const App::DocumentObject* getExtendedObject() const;
//override if execution is necessary
virtual short extensionMustExecute(void);
virtual App::DocumentObjectExecReturn *extensionExecute(void);
virtual short extensionMustExecute();
virtual App::DocumentObjectExecReturn *extensionExecute();
/// get called after setting the document
@@ -64,18 +66,18 @@ public:
/// get called when object is going to be removed from the document
virtual void onExtendedUnsetupObject();
virtual PyObject* getExtensionPyObject(void) override;
virtual PyObject* getExtensionPyObject() override;
/// returns the type name of the ViewProviderExtension which is automatically attached
/// to the viewprovider object when it is initiated
virtual const char* getViewProviderExtensionName(void) const {return "";}
virtual const char* getViewProviderExtensionName() const {return "";}
/** Get the sub object by name
* @sa DocumentObject::getSubObject()
*
* @return Return turn if handled, the sub object is returned in \c ret
*/
virtual bool extensionGetSubObject( DocumentObject *&ret, const char *subname,
virtual bool extensionGetSubObject(DocumentObject *&ret, const char *subname,
PyObject **pyObj, Base::Matrix4D *mat, bool transform, int depth) const;
/** Get name references of all sub objects

View File

@@ -38,15 +38,15 @@ class AppExport DocumentObjectGroup : public DocumentObject, public GroupExtensi
public:
/// Constructor
DocumentObjectGroup(void);
DocumentObjectGroup();
virtual ~DocumentObjectGroup();
/// returns the type name of the ViewProvider
virtual const char* getViewProviderName(void) const override{
virtual const char* getViewProviderName() const override {
return "Gui::ViewProviderDocumentObjectGroup";
}
virtual PyObject *getPyObject(void) override;
virtual PyObject *getPyObject() override;
};
typedef App::FeaturePythonT<DocumentObjectGroup> DocumentObjectGroupPython;

View File

@@ -23,6 +23,7 @@
#include "PreCompiled.h"
#include <CXX/Objects.hxx>
#include "Application.h"
#include "Document.h"
#include "DocumentObject.h"

View File

@@ -25,6 +25,8 @@
#include <Base/Console.h>
#include <Base/Exception.h>
#include <Base/Reader.h>
#include <Base/Writer.h>
#include "Extension.h"
#include "ExtensionContainer.h"

View File

@@ -24,9 +24,6 @@
#ifndef APP_EXTENSIONCONTAINER_H
#define APP_EXTENSIONCONTAINER_H
#include <Base/Reader.h>
#include <Base/Writer.h>
#include "PropertyContainer.h"

View File

@@ -34,6 +34,7 @@
#include <Base/Interpreter.h>
#include <Base/QuantityPy.h>
#include <Base/Console.h>
#include <Base/Reader.h>
#include <CXX/Objects.hxx>
#include "ObjectIdentifier.h"

View File

@@ -76,11 +76,11 @@ public:
//@}
/// Constructor
Part(void);
Part();
virtual ~Part();
/// returns the type name of the ViewProvider
virtual const char* getViewProviderName(void) const override {
virtual const char* getViewProviderName() const override {
return "Gui::ViewProviderPart";
}
@@ -95,7 +95,7 @@ public:
*/
static App::Part* getPartOfObject (const DocumentObject* obj, bool recursive=true);
virtual PyObject *getPyObject(void) override;
virtual PyObject *getPyObject() override;
};
//typedef App::FeaturePythonT<Part> PartPython;

View File

@@ -28,6 +28,7 @@
#include <Base/Reader.h>
#include <Base/Tools.h>
#include <Base/Writer.h>
#include <CXX/Objects.hxx>
#include "PropertyExpressionEngine.h"
#include "ExpressionVisitors.h"