Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 7 additions & 2 deletions Source/CoreServices.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -142,9 +142,14 @@ namespace CoreServices
return getControlPanel()->getRecordingParentDirectory();
}

void setRecordingDirectoryBasename(String dir)
void setRecordingDirectoryBaseText(String text)
{
getControlPanel()->setRecordingDirectoryBasename(dir);
getControlPanel()->setRecordingDirectoryBaseText(text);
}

String getRecordingDirectoryBaseText()
{
return getControlPanel()->getRecordingDirectoryBaseText();
}

String getRecordingDirectoryName()
Expand Down
5 changes: 4 additions & 1 deletion Source/CoreServices.h
Original file line number Diff line number Diff line change
Expand Up @@ -106,8 +106,11 @@ PLUGIN_API void setRecordingParentDirectory(String dir);
/** Returns the default recording directory.*/
PLUGIN_API File getRecordingParentDirectory();

/** Gets the basename for the recording directory (does not affect prepend/append text) */
PLUGIN_API String getRecordingDirectoryBaseText();

/** Sets new basename for the recording directory (does not affect prepend/append text) */
PLUGIN_API void setRecordingDirectoryBasename(String dir);
PLUGIN_API void setRecordingDirectoryBaseText(String text);

/** Returns the full name of the current recording directory (empty string if none has started) */
PLUGIN_API String getRecordingDirectoryName();
Expand Down
13 changes: 12 additions & 1 deletion Source/UI/ControlPanel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1250,7 +1250,18 @@ void ControlPanel::setRecordingDirectoryAppendText(String text)
}
}

void ControlPanel::setRecordingDirectoryBasename(String text)
String ControlPanel::getRecordingDirectoryBaseText()
{
for (auto& field : filenameFields) //loops in order through prepend, main, append
{
if (field->type == FilenameFieldComponent::Type::MAIN)
{
return field->value;
}
}
}

void ControlPanel::setRecordingDirectoryBaseText(String text)
{
for (auto& field : filenameFields) //loops in order through prepend, main, append
{
Expand Down
5 changes: 4 additions & 1 deletion Source/UI/ControlPanel.h
Original file line number Diff line number Diff line change
Expand Up @@ -388,9 +388,12 @@ class ControlPanel : public Component,
/** Returns the current parent recording diretory*/
File getRecordingParentDirectory();

/** Gets the base name of the recording directory */
String getRecordingDirectoryBaseText();

/** Sets the base name of the recording directory (overrides the auto-generated text,
but not prepend or append text)*/
void setRecordingDirectoryBasename(String text);
void setRecordingDirectoryBaseText(String text);

/** Gets the name of the current recording directory (including prepend and append text)

Expand Down
4 changes: 2 additions & 2 deletions Source/Utils/OpenEphysHttpServer.h
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,7 @@ class OpenEphysHttpServer : juce::Thread {
std::string base_text = request_json["base_text"];
LOGD("Found 'base_text': ", base_text);
const MessageManagerLock mml;
CoreServices::setRecordingDirectoryBasename(String(base_text));
CoreServices::setRecordingDirectoryBaseText(String(base_text));
}
catch (json::exception& e) {
LOGD("'base_text' not specified'");
Expand Down Expand Up @@ -717,7 +717,7 @@ class OpenEphysHttpServer : juce::Thread {

(*ret)["parent_directory"] = CoreServices::getRecordingParentDirectory().getFullPathName().toStdString();

(*ret)["current_directory_name"] = CoreServices::getRecordingDirectoryName().toStdString();
(*ret)["base_text"] = CoreServices::getRecordingDirectoryBaseText().toStdString();

(*ret)["prepend_text"] = CoreServices::getRecordingDirectoryPrependText().toStdString();

Expand Down