Browse Source

Tweak init and display name

Signed-off-by: falkTX <falktx@falktx.com>
tags/22.02
falkTX 3 years ago
parent
commit
4f8db21a9e
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
3 changed files with 62 additions and 33 deletions
  1. +6
    -27
      src/CardinalPlugin.cpp
  2. +1
    -2
      src/Makefile
  3. +55
    -4
      src/dep.cpp

+ 6
- 27
src/CardinalPlugin.cpp View File

@@ -70,7 +70,7 @@ struct Initializer {
settings::discordUpdateActivity = false;
settings::isPlugin = true;
settings::skipLoadOnLaunch = true;
settings::showTipsOnLaunch = true;
settings::showTipsOnLaunch = false;
settings::threadCount = 1;
system::init();
asset::init();
@@ -87,33 +87,12 @@ struct Initializer {
INFO("User directory: %s", asset::userDir.c_str());
INFO("System time: %s", string::formatTimeISO(system::getUnixTime()).c_str());
// Load settings
settings::init();
#if 0
try {
settings::load();
}
catch (Exception& e) {
std::string message = e.what();
message += "\n\nResetting settings to default";
d_stdout(message.c_str());
/*
if (!osdialog_message(OSDIALOG_WARNING, OSDIALOG_OK_CANCEL, msg.c_str())) {
exit(1);
}
*/
}
#endif
// Check existence of the system res/ directory
std::string resDir = asset::system("res");
if (!system::isDirectory(resDir)) {
std::string message = string::f("Rack's resource directory \"%s\" does not exist. Make sure Rack is correctly installed and launched.", resDir.c_str());
d_stderr2(message.c_str());
/*
osdialog_message(OSDIALOG_ERROR, OSDIALOG_OK, message.c_str());
*/
// exit(1);
const std::string resDir = asset::system("res");
if (! system::isDirectory(resDir))
{
d_stderr2("Resource directory \"%s\" does not exist.\n"
"Make sure Cardinal was downloaded and installed correctly.", resDir.c_str());
}
INFO("Initializing environment");


+ 1
- 2
src/Makefile View File

@@ -47,7 +47,7 @@ endif

FILES_DSP += $(wildcard Rack/src/*.c)
FILES_DSP += $(wildcard Rack/src/*/*.c)
FILES_DSP += $(filter-out Rack/src/dep.cpp Rack/src/discord.cpp Rack/src/gamepad.cpp Rack/src/keyboard.cpp Rack/src/library.cpp Rack/src/network.cpp Rack/src/rtaudio.cpp Rack/src/rtmidi.cpp, $(wildcard Rack/src/*.cpp))
FILES_DSP += $(filter-out Rack/src/common.cpp Rack/src/dep.cpp Rack/src/discord.cpp Rack/src/gamepad.cpp Rack/src/keyboard.cpp Rack/src/library.cpp Rack/src/network.cpp Rack/src/rtaudio.cpp Rack/src/rtmidi.cpp, $(wildcard Rack/src/*.cpp))
FILES_DSP += $(filter-out Rack/src/window/Window.cpp, $(wildcard Rack/src/*/*.cpp))

# FOR TESTING
@@ -90,7 +90,6 @@ endif
# FOR TESTING
# BASE_FLAGS += -I../dpf/distrho/src/jackbridge

BASE_FLAGS += -D_APP_VERSION=Cardinal
BASE_FLAGS += -I../dpf/dgl/src/nanovg
BASE_FLAGS += -I../include
BASE_FLAGS += -I../include/neon-compat


+ 55
- 4
src/dep.cpp View File

@@ -1,14 +1,31 @@
// This source file compiles those nice implementation-in-header little libraries
/*
* DISTRHO Cardinal Plugin
* Copyright (C) 2021 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 3 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 LICENSE file.
*/

#include <common.hpp> // for fopen_u8
#include <common.hpp>
#include <string.hpp>

#ifdef NDEBUG
# undef DEBUG
#endif

#include "OpenGL.hpp"

#ifdef DEBUG
// fix blendish build, missing symbol in debug mode
#ifdef DEBUG
extern "C" {
float bnd_clamp(float v, float mn, float mx) {
return (v > mx)?mx:(v < mn)?mn:v;
@@ -16,13 +33,47 @@ float bnd_clamp(float v, float mn, float mx) {
}
#endif

// fopen_u8
#ifdef ARCH_WIN
#include <windows.h>
FILE* fopen_u8(const char* filename, const char* mode)
{
return _wfopen(rack::string::UTF8toUTF16(filename).c_str(), rack::string::UTF8toUTF16(mode).c_str());
}
#endif

// Compile those nice implementation-in-header little libraries
#define NANOSVG_IMPLEMENTATION
#define NANOSVG_ALL_COLOR_KEYWORDS
#include <nanosvg.h>

// Define the global names to indicate this is Cardinal and not VCVRack
namespace rack {
const std::string APP_NAME = "";
const std::string APP_EDITION = "";
const std::string APP_EDITION_NAME = "Cardinal Audio Plugin";
const std::string APP_VERSION_MAJOR = "2";
const std::string APP_VERSION = "v0.0.1";
#if defined(ARCH_WIN)
const std::string APP_ARCH = "win";
#elif defined(ARCH_MAC)
const std::string APP_ARCH = "mac";
#else
const std::string APP_ARCH = "lin";
#endif
const std::string API_URL = "";
Exception::Exception(const char* format, ...)
{
va_list args;
va_start(args, format);
msg = string::fV(format, args);
va_end(args);
}
}

// Define the stuff needed for VCVRack but unused for Cardinal
#include <library.hpp>
#include <network.hpp>

namespace rack {
namespace library {
std::string appChangelogUrl;


Loading…
Cancel
Save