syntax = "proto3";

package renderserver;

service RenderServer {
    // Called from Manim when a scene has been newly rendered.
    rpc UpdateSceneData (UpdateSceneDataRequest) returns (EmptyResponse);
}

message UpdateSceneDataRequest {
    Scene scene = 1;
    string exception = 2;
    bool has_exception = 3;
}

message Scene {
    string name = 1;
    repeated Animation animations = 2;
    string background_color = 3;
}

message Animation {
    string name = 1;
    float duration = 2;
}

message EmptyRequest {}
message EmptyResponse {}
