syntax = "proto3";
package ubii.proto_v2.types.sessions;

import "ubii/proto_v2/types/sessions/ioMappings.proto";
import "ubii/proto_v2/types/processing/processingModule.proto";

enum SessionStatus {
    CREATED = 0;
    RUNNING = 1;
    PAUSED = 2;
    STOPPED = 3;
}

message Session {
    string id = 1;
    string name = 2;
    repeated ubii.proto_v2.types.processing.ProcessingModule processing_modules = 3;
    repeated ubii.proto_v2.types.sessions.IOMapping io_mappings = 4;
    repeated string tags = 5;
    string description = 6;
    repeated string authors = 7;
    SessionStatus status = 8;
    bool editable = 9;
}

message SessionList {
    repeated ubii.proto_v2.types.sessions.Session elements = 1;
}
