43 lines
956 B
C
Raw Permalink Normal View History

2024-01-08 23:37:00 +08:00
#ifndef API_SETTINGS_H
#define API_SETTINGS_H
2024-04-02 15:36:52 +08:00
namespace ebyroid
{
static constexpr size_t kMaxPathSize = 0xFF;
static constexpr int32_t kFrequency44 = 0xAC44;
static constexpr int32_t kFrequency22 = 0x5622;
static const char *kDllFilename = "aitalked.dll";
static const char *kLicFilename = "aitalk.lic";
static const char *kWinDelimit = "\\";
struct Settings
{
char base_dir[kMaxPathSize];
char dll_path[kMaxPathSize];
char voice_dir[kMaxPathSize];
char voice_name[256];
char language_dir[kMaxPathSize];
char license_path[kMaxPathSize];
const char *seed;
uint32_t frequency;
};
class SettingsBuilder
{
public:
SettingsBuilder(const std::string &base_dir, const std::string &voice_name)
: base_dir_(base_dir), voice_name_(voice_name) {}
Settings Build();
private:
std::string base_dir_;
std::string voice_name_;
};
} // namespace ebyroid
#endif // API_SETTINGS_H