[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
applications/HLA_Tutorial DisplayServiceExplana...
From: |
certi-cvs |
Subject: |
applications/HLA_Tutorial DisplayServiceExplana... |
Date: |
Tue, 06 Nov 2007 18:04:49 +0000 |
CVSROOT: /sources/certi
Module name: applications
Changes by: Christian Stenzel <approx> 07/11/06 18:04:49
Modified files:
HLA_Tutorial : DisplayServiceExplanation.cc
DisplayServiceExplanation.hh
DisplayServiceMessages.hh
DisplayServiceMessages.hh.in
GenerateMessagesHeader.cmake
controllerFederate.cc
Log message:
some dispService methods added
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/DisplayServiceExplanation.cc?cvsroot=certi&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/DisplayServiceExplanation.hh?cvsroot=certi&r1=1.2&r2=1.3
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/DisplayServiceMessages.hh?cvsroot=certi&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/DisplayServiceMessages.hh.in?cvsroot=certi&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/GenerateMessagesHeader.cmake?cvsroot=certi&r1=1.1&r2=1.2
http://cvs.savannah.gnu.org/viewcvs/applications/HLA_Tutorial/controllerFederate.cc?cvsroot=certi&r1=1.4&r2=1.5
Patches:
Index: DisplayServiceExplanation.cc
===================================================================
RCS file:
/sources/certi/applications/HLA_Tutorial/DisplayServiceExplanation.cc,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -b -r1.3 -r1.4
--- DisplayServiceExplanation.cc 1 Nov 2007 13:19:12 -0000 1.3
+++ DisplayServiceExplanation.cc 6 Nov 2007 18:04:49 -0000 1.4
@@ -25,6 +25,8 @@
this->getKeyFromCmdLine();
}
+/* Federation Management - RTI services */
+
void
DisplayServiceExplanation::dispFederationManagement(void) {
system(DS_CLEAR_CONSOLE_COMMAND);
@@ -67,3 +69,32 @@
std::cout << DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC<< std::endl;
this->getKeyFromCmdLine();
}
+
+/* Declaration Management - RTI services */
+
+void
+DisplayServiceExplanation::dispDeclarationManagement(void) {
+ system(DS_CLEAR_CONSOLE_COMMAND);
+ std::cout << DS_MSG_DECLARATION_MANAGEMENT << std::endl;
+ this->getKeyFromCmdLine();
+}
+
+/* Ancillary Services */
+
+void
+DisplayServiceExplanation::dispGetObjectClassHandle(void) {
+ system(DS_CLEAR_CONSOLE_COMMAND);
+ std::cout << DS_MSG_GET_OBJECT_CLASS_HANDLE << std::endl;
+ std::cout << std::endl;
+ std::cout << DS_MSG_GET_OBJECT_CLASS_HANDLE_SRC << std::endl;
+ this->getKeyFromCmdLine();
+}
+
+void
+DisplayServiceExplanation::dispGetAttributeHandle(void) {
+ system(DS_CLEAR_CONSOLE_COMMAND);
+ std::cout << DS_MSG_GET_ATTRIBUTE_HANDLE << std::endl;
+ std::cout << std::endl;
+ std::cout << DS_MSG_GET_ATTRIBUTE_HANDLE_SRC << std::endl;
+ this->getKeyFromCmdLine();
+}
Index: DisplayServiceExplanation.hh
===================================================================
RCS file:
/sources/certi/applications/HLA_Tutorial/DisplayServiceExplanation.hh,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -b -r1.2 -r1.3
--- DisplayServiceExplanation.hh 1 Nov 2007 13:16:51 -0000 1.2
+++ DisplayServiceExplanation.hh 6 Nov 2007 18:04:49 -0000 1.3
@@ -18,11 +18,11 @@
/* destructor */
~DisplayServiceExplanation(void);
- /* Federation Management - RTI services */
-
void
dispTutorialIntroduction(void);
+ /* Federation Management - RTI services */
+
void
dispFederationManagement(void);
@@ -37,6 +37,20 @@
void
dispDestroyFederationExecution(void);
+
+ /* Declaration Management - RTI services */
+
+ void
+ dispDeclarationManagement(void);
+
+ /* Ancillary Services */
+
+ void
+ dispGetObjectClassHandle(void);
+
+ void
+ dispGetAttributeHandle(void);
+
};
#endif /* DISPLAY_SERVICE_EXPLANATION_H */
Index: DisplayServiceMessages.hh
===================================================================
RCS file: /sources/certi/applications/HLA_Tutorial/DisplayServiceMessages.hh,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- DisplayServiceMessages.hh 1 Nov 2007 13:19:12 -0000 1.1
+++ DisplayServiceMessages.hh 6 Nov 2007 18:04:49 -0000 1.2
@@ -33,19 +33,19 @@
file holding the federation object model (FOM). \
"
-#define DS_MSG_CREATE_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n244: /* create federation execution */\n\
-245- try {\n\
-246- rtiAmb.createFederationExecution(federationName.c_str(), \n\
-247- fedFile.c_str());\n\
-248- } catch ( RTI::FederationExecutionAlreadyExists ) {\n\
-249- cout << \"Federation already created by another federate.\" \n\
-250- << endl;\n\
-251- } catch ( RTI::Exception &e ) {\n\
-252- cerr << \"RTI exception: \" << e._name << \" [\"\n\
-253- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
-254- } catch ( ... ) {\n\
-255- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
-256- }\n\
+#define DS_MSG_CREATE_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n241: /* create federation execution */\n\
+242- try {\n\
+243- rtiAmb.createFederationExecution(federationName.c_str(), \n\
+244- fedFile.c_str());\n\
+245- } catch ( RTI::FederationExecutionAlreadyExists ) {\n\
+246- cout << \"Federation already created by another federate.\" \n\
+247- << endl;\n\
+248- } catch ( RTI::Exception &e ) {\n\
+249- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+250- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+251- } catch ( ... ) {\n\
+252- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+253- }\n\
"
#define DS_MSG_JOIN_FEDERATION_EXECUTION "\
@@ -56,36 +56,37 @@
ambassador implementation. \
"
-#define DS_MSG_JOIN_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n260: /* join federation execution */\n\
-261- try {\n\
-262- rtiAmb.joinFederationExecution(federateName.c_str(),\n\
-263- federationName.c_str(),\n\
-264- &myFedAmb);\n\
-265- } catch ( RTI::Exception &e ) {\n\
-266- cerr << \"RTI exception: \" << e._name << \" [\"\n\
-267- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
-268- } catch ( ... ) {\n\
-269- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
-270- }\n\
+#define DS_MSG_JOIN_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n257: /* join federation execution */\n\
+258- try {\n\
+259- rtiAmb.joinFederationExecution(federateName.c_str(),\n\
+260- federationName.c_str(),\n\
+261- &myFedAmb);\n\
+262- } catch ( RTI::Exception &e ) {\n\
+263- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+264- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+265- } catch ( ... ) {\n\
+266- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+267- }\n\
"
#define DS_MSG_RESIGN_FEDERATION_EXECUTION "\
Federation Management -> Resign Federation Execution\n\n\
The RTI ambassador service resignFederationExecution is used by a federate \
-when leaving the federation. \
+when leaving the federation. The required ResignAction parameter resolves
ownership of \
+any attributes owned by the federate. Allowed values are: RELEASE_ATTRIBUTES, \
+DELETE_OBJECT, DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES (common practice),
NO_ACTION. \
"
-#define DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n441: /* resign federation execution */\n\
-442- try {\n\
-443- rtiAmb.resignFederationExecution(\n\
-444- RTI::DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES);\n\
-445- } catch ( RTI::Exception &e ) {\n\
-446- cerr << \"RTI exception: \" << e._name << \" [\"\n\
-447- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
-448- } catch ( ... ) {\n\
-449- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
-450- }\n\
-451-\n\
+#define DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n447: /* resign federation execution */\n\
+448- try {\n\
+449- rtiAmb.resignFederationExecution(\n\
+450- RTI::DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES);\n\
+451- } catch ( RTI::Exception &e ) {\n\
+452- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+453- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+454- } catch ( ... ) {\n\
+455- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+456- }\n\
"
#define DS_MSG_DESTROY_FEDERATION_EXECUTION "\
@@ -95,19 +96,57 @@
execution. \
"
-#define DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n454: /* destroy federation execution */\n\
-455- try {\n\
-456- rtiAmb.destroyFederationExecution(federationName.c_str());\n\
-457- } catch (RTI::FederatesCurrentlyJoined) {\n\
-458- cout << \"Federates currently joined.\" << endl;\n\
-459- } catch ( RTI::Exception &e ) {\n\
-460- cerr << \"RTI exception: \" << e._name << \" [\"\n\
-461- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
-462- } catch ( ... ) {\n\
-463- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
-464- }\n\
+#define DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC "Example from file:
controllerFederate.cc\n460: /* destroy federation execution */\n\
+461- try {\n\
+462- rtiAmb.destroyFederationExecution(federationName.c_str());\n\
+463- } catch (RTI::FederatesCurrentlyJoined) {\n\
+464- cout << \"Federates currently joined.\" << endl;\n\
+465- } catch ( RTI::Exception &e ) {\n\
+466- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+467- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+468- } catch ( ... ) {\n\
+469- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+470- }\n\
"
+#define DS_MSG_DECLARATION_MANAGEMENT "\
+Declaration Management\n\n \
+ "
+
+#define DS_MSG_GET_OBJECT_CLASS_HANDLE "\
+Ancillary Service -> Get Object Class Handle\n\n \
+ "
+
+#define DS_MSG_GET_OBJECT_CLASS_HANDLE_SRC "Example from file:
controllerFederate.cc\n277: /* get object class handle */\n\
+278- RTI::ObjectClassHandle twoLevelContrID;\n\
+279-\n\
+280- try {\n\
+281- twoLevelContrID =
rtiAmb.getObjectClassHandle(\"TwoLevelControllerClass\");\n\
+282- } catch ( RTI::Exception &e ) {\n\
+283- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+284- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+285- } catch ( ... ) {\n\
+286- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+287- }\n\
+"
+
+#define DS_MSG_GET_ATTRIBUTE_HANDLE "\
+Ancillary Service -> Get Attribute Handle\n\n \
+ "
+
+#define DS_MSG_GET_ATTRIBUTE_HANDLE_SRC "Example from file:
controllerFederate.cc\n291: /* get attribute handle */\n\
+292- RTI::AttributeHandle uID, yID;\n\
+293- try {\n\
+294- uID = rtiAmb.getAttributeHandle(\"U\", twoLevelContrID);\n\
+295- } catch ( RTI::Exception &e ) {\n\
+296- cerr << \"RTI exception: \" << e._name << \" [\"\n\
+297- << (e._reason ? e._reason : \"undefined\") << \"].\" << endl;\n\
+298- } catch ( ... ) {\n\
+299- cerr << \"Error: unknown non-RTI exception.\" << endl;\n\
+300- }\n\
+"
+
+
#ifdef _WIN32
#define DS_CLEAR_CONSOLE_COMMAND "cls"
#else
Index: DisplayServiceMessages.hh.in
===================================================================
RCS file:
/sources/certi/applications/HLA_Tutorial/DisplayServiceMessages.hh.in,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- DisplayServiceMessages.hh.in 1 Nov 2007 13:19:12 -0000 1.1
+++ DisplayServiceMessages.hh.in 6 Nov 2007 18:04:49 -0000 1.2
@@ -48,7 +48,9 @@
#define DS_MSG_RESIGN_FEDERATION_EXECUTION "\
Federation Management -> Resign Federation Execution\n\n\
The RTI ambassador service resignFederationExecution is used by a federate \
-when leaving the federation. \
+when leaving the federation. The required ResignAction parameter resolves
ownership of \
+any attributes owned by the federate. Allowed values are: RELEASE_ATTRIBUTES, \
+DELETE_OBJECT, DELETE_OBJECTS_AND_RELEASE_ATTRIBUTES (common practice),
NO_ACTION. \
"
#define DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC
"@DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC@"
@@ -62,6 +64,23 @@
#define DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC
"@DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC@"
+#define DS_MSG_DECLARATION_MANAGEMENT "\
+Declaration Management\n\n \
+ "
+
+#define DS_MSG_GET_OBJECT_CLASS_HANDLE "\
+Ancillary Service -> Get Object Class Handle\n\n \
+ "
+
+#define DS_MSG_GET_OBJECT_CLASS_HANDLE_SRC
"@DS_MSG_GET_OBJECT_CLASS_HANDLE_SRC@"
+
+#define DS_MSG_GET_ATTRIBUTE_HANDLE "\
+Ancillary Service -> Get Attribute Handle\n\n \
+ "
+
+#define DS_MSG_GET_ATTRIBUTE_HANDLE_SRC "@DS_MSG_GET_ATTRIBUTE_HANDLE_SRC@"
+
+
#ifdef _WIN32
#define DS_CLEAR_CONSOLE_COMMAND "cls"
#else
Index: GenerateMessagesHeader.cmake
===================================================================
RCS file:
/sources/certi/applications/HLA_Tutorial/GenerateMessagesHeader.cmake,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- GenerateMessagesHeader.cmake 1 Nov 2007 13:19:12 -0000 1.1
+++ GenerateMessagesHeader.cmake 6 Nov 2007 18:04:49 -0000 1.2
@@ -41,10 +41,15 @@
ENDMACRO(GREP_SOURCE SRC_FILE FROM_STRING FOR_NB_LINES VARNAME)
IF(UNIX)
+ # federation management
GREP_SOURCE(controllerFederate.cc "create federation execution" 12
DS_MSG_CREATE_FEDERATION_EXECUTION_SRC)
GREP_SOURCE(controllerFederate.cc "join federation execution" 10
DS_MSG_JOIN_FEDERATION_EXECUTION_SRC)
- GREP_SOURCE(controllerFederate.cc "resign federation execution" 10
DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC)
+ GREP_SOURCE(controllerFederate.cc "resign federation execution" 9
DS_MSG_RESIGN_FEDERATION_EXECUTION_SRC)
GREP_SOURCE(controllerFederate.cc "destroy federation execution" 10
DS_MSG_DESTROY_FEDERATION_EXECUTION_SRC)
+ # declaration management
+ # ancillary services
+ GREP_SOURCE(controllerFederate.cc "get object class handle" 10
DS_MSG_GET_OBJECT_CLASS_HANDLE_SRC)
+ GREP_SOURCE(controllerFederate.cc "get attribute handle" 9
DS_MSG_GET_ATTRIBUTE_HANDLE_SRC)
# Then we generate the header using var value replacement
CONFIGURE_FILE(DisplayServiceMessages.hh.in
${CMAKE_CURRENT_SOURCE_DIR}/DisplayServiceMessages.hh)
ENDIF(UNIX)
\ No newline at end of file
Index: controllerFederate.cc
===================================================================
RCS file: /sources/certi/applications/HLA_Tutorial/controllerFederate.cc,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- controllerFederate.cc 6 Nov 2007 16:59:24 -0000 1.4
+++ controllerFederate.cc 6 Nov 2007 18:04:49 -0000 1.5
@@ -268,9 +268,14 @@
/* Declaration Management */
+ dispSE.dispDeclarationManagement();
+
/* get handles */
+
+ dispSE.dispGetObjectClassHandle();
+
+ /* get object class handle */
RTI::ObjectClassHandle twoLevelContrID;
- RTI::AttributeHandle uID, yID;
try {
twoLevelContrID =
rtiAmb.getObjectClassHandle("TwoLevelControllerClass");
@@ -281,6 +286,10 @@
cerr << "Error: unknown non-RTI exception." << endl;
}
+ dispSE.dispGetAttributeHandle();
+
+ /* get attribute handle */
+ RTI::AttributeHandle uID, yID;
try {
uID = rtiAmb.getAttributeHandle("U", twoLevelContrID);
} catch ( RTI::Exception &e ) {