MCPcopy Create free account
hub / github.com/OpenDDS/OpenDDS / run_instance

Function run_instance

tools/modeling/tests/MultiInstance/publisher.cpp:15–57  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

13
14template <class ModelType>
15int run_instance(ModelType& model, int subject_id) {
16 using OpenDDS::Model::MultiInstance::Elements;
17
18 DDS::DataWriter_var writer = model.writer( Elements::DataWriters::writer);
19
20 // START OF EXISTING MESSENGER EXAMPLE CODE
21
22 data1::MessageDataWriter_var message_writer =
23 data1::MessageDataWriter::_narrow(writer.in());
24
25 if (CORBA::is_nil(message_writer.in())) {
26 ACE_ERROR_RETURN((LM_ERROR,
27 ACE_TEXT("(%P|%t) ERROR: %N:%l: run_instance() -")
28 ACE_TEXT(" _narrow failed!\n")),
29 -1);
30 }
31 {
32 OpenDDS::Model::WriterSync ws(writer);
33 {
34 // Write samples
35 data1::Message message;
36 message.subject_id = subject_id;
37
38 message.from = CORBA::string_dup("Comic Book Guy");
39 message.subject = CORBA::string_dup("Review");
40 message.text = CORBA::string_dup("Worst. Movie. Ever.");
41 message.count = 0;
42
43 for (int i = 0; i < 10; i++) {
44 DDS::ReturnCode_t error = message_writer->write(message, DDS::HANDLE_NIL);
45 ++message.count;
46
47 if (error != DDS::RETCODE_OK) {
48 ACE_ERROR((LM_ERROR,
49 ACE_TEXT("(%P|%t) ERROR: %N:%l: run_instance() -")
50 ACE_TEXT(" write returned %d!\n"), error));
51 }
52 }
53 }
54 }
55 OpenDDS::Model::WriterSync::wait_unmatch(writer);
56 return 0;
57}
58
59int ACE_TMAIN(int argc, ACE_TCHAR** argv)
60{

Callers 1

ACE_TMAINFunction · 0.70

Calls 4

string_dupFunction · 0.85
writerMethod · 0.45
inMethod · 0.45
writeMethod · 0.45

Tested by

no test coverage detected