Mercurial > hg > piper-cpp
comparison vamp-server/convert.cpp @ 294:df381a2e6fa1
Fix compiler warning re mismatching enum types
author | Chris Cannam <cannam@all-day-breakfast.com> |
---|---|
date | Wed, 03 Jan 2024 18:12:35 +0000 |
parents | bd543e74a9bf |
children |
comparison
equal
deleted
inserted
replaced
293:ae7397deffaa | 294:df381a2e6fa1 |
---|---|
148 } else { | 148 } else { |
149 return Json(); | 149 return Json(); |
150 } | 150 } |
151 } | 151 } |
152 | 152 |
153 template <typename Reader> | 153 template <typename Reader, typename Id> |
154 static RequestOrResponse::RpcId | 154 static RequestOrResponse::RpcId |
155 readCapnpId(const Reader &r) | 155 readCapnpId(const Reader &r) |
156 { | 156 { |
157 int number; | 157 int number; |
158 string tag; | 158 string tag; |
159 switch (r.getId().which()) { | 159 switch (r.getId().which()) { |
160 case piper::RpcRequest::Id::Which::NUMBER: | 160 case Id::Which::NUMBER: |
161 number = r.getId().getNumber(); | 161 number = r.getId().getNumber(); |
162 return { RequestOrResponse::RpcId::Number, number, "" }; | 162 return { RequestOrResponse::RpcId::Number, number, "" }; |
163 case piper::RpcRequest::Id::Which::TAG: | 163 case Id::Which::TAG: |
164 tag = r.getId().getTag(); | 164 tag = r.getId().getTag(); |
165 return { RequestOrResponse::RpcId::Tag, 0, tag }; | 165 return { RequestOrResponse::RpcId::Tag, 0, tag }; |
166 case piper::RpcRequest::Id::Which::NONE: | 166 case Id::Which::NONE: |
167 return { RequestOrResponse::RpcId::Absent, 0, "" }; | 167 return { RequestOrResponse::RpcId::Absent, 0, "" }; |
168 } | 168 } |
169 return { RequestOrResponse::RpcId::Absent, 0, "" }; | 169 return { RequestOrResponse::RpcId::Absent, 0, "" }; |
170 } | 170 } |
171 | 171 |
379 | 379 |
380 capnp::InputStreamMessageReader message(buffered); | 380 capnp::InputStreamMessageReader message(buffered); |
381 piper::RpcRequest::Reader reader = message.getRoot<piper::RpcRequest>(); | 381 piper::RpcRequest::Reader reader = message.getRoot<piper::RpcRequest>(); |
382 | 382 |
383 rr.type = VampnProto::getRequestResponseType(reader); | 383 rr.type = VampnProto::getRequestResponseType(reader); |
384 rr.id = readCapnpId(reader); | 384 rr.id = readCapnpId<piper::RpcRequest::Reader, piper::RpcRequest::Id> |
385 (reader); | |
385 | 386 |
386 switch (rr.type) { | 387 switch (rr.type) { |
387 | 388 |
388 case RRType::List: | 389 case RRType::List: |
389 VampnProto::readRpcRequest_List(rr.listRequest, reader); | 390 VampnProto::readRpcRequest_List(rr.listRequest, reader); |
451 piper::RpcResponse::Reader reader = message.getRoot<piper::RpcResponse>(); | 452 piper::RpcResponse::Reader reader = message.getRoot<piper::RpcResponse>(); |
452 | 453 |
453 rr.type = VampnProto::getRequestResponseType(reader); | 454 rr.type = VampnProto::getRequestResponseType(reader); |
454 rr.success = true; | 455 rr.success = true; |
455 rr.errorText = ""; | 456 rr.errorText = ""; |
456 rr.id = readCapnpId(reader); | 457 rr.id = readCapnpId<piper::RpcResponse::Reader, piper::RpcResponse::Id> |
458 (reader); | |
457 int errorCode = 0; | 459 int errorCode = 0; |
458 | 460 |
459 switch (rr.type) { | 461 switch (rr.type) { |
460 | 462 |
461 case RRType::List: | 463 case RRType::List: |