ccDefaultPluginInterface.h 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. //##########################################################################
  2. //# #
  3. //# CLOUDCOMPARE #
  4. //# #
  5. //# This program is free software; you can redistribute it and/or modify #
  6. //# it under the terms of the GNU General Public License as published by #
  7. //# the Free Software Foundation; version 2 of the License. #
  8. //# #
  9. //# This program is distributed in the hope that it will be useful, #
  10. //# but WITHOUT ANY WARRANTY; without even the implied warranty of #
  11. //# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
  12. //# GNU General Public License for more details. #
  13. //# #
  14. //# COPYRIGHT: CloudCompare project #
  15. //# #
  16. //##########################################################################
  17. #pragma once
  18. #include <QString>
  19. #include "ccPluginInterface.h"
  20. class ccDefaultPluginData;
  21. class ccDefaultPluginInterface : public ccPluginInterface
  22. {
  23. public:
  24. ~ccDefaultPluginInterface() override;
  25. bool isCore() const override;
  26. QString getName() const override;
  27. QString getDescription() const override;
  28. QIcon getIcon() const override;
  29. ReferenceList getReferences() const override;
  30. ContactList getAuthors() const override;
  31. ContactList getMaintainers() const override;
  32. bool start() override { return true; }
  33. void stop() override {}
  34. ccExternalFactory* getCustomObjectsFactory() const override { return nullptr; }
  35. void registerCommands(ccCommandLineInterface* cmd) override { Q_UNUSED( cmd ); }
  36. protected:
  37. ccDefaultPluginInterface( const QString& resourcePath = QString() );
  38. private:
  39. void setIID( const QString& iid ) override;
  40. const QString& IID() const override;
  41. ccDefaultPluginData* m_data;
  42. };