mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
* gRPC: Make names more consistent * gRPC: clean up case info and improve Python API for cases * gRPC: much more object oriented Python interface * Python: Make a proper pip-installable package * Update rips Python package to auto generate setup.py with version number * Python: add setup.py to gitignore * Python: Update Python RIPS interface * gRPC: Remove example client from cmake file and unit test * gRPC: Fix up unit test after merge and hide warnings * gRPC: fix up python client code
This commit is contained in:
@@ -4,7 +4,7 @@ package rips;
|
||||
|
||||
import "Empty.proto";
|
||||
|
||||
service ResInfo {
|
||||
service AppInfo {
|
||||
rpc GetVersion(Empty) returns (Version) {}
|
||||
}
|
||||
|
||||
@@ -1,19 +1,44 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "CaseInfo.proto";
|
||||
|
||||
package rips;
|
||||
|
||||
service GridInfo
|
||||
service Case
|
||||
{
|
||||
// This function returns a two dimensional matrix: One row for each grid, starting with the main grid.
|
||||
rpc GetGridCount(Case) returns(GridCount) {}
|
||||
rpc GetGridDimensions(Case) returns (GridDimensions) {}
|
||||
rpc GetGridCount(CaseRequest) returns(GridCount) {}
|
||||
rpc GetCellCount(CellInfoRequest) returns (CellCount) {}
|
||||
rpc GetCellInfoForActiveCells(CellInfoRequest) returns (stream CellInfoArray) {}
|
||||
rpc GetAllCoarseningInfoArray(Case) returns (CoarseningInfoArray) {}
|
||||
rpc GetTimeSteps(Case) returns (TimeStepDates) {}
|
||||
rpc GetTimeStepDaysSinceStart(Case) returns (DoubleDates) {}
|
||||
rpc GetCoarseningInfoArray(CaseRequest) returns (CoarseningInfoArray) {}
|
||||
rpc GetTimeSteps(CaseRequest) returns (TimeStepDates) {}
|
||||
rpc GetTimeStepDaysSinceStart(CaseRequest) returns (DoubleDates) {}
|
||||
rpc GetCaseInfo(CaseRequest) returns (CaseInfo) {}
|
||||
}
|
||||
|
||||
message CaseRequest {
|
||||
int32 id = 1;
|
||||
}
|
||||
|
||||
message CaseInfo
|
||||
{
|
||||
int32 id = 1;
|
||||
int32 group_id = 2;
|
||||
string name = 3;
|
||||
string type = 4;
|
||||
}
|
||||
|
||||
message CaseInfoArray
|
||||
{
|
||||
repeated CaseInfo data = 1;
|
||||
}
|
||||
|
||||
message CaseGroup
|
||||
{
|
||||
int32 id = 1;
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
message CaseGroups
|
||||
{
|
||||
repeated CaseGroup case_groups = 1;
|
||||
}
|
||||
|
||||
message GridCount
|
||||
@@ -21,11 +46,6 @@ message GridCount
|
||||
int32 count = 1;
|
||||
}
|
||||
|
||||
message GridDimensions
|
||||
{
|
||||
repeated Vec3i dimensions = 1;
|
||||
}
|
||||
|
||||
message Vec3i {
|
||||
int32 i = 1;
|
||||
int32 j = 2;
|
||||
@@ -46,7 +66,7 @@ enum PorosityModelType
|
||||
|
||||
message CellInfoRequest
|
||||
{
|
||||
int32 case_id = 1;
|
||||
CaseRequest case_request = 1;
|
||||
PorosityModelType porosity_model = 2;
|
||||
}
|
||||
|
||||
@@ -77,7 +97,7 @@ message CoarseningInfo
|
||||
|
||||
message TimeStepDates
|
||||
{
|
||||
repeated TimeStepDate date = 1;
|
||||
repeated TimeStepDate dates = 1;
|
||||
}
|
||||
|
||||
message TimeStepDate
|
||||
@@ -92,5 +112,5 @@ message TimeStepDate
|
||||
|
||||
message DoubleDates
|
||||
{
|
||||
repeated double date_decimal = 1;
|
||||
}
|
||||
repeated double date_decimals = 1;
|
||||
}
|
||||
@@ -1,31 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package rips;
|
||||
|
||||
message Case {
|
||||
int32 id = 1;
|
||||
}
|
||||
|
||||
message CaseInfo
|
||||
{
|
||||
int32 id = 1;
|
||||
int32 group_id = 2;
|
||||
string name = 3;
|
||||
string type = 4;
|
||||
}
|
||||
|
||||
message CaseInfos
|
||||
{
|
||||
repeated CaseInfo case_info = 1;
|
||||
}
|
||||
|
||||
message CaseGroup
|
||||
{
|
||||
int32 id = 1;
|
||||
string name = 2;
|
||||
}
|
||||
|
||||
message CaseGroups
|
||||
{
|
||||
repeated CaseGroup case_group = 1;
|
||||
}
|
||||
@@ -1,6 +1,6 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "CaseInfo.proto";
|
||||
import "Case.proto";
|
||||
import "Empty.proto";
|
||||
|
||||
package rips;
|
||||
@@ -272,8 +272,8 @@ message CommandReply
|
||||
{
|
||||
oneof result
|
||||
{
|
||||
Empty emptyResult = 1;
|
||||
Case loadCaseResult = 2;
|
||||
Empty emptyResult = 1;
|
||||
CaseRequest loadCaseResult = 2;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
34
ApplicationCode/GrpcInterface/GrpcProtos/Grid.proto
Normal file
34
ApplicationCode/GrpcInterface/GrpcProtos/Grid.proto
Normal file
@@ -0,0 +1,34 @@
|
||||
syntax = "proto3";
|
||||
|
||||
package rips;
|
||||
|
||||
import "Case.proto";
|
||||
|
||||
service Grid
|
||||
{
|
||||
rpc GetCellCenters(GridRequest) returns(CellCenters) {}
|
||||
rpc GetDimensions(GridRequest) returns (GridDimensions) {}
|
||||
}
|
||||
|
||||
message GridRequest
|
||||
{
|
||||
CaseRequest case_request = 1;
|
||||
int32 grid_index = 2;
|
||||
}
|
||||
|
||||
message Vec3d
|
||||
{
|
||||
double x = 1;
|
||||
double y = 2;
|
||||
double z = 3;
|
||||
}
|
||||
|
||||
message CellCenters
|
||||
{
|
||||
repeated Vec3d centers = 1;
|
||||
}
|
||||
|
||||
message GridDimensions
|
||||
{
|
||||
Vec3i dimensions = 1;
|
||||
}
|
||||
14
ApplicationCode/GrpcInterface/GrpcProtos/Project.proto
Normal file
14
ApplicationCode/GrpcInterface/GrpcProtos/Project.proto
Normal file
@@ -0,0 +1,14 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "Case.proto";
|
||||
import "Empty.proto";
|
||||
|
||||
package rips;
|
||||
|
||||
service Project {
|
||||
rpc GetCurrentCase(Empty) returns (CaseRequest) {}
|
||||
rpc GetSelectedCases(Empty) returns (CaseInfoArray) {}
|
||||
rpc GetAllCaseGroups(Empty) returns (CaseGroups) {}
|
||||
rpc GetAllCases(Empty) returns (CaseInfoArray) {}
|
||||
rpc GetCasesInGroup(CaseGroup) returns (CaseInfoArray) {}
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "CaseInfo.proto";
|
||||
import "Empty.proto";
|
||||
|
||||
package rips;
|
||||
|
||||
service ProjectInfo {
|
||||
rpc CurrentCase(Empty) returns (Case) {}
|
||||
rpc CurrentCaseInfo(Empty) returns (CaseInfo) {}
|
||||
rpc CaseInfoFromCase(Case) returns (CaseInfo) {}
|
||||
rpc SelectedCases(Empty) returns (CaseInfos) {}
|
||||
rpc AllCaseGroups(Empty) returns (CaseGroups) {}
|
||||
rpc AllCases(Empty) returns (CaseInfos) {}
|
||||
rpc CasesInGroup(CaseGroup) returns (CaseInfos) {}
|
||||
}
|
||||
@@ -1,18 +1,17 @@
|
||||
syntax = "proto3";
|
||||
|
||||
import "Empty.proto";
|
||||
import "CaseInfo.proto";
|
||||
import "GridInfo.proto";
|
||||
import "Case.proto";
|
||||
|
||||
package rips;
|
||||
|
||||
service Properties
|
||||
{
|
||||
rpc GetAvailableProperties(PropertiesRequest) returns (AvailableProperties) {}
|
||||
rpc GetActiveCellResults(ResultRequest) returns (stream ResultArray) {}
|
||||
rpc GetGridResults(ResultRequest) returns (stream ResultArray) {}
|
||||
rpc SetActiveCellResults(stream ResultRequestChunk) returns (Empty) {}
|
||||
rpc SetGridResults(stream ResultRequestChunk) returns (Empty) {}
|
||||
rpc GetAvailableProperties(AvailablePropertiesRequest) returns (AvailableProperties) {}
|
||||
rpc GetActiveCellProperty(PropertyRequest) returns (stream PropertyChunk) {}
|
||||
rpc GetGridProperty(PropertyRequest) returns (stream PropertyChunk) {}
|
||||
rpc SetActiveCellProperty(stream PropertyInputChunk) returns (Empty) {}
|
||||
rpc SetGridProperty(stream PropertyInputChunk) returns (Empty) {}
|
||||
}
|
||||
|
||||
enum PropertyType
|
||||
@@ -29,9 +28,9 @@ enum PropertyType
|
||||
UNDEFINED = 999;
|
||||
}
|
||||
|
||||
message PropertiesRequest
|
||||
message AvailablePropertiesRequest
|
||||
{
|
||||
Case request_case = 1;
|
||||
CaseRequest case_request = 1;
|
||||
PropertyType property_type = 2;
|
||||
PorosityModelType porosity_model = 3;
|
||||
}
|
||||
@@ -41,9 +40,9 @@ message AvailableProperties
|
||||
repeated string property_names = 1;
|
||||
}
|
||||
|
||||
message ResultRequest
|
||||
message PropertyRequest
|
||||
{
|
||||
Case request_case = 1;
|
||||
CaseRequest case_request = 1;
|
||||
PropertyType property_type = 2;
|
||||
string property_name = 3;
|
||||
int32 time_step = 4;
|
||||
@@ -56,14 +55,17 @@ message TimeStep
|
||||
int32 index = 1;
|
||||
}
|
||||
|
||||
message ResultRequestChunk
|
||||
message PropertyInputChunk
|
||||
{
|
||||
// Params needs to be sent in the first message
|
||||
ResultRequest params = 1;
|
||||
ResultArray values = 2;
|
||||
oneof ChunkType
|
||||
{
|
||||
// Params needs to be sent in the first message
|
||||
PropertyRequest params = 1;
|
||||
PropertyChunk values = 2;
|
||||
}
|
||||
}
|
||||
|
||||
message ResultArray
|
||||
message PropertyChunk
|
||||
{
|
||||
repeated double values = 1;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user