// Proto file representing the EDB Polygon class

syntax = "proto3";

package ansys.api.edb.v1;

import "ansys/api/edb/v1/edb_messages.proto";
import "ansys/api/edb/v1/polygon_data.proto";
import "ansys/api/edb/v1/refs.proto";

// Polygon service definition
service PolygonService {
  // Create a polygon
  rpc Create (PolygonCreationMessage) returns (EDBObjMessage) {}
  
  // Get PolygonData
  rpc GetPolygonData (EDBObjMessage) returns (PolygonDataMessage) {}
  
  // Set PolygonData
  rpc SetPolygonData (SetPolygonDataMessage) returns (google.protobuf.Empty) {}
}

// Message for Create
message PolygonCreationMessage {
  EDBObjMessage layout = 1;
  LayerRefMessage layer = 2;
  NetRefMessage net = 3;
  PolygonDataMessage points = 4;
}

// Message for Set PolygonData
message SetPolygonDataMessage {
  EDBObjMessage target = 1;
  PolygonDataMessage poly = 2;
}
