|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- /*
- * Carla Bridge Toolkit
- * Copyright (C) 2011-2014 Filipe Coelho <falktx@falktx.com>
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * For a full copy of the GNU General Public License see the doc/GPL.txt file.
- */
-
- #ifndef CARLA_BRIDGE_TOOLKIT_HPP_INCLUDED
- #define CARLA_BRIDGE_TOOLKIT_HPP_INCLUDED
-
- #include "CarlaBridge.hpp"
- #include "CarlaString.hpp"
-
- CARLA_BRIDGE_START_NAMESPACE
-
- // -----------------------------------------------------------------------
-
- class CarlaBridgeToolkit
- {
- public:
- virtual ~CarlaBridgeToolkit() {}
-
- virtual void init() = 0;
- virtual void exec(const bool showUI) = 0;
- virtual void quit() = 0;
-
- virtual void show() = 0;
- virtual void hide() = 0;
- virtual void resize(const int width, const int height) = 0;
-
- virtual void* getContainerId() const { return nullptr; }
- virtual void* getContainerId2() const { return nullptr; }
-
- static CarlaBridgeToolkit* createNew(CarlaBridgeClient* const client, const char* const windowTitle);
-
- protected:
- CarlaBridgeClient* const kClient;
- const CarlaString kWindowTitle;
-
- CarlaBridgeToolkit(CarlaBridgeClient* const client, const char* const windowTitle)
- : kClient(client),
- kWindowTitle(windowTitle) {}
-
- CARLA_LEAK_DETECTOR(CarlaBridgeToolkit)
- };
-
- // -----------------------------------------------------------------------
-
- CARLA_BRIDGE_END_NAMESPACE
-
- #endif // __CARLA_BRIDGE_TOOLKIT_HPP__
|