YARP
Yet Another Robot Platform
 
Loading...
Searching...
No Matches
ISpeechTranscriptionMsgs.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2006-2021 Istituto Italiano di Tecnologia (IIT)
3 * SPDX-License-Identifier: BSD-3-Clause
4 */
5
6// Autogenerated by Thrift Compiler (0.14.1-yarped)
7//
8// This is an automatically generated file.
9// It could get re-generated if the ALLOW_IDL_GENERATION flag is on.
10
11#include <yarp/conf/version.h>
14#include <yarp/os/LogStream.h>
15
17
18#include <algorithm>
19
20namespace
21{
22 YARP_LOG_COMPONENT(SERVICE_LOG_COMPONENT, "ISpeechTranscriptionMsgs")
23}
24
25//ISpeechTranscriptionMsgs_getRemoteProtocolVersion_helper declaration
36
38{
39 yarp::os::idl::WireWriter writer(connection);
40 if (!writer.writeListHeader(1)) {
41 return false;
42 }
43 if (!writer.writeString("getRemoteProtocolVersion")) {
44 return false;
45 }
46 return true;
47}
48
49bool ISpeechTranscriptionMsgs_getRemoteProtocolVersion_helper ::read(yarp::os::ConnectionReader & connection)
50 {
51 yarp::os::idl::WireReader reader(connection);
52 if (!reader.readListHeader()) {
53 reader.fail();
54 return false;
55 }
56
57 if (!helper_proto.read(connection)) {
58 reader.fail();
59 return false;
60 }
61 return true;
62}
63
64//ProtocolVersion, client side
66 {
67 if(!yarp().canWrite()) {
68 yError(" Missing server method ISpeechTranscriptionMsgs::getRemoteProtocolVersion");
69 }
71 bool ok = yarp().write(helper, helper);
72 if (ok) {
73 return helper.helper_proto;}
74 else {
76 return failureproto;}
77}
78
79//ProtocolVersion, client side
81 {
82 auto locproto = this->getLocalProtocolVersion();
83 auto remproto = this->getRemoteProtocolVersion();
84 if (remproto.protocol_version != locproto.protocol_version)
85 {
86 yCError(SERVICE_LOG_COMPONENT) << "Invalid communication protocol.";
87 yCError(SERVICE_LOG_COMPONENT) << "Local Protocol Version: " << locproto.toString();
88 yCError(SERVICE_LOG_COMPONENT) << "Remote Protocol Version: " << remproto.toString();
89 return false;
90 }
91 return true;
92}
93
94//ProtocolVersion, server side
96{
98 //myproto.protocol_version using default value = 0
99 //to change this value add the following line to the .thrift file:
100 //const i16 protocol_version = <your_number_here>
101 myproto.protocol_version = 0;
105 return myproto;
106}
107
108// set_language helper class declaration
110 public yarp::os::Portable
111{
112public:
114 explicit ISpeechTranscriptionMsgs_set_language_helper(const std::string& language);
115 bool write(yarp::os::ConnectionWriter& connection) const override;
116 bool read(yarp::os::ConnectionReader& connection) override;
117
118 class Command :
120 {
121 public:
122 Command() = default;
123 explicit Command(const std::string& language);
124
125 ~Command() override = default;
126
127 bool write(yarp::os::ConnectionWriter& connection) const override;
128 bool read(yarp::os::ConnectionReader& connection) override;
129
130 bool write(const yarp::os::idl::WireWriter& writer) const override;
131 bool writeTag(const yarp::os::idl::WireWriter& writer) const;
132 bool writeArgs(const yarp::os::idl::WireWriter& writer) const;
133
134 bool read(yarp::os::idl::WireReader& reader) override;
137
138 std::string language{};
139 };
140
141 class Reply :
143 {
144 public:
145 Reply() = default;
146 ~Reply() override = default;
147
148 bool write(yarp::os::ConnectionWriter& connection) const override;
149 bool read(yarp::os::ConnectionReader& connection) override;
150
151 bool write(const yarp::os::idl::WireWriter& writer) const override;
152 bool read(yarp::os::idl::WireReader& reader) override;
153
155 };
156
157 using funcptr_t = return_set_language (*)(const std::string&);
159
162
163 static constexpr const char* s_tag{"set_language"};
164 static constexpr size_t s_tag_len{2};
165 static constexpr size_t s_cmd_len{3};
166 static constexpr size_t s_reply_len{1};
167 static constexpr const char* s_prototype{"return_set_language ISpeechTranscriptionMsgs::set_language(const std::string& language)"};
168 static constexpr const char* s_help{""};
169};
170
171// get_language helper class declaration
173 public yarp::os::Portable
174{
175public:
177 bool write(yarp::os::ConnectionWriter& connection) const override;
178 bool read(yarp::os::ConnectionReader& connection) override;
179
180 class Command :
182 {
183 public:
184 Command() = default;
185 ~Command() override = default;
186
187 bool write(yarp::os::ConnectionWriter& connection) const override;
188 bool read(yarp::os::ConnectionReader& connection) override;
189
190 bool write(const yarp::os::idl::WireWriter& writer) const override;
191 bool writeTag(const yarp::os::idl::WireWriter& writer) const;
192 bool writeArgs(const yarp::os::idl::WireWriter& writer) const;
193
194 bool read(yarp::os::idl::WireReader& reader) override;
197 };
198
199 class Reply :
201 {
202 public:
203 Reply() = default;
204 ~Reply() override = default;
205
206 bool write(yarp::os::ConnectionWriter& connection) const override;
207 bool read(yarp::os::ConnectionReader& connection) override;
208
209 bool write(const yarp::os::idl::WireWriter& writer) const override;
210 bool read(yarp::os::idl::WireReader& reader) override;
211
213 };
214
217
220
221 static constexpr const char* s_tag{"get_language"};
222 static constexpr size_t s_tag_len{2};
223 static constexpr size_t s_cmd_len{2};
224 static constexpr size_t s_reply_len{2};
225 static constexpr const char* s_prototype{"return_get_language ISpeechTranscriptionMsgs::get_language()"};
226 static constexpr const char* s_help{""};
227};
228
229// transcribe helper class declaration
231 public yarp::os::Portable
232{
233public:
236 bool write(yarp::os::ConnectionWriter& connection) const override;
237 bool read(yarp::os::ConnectionReader& connection) override;
238
239 class Command :
241 {
242 public:
243 Command() = default;
244 explicit Command(const yarp::sig::Sound& sound);
245
246 ~Command() override = default;
247
248 bool write(yarp::os::ConnectionWriter& connection) const override;
249 bool read(yarp::os::ConnectionReader& connection) override;
250
251 bool write(const yarp::os::idl::WireWriter& writer) const override;
252 bool writeTag(const yarp::os::idl::WireWriter& writer) const;
253 bool writeArgs(const yarp::os::idl::WireWriter& writer) const;
254
255 bool read(yarp::os::idl::WireReader& reader) override;
258
260 };
261
262 class Reply :
264 {
265 public:
266 Reply() = default;
267 ~Reply() override = default;
268
269 bool write(yarp::os::ConnectionWriter& connection) const override;
270 bool read(yarp::os::ConnectionReader& connection) override;
271
272 bool write(const yarp::os::idl::WireWriter& writer) const override;
273 bool read(yarp::os::idl::WireReader& reader) override;
274
276 };
277
280
283
284 static constexpr const char* s_tag{"transcribe"};
285 static constexpr size_t s_tag_len{1};
286 static constexpr size_t s_cmd_len{2};
287 static constexpr size_t s_reply_len{3};
288 static constexpr const char* s_prototype{"return_transcribe ISpeechTranscriptionMsgs::transcribe(const yarp::sig::Sound& sound)"};
289 static constexpr const char* s_help{""};
290};
291
292// set_language helper class implementation
297
299{
300 return cmd.write(connection);
301}
302
307
309 language{language}
310{
311}
312
314{
315 yarp::os::idl::WireWriter writer(connection);
316 if (!writer.writeListHeader(s_cmd_len)) {
317 return false;
318 }
319 return write(writer);
320}
321
323{
324 yarp::os::idl::WireReader reader(connection);
325 if (!reader.readListHeader()) {
326 reader.fail();
327 return false;
328 }
329 return read(reader);
330}
331
333{
334 if (!writeTag(writer)) {
335 return false;
336 }
337 if (!writeArgs(writer)) {
338 return false;
339 }
340 return true;
341}
342
344{
345 if (!writer.writeTag(s_tag, 1, s_tag_len)) {
346 return false;
347 }
348 return true;
349}
350
352{
353 if (!writer.writeString(language)) {
354 return false;
355 }
356 return true;
357}
358
360{
361 if (!readTag(reader)) {
362 return false;
363 }
364 if (!readArgs(reader)) {
365 return false;
366 }
367 return true;
368}
369
371{
372 std::string tag = reader.readTag(s_tag_len);
373 if (reader.isError()) {
374 return false;
375 }
376 if (tag != s_tag) {
377 reader.fail();
378 return false;
379 }
380 return true;
381}
382
384{
385 if (reader.noMore()) {
386 reader.fail();
387 return false;
388 }
389 if (!reader.readString(language)) {
390 reader.fail();
391 return false;
392 }
393 if (!reader.noMore()) {
394 reader.fail();
395 return false;
396 }
397 return true;
398}
399
401{
402 yarp::os::idl::WireWriter writer(connection);
403 return write(writer);
404}
405
411
413{
414 if (!writer.isNull()) {
415 if (!writer.writeListHeader(s_reply_len)) {
416 return false;
417 }
418 if (!writer.write(return_helper)) {
419 return false;
420 }
421 }
422 return true;
423}
424
426{
427 if (!reader.readListReturn()) {
428 return false;
429 }
430 if (reader.noMore()) {
431 reader.fail();
432 return false;
433 }
434 if (!reader.read(return_helper)) {
435 reader.fail();
436 return false;
437 }
438 return true;
439}
440
445
446// get_language helper class implementation
448{
449 return cmd.write(connection);
450}
451
456
458{
459 yarp::os::idl::WireWriter writer(connection);
460 if (!writer.writeListHeader(s_cmd_len)) {
461 return false;
462 }
463 return write(writer);
464}
465
467{
468 yarp::os::idl::WireReader reader(connection);
469 if (!reader.readListHeader()) {
470 reader.fail();
471 return false;
472 }
473 return read(reader);
474}
475
477{
478 if (!writeTag(writer)) {
479 return false;
480 }
481 if (!writeArgs(writer)) {
482 return false;
483 }
484 return true;
485}
486
488{
489 if (!writer.writeTag(s_tag, 1, s_tag_len)) {
490 return false;
491 }
492 return true;
493}
494
496{
497 return true;
498}
499
501{
502 if (!readTag(reader)) {
503 return false;
504 }
505 if (!readArgs(reader)) {
506 return false;
507 }
508 return true;
509}
510
512{
513 std::string tag = reader.readTag(s_tag_len);
514 if (reader.isError()) {
515 return false;
516 }
517 if (tag != s_tag) {
518 reader.fail();
519 return false;
520 }
521 return true;
522}
523
525{
526 if (!reader.noMore()) {
527 reader.fail();
528 return false;
529 }
530 return true;
531}
532
534{
535 yarp::os::idl::WireWriter writer(connection);
536 return write(writer);
537}
538
544
546{
547 if (!writer.isNull()) {
548 if (!writer.writeListHeader(s_reply_len)) {
549 return false;
550 }
551 if (!writer.write(return_helper)) {
552 return false;
553 }
554 }
555 return true;
556}
557
559{
560 if (!reader.readListReturn()) {
561 return false;
562 }
563 if (reader.noMore()) {
564 reader.fail();
565 return false;
566 }
567 if (!reader.read(return_helper)) {
568 reader.fail();
569 return false;
570 }
571 return true;
572}
573
578
579// transcribe helper class implementation
584
586{
587 return cmd.write(connection);
588}
589
594
599
601{
602 yarp::os::idl::WireWriter writer(connection);
603 if (!writer.writeListHeader(s_cmd_len)) {
604 return false;
605 }
606 return write(writer);
607}
608
610{
611 yarp::os::idl::WireReader reader(connection);
612 if (!reader.readListHeader()) {
613 reader.fail();
614 return false;
615 }
616 return read(reader);
617}
618
620{
621 if (!writeTag(writer)) {
622 return false;
623 }
624 if (!writeArgs(writer)) {
625 return false;
626 }
627 return true;
628}
629
631{
632 if (!writer.writeTag(s_tag, 1, s_tag_len)) {
633 return false;
634 }
635 return true;
636}
637
639{
640 if (!writer.writeNested(sound)) {
641 return false;
642 }
643 return true;
644}
645
647{
648 if (!readTag(reader)) {
649 return false;
650 }
651 if (!readArgs(reader)) {
652 return false;
653 }
654 return true;
655}
656
658{
659 std::string tag = reader.readTag(s_tag_len);
660 if (reader.isError()) {
661 return false;
662 }
663 if (tag != s_tag) {
664 reader.fail();
665 return false;
666 }
667 return true;
668}
669
671{
672 if (reader.noMore()) {
673 reader.fail();
674 return false;
675 }
676 if (!reader.readNested(sound)) {
677 reader.fail();
678 return false;
679 }
680 if (!reader.noMore()) {
681 reader.fail();
682 return false;
683 }
684 return true;
685}
686
688{
689 yarp::os::idl::WireWriter writer(connection);
690 return write(writer);
691}
692
694{
695 yarp::os::idl::WireReader reader(connection);
696 return read(reader);
697}
698
700{
701 if (!writer.isNull()) {
702 if (!writer.writeListHeader(s_reply_len)) {
703 return false;
704 }
705 if (!writer.write(return_helper)) {
706 return false;
707 }
708 }
709 return true;
710}
711
713{
714 if (!reader.readListReturn()) {
715 return false;
716 }
717 if (reader.noMore()) {
718 reader.fail();
719 return false;
720 }
721 if (!reader.read(return_helper)) {
722 reader.fail();
723 return false;
724 }
725 return true;
726}
727
732
733// Constructor
738
740{
741 if (!yarp().canWrite()) {
743 }
745 bool ok = yarp().write(helper, helper);
746 return ok ? helper.reply.return_helper : return_set_language{};
747}
748
750{
751 if (!yarp().canWrite()) {
753 }
755 bool ok = yarp().write(helper, helper);
756 return ok ? helper.reply.return_helper : return_get_language{};
757}
758
760{
761 if (!yarp().canWrite()) {
763 }
765 bool ok = yarp().write(helper, helper);
766 return ok ? helper.reply.return_helper : return_transcribe{};
767}
768
769// help method
770std::vector<std::string> ISpeechTranscriptionMsgs::help(const std::string& functionName)
771{
772 bool showAll = (functionName == "--all");
773 std::vector<std::string> helpString;
774 if (showAll) {
775 helpString.emplace_back("*** Available commands:");
779 helpString.emplace_back("help");
780 } else {
783 }
786 }
789 }
790 if (functionName == "help") {
791 helpString.emplace_back("std::vector<std::string> help(const std::string& functionName = \"--all\")");
792 helpString.emplace_back("Return list of available commands, or help message for a specific function");
793 helpString.emplace_back("@param functionName name of command for which to get a detailed description. If none or '--all' is provided, print list of available commands");
794 helpString.emplace_back("@return list of strings (one string per line)");
795 }
796 }
797 if (helpString.empty()) {
798 helpString.emplace_back("Command not found");
799 }
800 return helpString;
801}
802
803// read from ConnectionReader
805{
806 constexpr size_t max_tag_len = 2;
807 size_t tag_len = 1;
808
809 yarp::os::idl::WireReader reader(connection);
810 reader.expectAccept();
811 if (!reader.readListHeader()) {
812 reader.fail();
813 return false;
814 }
815
816 std::string tag = reader.readTag(1);
817 bool direct = (tag == "__direct__");
818 if (direct) {
819 tag = reader.readTag(1);
820 }
821 while (tag_len <= max_tag_len && !reader.isError()) {
822 if(tag == "getRemoteProtocolVersion") {
823 if (!reader.noMore()) {
824 yError("Reader invalid protocol?! %s:%d - %s", __FILE__, __LINE__, __YFUNCTION__);
825 reader.fail();
826 return false;
827 }
828
829 auto proto = getLocalProtocolVersion();
830
831 yarp::os::idl::WireWriter writer(reader);
832 if (!writer.writeListHeader(1)) {
833 yWarning("Writer invalid protocol?! %s:%d - %s", __FILE__, __LINE__, __YFUNCTION__);
834 return false;}
835 if (!writer.write(proto)) {
836 yWarning("Writer invalid protocol?! %s:%d - %s", __FILE__, __LINE__, __YFUNCTION__);
837 return false;
838 }
839 reader.accept();
840 return true;
841 }
844 if (!helper.cmd.readArgs(reader)) {
845 return false;
846 }
847
848 helper.call(this);
849
850 yarp::os::idl::WireWriter writer(reader);
851 if (!helper.reply.write(writer)) {
852 return false;
853 }
854 reader.accept();
855 return true;
856 }
859 if (!helper.cmd.readArgs(reader)) {
860 return false;
861 }
862
863 helper.call(this);
864
865 yarp::os::idl::WireWriter writer(reader);
866 if (!helper.reply.write(writer)) {
867 return false;
868 }
869 reader.accept();
870 return true;
871 }
874 if (!helper.cmd.readArgs(reader)) {
875 return false;
876 }
877
878 helper.call(this);
879
880 yarp::os::idl::WireWriter writer(reader);
881 if (!helper.reply.write(writer)) {
882 return false;
883 }
884 reader.accept();
885 return true;
886 }
887 if (tag == "help") {
888 std::string functionName;
889 if (!reader.readString(functionName)) {
890 functionName = "--all";
891 }
892 auto help_strings = help(functionName);
893 yarp::os::idl::WireWriter writer(reader);
894 if (!writer.isNull()) {
895 if (!writer.writeListHeader(2)) {
896 return false;
897 }
898 if (!writer.writeTag("many", 1, 0)) {
899 return false;
900 }
901 if (!writer.writeListBegin(0, help_strings.size())) {
902 return false;
903 }
904 for (const auto& help_string : help_strings) {
905 if (!writer.writeString(help_string)) {
906 return false;
907 }
908 }
909 if (!writer.writeListEnd()) {
910 return false;
911 }
912 }
913 reader.accept();
914 return true;
915 }
916 if (reader.noMore()) {
917 reader.fail();
918 return false;
919 }
920 std::string next_tag = reader.readTag(1);
921 if (next_tag.empty()) {
922 break;
923 }
924 tag.append("_").append(next_tag);
925 tag_len = std::count(tag.begin(), tag.end(), '_') + 1;
926 }
927 return false;
928}
#define yError(...)
Definition Log.h:361
#define __YFUNCTION__
Definition Log.h:24
#define yWarning(...)
Definition Log.h:340
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool writeTag(const yarp::os::idl::WireWriter &writer) const
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool writeArgs(const yarp::os::idl::WireWriter &writer) const
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool writeTag(const yarp::os::idl::WireWriter &writer) const
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool writeArgs(const yarp::os::idl::WireWriter &writer) const
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
return_set_language(*)(const std::string &) funcptr_t
bool writeTag(const yarp::os::idl::WireWriter &writer) const
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool writeArgs(const yarp::os::idl::WireWriter &writer) const
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
bool write(yarp::os::ConnectionWriter &connection) const override
Write this object to a network connection.
return_transcribe(*)(const yarp::sig::Sound &) funcptr_t
virtual yarp::os::ApplicationNetworkProtocolVersion getLocalProtocolVersion()
virtual return_transcribe transcribe(const yarp::sig::Sound &sound)
virtual yarp::os::ApplicationNetworkProtocolVersion getRemoteProtocolVersion()
virtual return_set_language set_language(const std::string &language)
bool read(yarp::os::ConnectionReader &connection) override
Read this object from a network connection.
virtual return_get_language get_language()
virtual std::vector< std::string > help(const std::string &functionName="--all")
An interface for reading from a network connection.
An interface for writing to a network connection.
This is a base class for objects that can be both read from and be written to the YARP network.
Definition Portable.h:25
yarp::os::WireLink & yarp()
Get YARP state associated with this object.
Definition Wire.h:28
A "tamed" Portable, that promises to serialize itself in an IDL-friendly way.
IDL-friendly connection reader.
Definition WireReader.h:27
bool readNested(WirePortable &obj)
bool readString(std::string &str, bool *is_vocab=nullptr)
std::string readTag(size_t len=static_cast< size_t >(-1))
bool read(WirePortable &obj)
IDL-friendly connection writer.
Definition WireWriter.h:28
bool write(const WirePortable &obj) const
bool writeListHeader(int len) const
bool writeTag(const char *tag, int split, int len) const
bool writeString(const std::string &str, bool skip_tag=false) const
bool writeNested(const WirePortable &obj) const
bool writeListBegin(int tag, size_t len) const
Class for storing sounds See Audio in YARP for additional documentation on YARP audio.
Definition Sound.h:25
#define yCError(component,...)
#define YARP_LOG_COMPONENT(name,...)
The main, catch-all namespace for YARP.
Definition dirs.h:16
#define YARP_VERSION_PATCH
Definition version.h:12
#define YARP_VERSION_MAJOR
Definition version.h:10
#define YARP_VERSION_MINOR
Definition version.h:11