summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--maximus/functioncall/src/FunctionSciMsg.cpp7
-rw-r--r--maximus/networkclock/inc/NetworkClockEvt.h8
-rw-r--r--maximus/networkclock/inc/NetworkClockEvtList.h37
-rw-r--r--maximus/networkclock/inc/NetworkClockProcessor.h5
-rw-r--r--maximus/networkclock/src/ClockSciMsg.cpp12
-rw-r--r--maximus/networkclock/src/NetworkClockEvt.cpp22
-rw-r--r--maximus/networkclock/src/NetworkClockEvtList.cpp303
-rw-r--r--maximus/networkclock/src/NetworkClockEvtListTest.cpp153
-rw-r--r--maximus/networkclock/src/NetworkClockProcessor.cpp27
-rw-r--r--maximus/networkclock/src/NetworkClockProcessorTest.cpp32
-rw-r--r--maximus/sci/src/SciMsg.cpp28
-rw-r--r--maximus/system/inc/Station.h2
-rw-r--r--maximus/system/src/Station.cpp27
-rw-r--r--maximus/system/src/SystemSciMsg.cpp4
14 files changed, 274 insertions, 393 deletions
diff --git a/maximus/functioncall/src/FunctionSciMsg.cpp b/maximus/functioncall/src/FunctionSciMsg.cpp
index a1644b48f0..abc49de373 100644
--- a/maximus/functioncall/src/FunctionSciMsg.cpp
+++ b/maximus/functioncall/src/FunctionSciMsg.cpp
@@ -863,8 +863,13 @@ bool FunctionSciMsg::setSpecializedSciMsgHeader ( const Function_Call_Header * p
if ( (NULL != p_specialized_sci_msg_header) && (NULL != mpSpecializedSciMsgHeader) )
{
*mpSpecializedSciMsgHeader = *p_specialized_sci_msg_header;
+
+ // Set specialized SCI msg attributes from specialized SCI msg header
+ //
+ bSetHeader = setSpecializedSciMsgType (static_cast<Function_Call_Type>(getSpecializedSciMsgHeader()->type));
+ bSetHeader &= setSpecializedSciMsgParametersNumber (static_cast<Function_Call_Parameters_Number>(getSpecializedSciMsgHeader()->param_nb));
+
displaySpecializedSciMsgHeader();
- bSetHeader = true;
}
else
{
diff --git a/maximus/networkclock/inc/NetworkClockEvt.h b/maximus/networkclock/inc/NetworkClockEvt.h
index 3ffb9a0e4d..776aca8d39 100644
--- a/maximus/networkclock/inc/NetworkClockEvt.h
+++ b/maximus/networkclock/inc/NetworkClockEvt.h
@@ -55,8 +55,8 @@ private:
//
Sci_Msg_Station_Id mStationId;
- Network_Clock_Id mNetworkClockId;
Network_Clock_Type mNetworkClockType;
+ Network_Clock_Id mNetworkClockId;
protected:
@@ -84,7 +84,7 @@ public:
* Copy Constructors
*/
NetworkClockEvt ( const NetworkClockEvt & evt );
- NetworkClockEvt ( const NetworkClockEvt * evt );
+ //NetworkClockEvt ( const NetworkClockEvt * evt );
/**
* Empty Destructor
@@ -97,8 +97,8 @@ public:
bool operator== ( const NetworkClockEvt & evt ) const;
NetworkClockEvt & operator= ( const NetworkClockEvt & evt );
-
- void display ( ) const;
+
+ void displayEvt ( ) const;
// public attribute accessor methods
//
diff --git a/maximus/networkclock/inc/NetworkClockEvtList.h b/maximus/networkclock/inc/NetworkClockEvtList.h
index 7201f7d044..40e3d98e88 100644
--- a/maximus/networkclock/inc/NetworkClockEvtList.h
+++ b/maximus/networkclock/inc/NetworkClockEvtList.h
@@ -36,7 +36,8 @@ The original location of this file is /home/buret/eclipse/maximus/networkclock/i
#include "networkclock_types.h"
class NetworkClockEvt;
-typedef std::multimap<const Network_Clock_Tick, const NetworkClockEvt *> Multimap;
+
+typedef std::multimap<const Network_Clock_Tick, const NetworkClockEvt> Multimap;
/**
@@ -56,7 +57,7 @@ private:
// private attributes
//
- Multimap * mpListOfEvts;
+ Multimap mListOfEvts;
protected:
@@ -80,44 +81,40 @@ public:
// public methods
//
-
- /**
- * Return true is mpListOfEvts is empty
- * @return bool
- */
- bool isListEmpty ( );
/**
* @return bool
* @param tick_value
* @param evt_to_insert
*/
- bool insertElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt * evt_to_insert );
+ bool insertElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt & evt_to_insert );
/**
* @return bool
* @param evt_to_remove
*/
- bool removeElement ( const NetworkClockEvt * evt_to_remove );
+ bool removeElement ( const NetworkClockEvt & evt_to_remove );
/**
* @return bool
* @param tick_value
* @param evt_to_remove
*/
- bool removeElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt * evt_to_remove );
+ bool removeElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt & evt_to_remove );
/**
* @return bool
* @param evt_to_add
*/
- bool addElement ( const NetworkClockEvt * evt_to_add );
+ bool addElement ( const NetworkClockEvt & evt_to_add );
/**
* @return bool
* @param next_evt_to_process
*/
- bool getNextElement ( const Network_Clock_Tick tick_value, NetworkClockEvt ** next_evt_to_process );
+ bool getNextElement ( const Network_Clock_Tick tick_value, NetworkClockEvt & next_evt_to_process );
+
+ void displayListOfEvts ( ) const;
// public attribute accessor methods
//
@@ -126,16 +123,16 @@ public:
//
/**
- * Set the value of mpListOfEvts
- * @param network_clock_evt_list the new value of mpListOfEvts
+ * Set the value of mListOfEvts
+ * @param list_of_evts the new value of mListOfEvts
*/
- bool setListOfEvts ( Multimap * p_list_of_evts );
+ bool setListOfEvts ( Multimap & list_of_evts );
/**
- * Get the value of mpListOfEvts
- * @return the value of mpListOfEvts
+ * Get the value of mListOfEvts
+ * @return the value of mListOfEvts
*/
- Multimap * getListOfEvts ( ) const;
+ Multimap & getListOfEvts ( );
// protected attribute accessor methods
//
@@ -146,8 +143,6 @@ private:
//
void initAttributes ( ) ;
-
- void displayListOfEvts ( ) const;
void displayListOfEvts ( const Network_Clock_Tick tick_value ) const;
diff --git a/maximus/networkclock/inc/NetworkClockProcessor.h b/maximus/networkclock/inc/NetworkClockProcessor.h
index 2a3eaded33..0e45ba06f0 100644
--- a/maximus/networkclock/inc/NetworkClockProcessor.h
+++ b/maximus/networkclock/inc/NetworkClockProcessor.h
@@ -170,6 +170,11 @@ public:
*/
Network_Clock_Tick getCurrentTickValue ( ) const;
+ /**
+ * @return the value of mpNetworkClockEvtList
+ */
+ NetworkClockEvtList * getNetworkClockEvtList ( );
+
// protected attribute accessor methods
//
diff --git a/maximus/networkclock/src/ClockSciMsg.cpp b/maximus/networkclock/src/ClockSciMsg.cpp
index 47bd9d5e50..ef9eb350ef 100644
--- a/maximus/networkclock/src/ClockSciMsg.cpp
+++ b/maximus/networkclock/src/ClockSciMsg.cpp
@@ -371,8 +371,18 @@ bool ClockSciMsg::setSpecializedSciMsgHeader ( const Network_Clock_Header * p_sp
if ( (NULL != p_specialized_sci_msg_header) && (NULL != mpSpecializedSciMsgHeader) )
{
*mpSpecializedSciMsgHeader = *p_specialized_sci_msg_header;
+
+ // Recompose tick value
+ //
+ uint64_t tempTickValue = (static_cast<uint64_t>(getSpecializedSciMsgHeader()->tick_high)<<32) + static_cast<uint64_t>(getSpecializedSciMsgHeader()->tick_low);
+
+ // Set specialized SCI msg attributes from specialized SCI msg header
+ //
+ bSetHeader = setSpecializedSciMsgType (static_cast<Network_Clock_Type>(getSpecializedSciMsgHeader()->type));
+ bSetHeader &= setSpecializedSciMsgId (static_cast<Network_Clock_Id>(getSpecializedSciMsgHeader()->id));
+ bSetHeader &= setSpecializedSciMsgTick (static_cast<Network_Clock_Tick>(tempTickValue));
+
displaySpecializedSciMsgHeader();
- bSetHeader = true;
}
else
{
diff --git a/maximus/networkclock/src/NetworkClockEvt.cpp b/maximus/networkclock/src/NetworkClockEvt.cpp
index b82ee0788d..1acc9c37f2 100644
--- a/maximus/networkclock/src/NetworkClockEvt.cpp
+++ b/maximus/networkclock/src/NetworkClockEvt.cpp
@@ -44,8 +44,8 @@ using namespace std;
NetworkClockEvt::NetworkClockEvt ( ):
mStationId(0),
-mNetworkClockId(0),
-mNetworkClockType(NETWORK_CLOCK_TYPE_NONE)
+mNetworkClockType(NETWORK_CLOCK_TYPE_NONE),
+mNetworkClockId(0)
{
//clog << "NetworkClockEvt()" << endl;
@@ -59,8 +59,8 @@ NetworkClockEvt::NetworkClockEvt ( const Sci_Msg_Station_Id station_id,
//clog << "NetworkClockEvt(...)" << endl;
setStationId (station_id);
- setNetworkClockId (id);
setNetworkClockType (type);
+ setNetworkClockId (id);
initAttributes();
}
@@ -71,13 +71,13 @@ NetworkClockEvt::NetworkClockEvt ( const NetworkClockEvt & evt )
//clog << "NetworkClockEvt(NetworkClockEvt&)" << endl;
setStationId (evt.getStationId());
- setNetworkClockId (evt.getNetworkClockId());
setNetworkClockType (evt.getNetworkClockType());
+ setNetworkClockId (evt.getNetworkClockId());
initAttributes();
}
-
+/*
NetworkClockEvt::NetworkClockEvt ( const NetworkClockEvt * evt )
{
//clog << "NetworkClockEvt(NetworkClockEvt*)" << endl;
@@ -85,8 +85,8 @@ NetworkClockEvt::NetworkClockEvt ( const NetworkClockEvt * evt )
if (NULL != evt)
{
setStationId (evt->getStationId());
- setNetworkClockId (evt->getNetworkClockId());
setNetworkClockType (evt->getNetworkClockType());
+ setNetworkClockId (evt->getNetworkClockId());
}
else
{
@@ -95,7 +95,7 @@ NetworkClockEvt::NetworkClockEvt ( const NetworkClockEvt * evt )
initAttributes();
}
-
+*/
void NetworkClockEvt::initAttributes ( )
{
@@ -108,7 +108,7 @@ NetworkClockEvt::~NetworkClockEvt ( )
//clog << "~NetworkClockEvt" << endl;
//clog << "\tdelete event ";
- //display();
+ //displayEvt();
//clog << endl;
}
@@ -151,11 +151,11 @@ NetworkClockEvt & NetworkClockEvt::operator= ( const NetworkClockEvt & evt )
}
-void NetworkClockEvt::display ( ) const
+void NetworkClockEvt::displayEvt ( ) const
{
- clog << "[station id = 0x" << setfill('0') << setw(4) << uppercase << hex << getStationId() << ", network clock id = 0x" << setfill('0') << setw(4) << uppercase << hex << getNetworkClockId() << ", ";
+ clog << "[station id = 0x" << setfill('0') << setw(4) << uppercase << hex << getStationId() << ", ";
displayNetworkClockType();
- clog << "]";
+ clog << ", network clock id = 0x" << setfill('0') << setw(4) << uppercase << hex << getNetworkClockId() << "]";
}
diff --git a/maximus/networkclock/src/NetworkClockEvtList.cpp b/maximus/networkclock/src/NetworkClockEvtList.cpp
index d14fe77ef2..a96392cee6 100644
--- a/maximus/networkclock/src/NetworkClockEvtList.cpp
+++ b/maximus/networkclock/src/NetworkClockEvtList.cpp
@@ -28,12 +28,11 @@ This file was generated on %date% at %time%
The original location of this file is /home/buret/eclipse/maximus/networkclock/src/NetworkClockEvtList.cpp
**************************************************************************/
-#include <iostream> // for 'cout'
-
#include "NetworkClockEvtList.h"
#include "NetworkClockEvt.h"
#include "Error.h"
+#include <iostream> // for 'cout'
using namespace std; // for 'cout' and 'multimap'
@@ -52,12 +51,6 @@ NetworkClockEvtList::NetworkClockEvtList ( )
void NetworkClockEvtList::initAttributes ( )
{
clog << "NetworkClockEvtList::initAttributes"<< endl;
-
- mpListOfEvts = new Multimap ();
- if (NULL == mpListOfEvts)
- {
- throw Error("NetworkClockEvtList::initAttributes", "Initialized Multimap pointer is NULL");
- }
}
@@ -65,22 +58,7 @@ NetworkClockEvtList::~NetworkClockEvtList ( )
{
clog << "~NetworkClockEvtList"<< endl;
- if (NULL != mpListOfEvts)
- {
- if (!mpListOfEvts->empty())
- {
- for (Multimap::const_iterator it = mpListOfEvts->begin(); it != mpListOfEvts->end(); ++it)
- {
- if (NULL != it->second)
- {
- delete(it->second);
- }
- }
- mpListOfEvts->clear();
- }
- //delete (mpListOfEvts);
- mpListOfEvts = NULL;
- }
+ mListOfEvts.clear();
}
@@ -97,178 +75,144 @@ NetworkClockEvtList::~NetworkClockEvtList ( )
//
-bool NetworkClockEvtList::isListEmpty( )
-{
- //clog << "NetworkClockEvtList::isListEmpty"<< endl;
-
- bool bEmpty = false;
-
- if (NULL != mpListOfEvts)
- {
- bEmpty = mpListOfEvts->empty();
- }
- else
- {
- throw Error("NetworkClockEvtList::isListEmpty", "Initialized Multimap pointer is NULL");
- }
-
- return bEmpty;
-}
-
-
-bool NetworkClockEvtList::insertElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt * evt_to_insert )
+bool NetworkClockEvtList::insertElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt & evt_to_insert )
{
//clog << "NetworkClockEvtList::insertElement" << endl;
bool bInsert = false;
- if (NULL != evt_to_insert)
+ // If the event to insert already exists in the list, it is an update
+ // 1. Remove this event from the list
+ //
+ if (removeElement(evt_to_insert))
{
- if (NULL != mpListOfEvts)
- {
- // If the event to insert already exists in the list, it is an update
- // 1. Remove this event from the list
- //
- if (removeElement(evt_to_insert))
- {
- //clog << "\tupdate tick at which the event has to be processed" << endl;
- }
-
- // 2. Insert the event at the required tick
- //
- mpListOfEvts->insert(Multimap::value_type(tick_value, evt_to_insert)); // return Multimap::iterator
- //displayListOfEvts (tick_value);
- bInsert = true;
- }
- else
- {
- throw Error("NetworkClockEvtList::insertElement", "Initialized Multimap pointer is NULL");
- }
- }
- else
- {
- throw Error("NetworkClockEvtList::insertElement", "Received event pointer is NULL");
+ //clog << "\tupdate tick at which the event has to be processed" << endl;
}
+
+ // 2. Insert the event at the required tick
+ //
+ mListOfEvts.insert(Multimap::value_type(tick_value, evt_to_insert)); // return Multimap::iterator
+ //displayListOfEvts (tick_value);
+ bInsert = true;
return bInsert;
}
-bool NetworkClockEvtList::removeElement ( const NetworkClockEvt * evt_to_remove )
+bool NetworkClockEvtList::removeElement ( const NetworkClockEvt & evt_to_remove )
{
//clog << "NetworkClockEvtList::removeElement" << endl;
bool bRemove = false;
+
//displayListOfEvts();
- if (NULL != mpListOfEvts)
+ for (Multimap::iterator it = mListOfEvts.begin(); it != mListOfEvts.end(); ++it)
{
- for (Multimap::iterator it = mpListOfEvts->begin(); it != mpListOfEvts->end(); ++it)
+ if ( !bRemove && (evt_to_remove == it->second) )
{
- if ( !bRemove && (*evt_to_remove == *(it->second)) )
- {
- if (NULL != it->second)
- {
- //clog << "\tremove element ";
- //it->second->display();
- //clog << " at tick " << it->first << endl;
- delete(it->second);
- mpListOfEvts->erase(it);
- //displayListOfEvts();
- bRemove = true;
- }
- }
+ //clog << "\tremove element ";
+ //it->second.displayEvt();
+ //clog << " at tick " << it->first << endl;
+ mListOfEvts.erase(it);
+ //displayListOfEvts();
+ bRemove = true;
}
}
- else
- {
- throw Error("NetworkClockEvtList::removeElement", "Initialized Multimap pointer is NULL");
- }
-
+
return bRemove;
}
-bool NetworkClockEvtList::removeElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt * evt_to_remove )
+bool NetworkClockEvtList::removeElement ( const Network_Clock_Tick tick_value, const NetworkClockEvt & evt_to_remove )
{
//clog << "NetworkClockEvtList::removeElement" << endl;
bool bRemove = false;
+
//displayListOfEvts();
- if (NULL != mpListOfEvts)
- {
- pair<Multimap::iterator, Multimap::iterator> evtsToRemove = mpListOfEvts->equal_range(tick_value);
+ pair<Multimap::iterator, Multimap::iterator> evtsToRemove = mListOfEvts.equal_range(tick_value);
- for (Multimap::iterator it = evtsToRemove.first; it != evtsToRemove.second; ++it)
+ for (Multimap::iterator it = evtsToRemove.first; it != evtsToRemove.second; ++it)
+ {
+ if ( !bRemove && (evt_to_remove == it->second) )
{
- if ( !bRemove && (*evt_to_remove == *(it->second)) )
- {
- //clog << "\tremove element ";
- //it->second->display();
- //clog << " at tick " << tick_value << endl;
- delete(it->second);
- mpListOfEvts->erase(it);
- //displayListOfEvts();
- bRemove = true;
- }
+ //clog << "\tremove element ";
+ //it->second.displayEvt();
+ //clog << " at tick " << tick_value << endl;
+ mListOfEvts.erase(it);
+ //displayListOfEvts();
+ bRemove = true;
}
}
- else
- {
- throw Error("NetworkClockEvtList::removeElement", "Initialized Multimap pointer is NULL");
- }
-
+
return bRemove;
}
-bool NetworkClockEvtList::addElement ( const NetworkClockEvt * evt_to_add )
+bool NetworkClockEvtList::addElement ( const NetworkClockEvt & evt_to_add )
{
return false;
}
-bool NetworkClockEvtList::getNextElement ( const Network_Clock_Tick tick_value, NetworkClockEvt ** next_evt_to_process )
+bool NetworkClockEvtList::getNextElement ( const Network_Clock_Tick tick_value, NetworkClockEvt & next_evt_to_process )
{
bool bGet = false;
//displayListOfEvts();
+
static Network_Clock_Tick currentTickValue = -1;
static Multimap::const_iterator evtIterator;
static pair<Multimap::const_iterator, Multimap::const_iterator> evtsToProcess;
- if (NULL != mpListOfEvts)
+ if (currentTickValue != tick_value)
{
- if (currentTickValue != tick_value)
+ removePreviousElements (currentTickValue);
+ currentTickValue = tick_value;
+ if (!mListOfEvts.empty())
{
- removePreviousElements (currentTickValue);
- currentTickValue = tick_value;
- if (!mpListOfEvts->empty())
- {
- evtsToProcess = mpListOfEvts->equal_range(tick_value);
- evtIterator = evtsToProcess.first;
- }
+ evtsToProcess = mListOfEvts.equal_range(tick_value);
+ evtIterator = evtsToProcess.first;
}
+ }
- if (!mpListOfEvts->empty())
+ if (!mListOfEvts.empty())
+ {
+ if (evtIterator != evtsToProcess.second)
{
- if (evtIterator != evtsToProcess.second)
- {
- *next_evt_to_process = const_cast<NetworkClockEvt*>(evtIterator->second);
- ++evtIterator;
- //clog << "\tcurrent tick value = " << tick_value << endl;
- //clog << "\tnext event to process is ";
- //next_evt_to_process.display();
- //clog << endl;
- bGet = true;
- }
+ next_evt_to_process = NetworkClockEvt(evtIterator->second);
+ ++evtIterator;
+ //clog << "\tcurrent tick value = " << tick_value << endl;
+ //clog << "\tnext event to process is ";
+ //next_evt_to_process.displayEvt();
+ //clog << endl;
+ bGet = true;
+ }
+ }
+
+ return bGet;
+}
+
+
+void NetworkClockEvtList::displayListOfEvts ( ) const
+{
+ //clog << "NetworkClockEvtList::displayListOfEvts" << endl;
+
+ if (!mListOfEvts.empty())
+ {
+ clog << "\tlist of events = " << endl;
+ for (Multimap::const_iterator it = mListOfEvts.begin(); it != mListOfEvts.end(); ++it)
+ {
+ clog << "\t\t[" << it->first << ", ";
+ const NetworkClockEvt evt = it->second;
+ evt.displayEvt();
+ clog << "]" << endl;
}
}
else
{
- throw Error("NetworkClockEvtList::getNextElement", "Initialized Multimap pointer is NULL");
+ clog << "\tlist of events is empty!" << endl;
}
-
- return bGet;
-}
+}
// private methods
@@ -278,83 +222,36 @@ bool NetworkClockEvtList::getNextElement ( const Network_Clock_Tick tick_value,
bool NetworkClockEvtList::removePreviousElements ( const Network_Clock_Tick tick_value )
{
//clog << "NetworkClockEvtList::removePreviousElements" << endl;
- bool bRemoveOld = false;
+ bool bRemove = false;
- if (NULL != mpListOfEvts)
+ if (!mListOfEvts.empty())
{
- if (!mpListOfEvts->empty())
- {
- pair<Multimap::const_iterator, Multimap::const_iterator> evtsToRemove = mpListOfEvts->equal_range(tick_value);
- for (Multimap::const_iterator it = evtsToRemove.first; it != evtsToRemove.second; ++it)
- {
- delete (it->second);
- }
- //clog << "\tremove " << mpListOfEvts->erase(tick_value) << " element(s)" << endl; // returns Multimap::size_type
- bRemoveOld = true;
- }
- else
- {
- //clog << "\tno elements to remove!" << endl;
- }
-
+ mListOfEvts.erase(tick_value);
+ //Multimap::size_type numberOfEvts = mListOfEvts.erase(tick_value);
+ //clog << "\tremove " << numberOfEvts << " element(s)" << endl;
//displayListOfEvts();
+ bRemove = true;
}
else
{
- throw Error("NetworkClockEvtList::removePreviousElements", "Initialized Multimap pointer is NULL");
+ //clog << "\tno elements to remove!" << endl;
}
- return bRemoveOld;
+ return bRemove;
}
-void NetworkClockEvtList::displayListOfEvts ( ) const
-{
- //clog << "NetworkClockEvtList::displayListOfEvts" << endl;
-
- if (NULL != mpListOfEvts)
- {
- if (!mpListOfEvts->empty())
- {
- clog << "\tlist of events = " << endl;
- for (Multimap::const_iterator it = mpListOfEvts->begin(); it != mpListOfEvts->end(); ++it)
- {
- clog << "\t\t[" << it->first << ", ";
- const NetworkClockEvt * evt = it->second;
- evt->display();
- clog << "]" << endl;
- }
- }
- else
- {
- clog << "\tlist of events is empty!" << endl;
- }
- }
- else
- {
- throw Error("NetworkClockEvtList::displayListOfEvts", "Initialized Multimap pointer is NULL");
- }
-}
-
-
void NetworkClockEvtList::displayListOfEvts ( const Network_Clock_Tick tick_value ) const
{
//clog << "NetworkClockEvtList::displayListOfEvts" << endl;
- if (NULL != mpListOfEvts)
+ if (!mListOfEvts.empty())
{
- if (!mpListOfEvts->empty())
- {
- clog << "\tnumber of elements at tick " << tick_value << ": " << mpListOfEvts->count(tick_value) << endl;
- }
- else
- {
- clog << "\tlist of events is empty!" << endl;
- }
+ clog << "\tnumber of elements at tick " << tick_value << ": " << mListOfEvts.count(tick_value) << endl;
}
else
{
- throw Error("NetworkClockEvtList::displayListOfEvts", "Initialized Multimap pointer is NULL");
+ clog << "\tlist of events is empty!" << endl;
}
}
@@ -379,25 +276,19 @@ void NetworkClockEvtList::displayListOfEvts ( const Network_Clock_Tick tick_valu
//
-bool NetworkClockEvtList::setListOfEvts ( Multimap * p_list_of_evts )
+bool NetworkClockEvtList::setListOfEvts ( Multimap & list_of_evts )
{
//clog << "NetworkClockEvtList::setListOfEvts" << endl;
- if (NULL != p_list_of_evts)
- {
- mpListOfEvts = p_list_of_evts;
- }
- else
- {
- throw Error("NetworkClockEvtList::displayListOfEvts", "Received Multimap pointer is NULL");
- }
-
+ mListOfEvts = list_of_evts;
+ displayListOfEvts();
+
return true;
}
-Multimap * NetworkClockEvtList::getListOfEvts ( ) const
+Multimap & NetworkClockEvtList::getListOfEvts ( )
{
- return mpListOfEvts;
+ return mListOfEvts;
}
diff --git a/maximus/networkclock/src/NetworkClockEvtListTest.cpp b/maximus/networkclock/src/NetworkClockEvtListTest.cpp
index 1f5477c6d1..e23c09e2c1 100644
--- a/maximus/networkclock/src/NetworkClockEvtListTest.cpp
+++ b/maximus/networkclock/src/NetworkClockEvtListTest.cpp
@@ -38,22 +38,17 @@ void NetworkClockEvtListTest::insertElementTest (void)
clog << "*** UNITARY TEST OF NetworkClockEvtList::insertElement ***" << endl;
clog << "\tNetworkClockEvtListTest -> NetworkClockEvt()" << endl;
- NetworkClockEvt * evt = new NetworkClockEvt (); // will be deleted by NetworkClockList
+ NetworkClockEvt evt;
- if (NULL != evt)
- {
- clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setId" << endl;
- CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("setNetworkClockId failed"),
- evt->setNetworkClockId(123) );
- }
- else
- {
- CPPUNIT_FAIL ( "Initialized NetworkClockEvt pointer is NULL" );
- }
+ clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setId" << endl;
+ CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("setNetworkClockId failed"),
+ evt.setNetworkClockId(123) );
clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::insertElement" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertElement failed"),
mpNetworkClockEvtList->insertElement (1, evt) );
+
+ mpNetworkClockEvtList->displayListOfEvts();
clog << "-------------------------------------------------------------------------------------" << endl;
clog << endl;
@@ -69,110 +64,78 @@ void NetworkClockEvtListTest::removeElementTest (void)
// Insert Event 1
//
clog << "\tNetworkClockEvtListTest -> NetworkClockEvt()" << endl;
- NetworkClockEvt * evt1 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt1)
- {
- clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setId" << endl;
- CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("setNetworkClockId failed"),
- evt1->setNetworkClockId(1) );
- }
- else
- {
- CPPUNIT_FAIL ( "Initialized NetworkClockEvt pointer is NULL" );
- }
+ NetworkClockEvt evt1;
+ clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setId" << endl;
+ CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("setNetworkClockId failed"),
+ evt1.setNetworkClockId(1) );
clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::insertElement" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertElement failed"),
mpNetworkClockEvtList->insertElement (2, evt1) );
// Insert Event 2
//
- NetworkClockEvt * evt2 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt2)
- {
- evt2->setNetworkClockId(2);
- }
+ NetworkClockEvt evt2;
+ evt2.setNetworkClockId(2);
mpNetworkClockEvtList->insertElement (3, evt2);
// Insert Event 3
//
- NetworkClockEvt * evt3 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt3)
- {
- evt3->setNetworkClockId(3);
- }
+ NetworkClockEvt evt3;
+ evt3.setNetworkClockId(3);
mpNetworkClockEvtList->insertElement (65, evt3);
// Insert Event 4
//
- NetworkClockEvt * evt4 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt4)
- {
- evt4->setNetworkClockId(4);
- }
+ NetworkClockEvt evt4;
+ evt4.setNetworkClockId(4);
mpNetworkClockEvtList->insertElement (5, evt4);
// Insert Event 5
//
- NetworkClockEvt * evt5 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt5)
- {
- evt5->setNetworkClockId(5);
- }
+ NetworkClockEvt evt5;
+ evt5.setNetworkClockId(5);
mpNetworkClockEvtList->insertElement (687, evt5);
// Insert Event 6
//
- NetworkClockEvt * evt6 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt6)
- {
- evt6->setNetworkClockId(6);
- }
+ NetworkClockEvt evt6;
+ evt6.setNetworkClockId(6);
mpNetworkClockEvtList->insertElement (98726, evt6);
// Insert Event 7
//
- NetworkClockEvt * evt7 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt7)
- {
- evt7->setNetworkClockId(7);
- }
+ NetworkClockEvt evt7;
+ evt7.setNetworkClockId(7);
mpNetworkClockEvtList->insertElement (0, evt7);
// Insert Event 8
//
- NetworkClockEvt * evt8 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt8)
- {
- evt8->setNetworkClockId(8);
- }
+ NetworkClockEvt evt8;
+ evt8.setNetworkClockId(8);
mpNetworkClockEvtList->insertElement (1, evt8);
// Insert Event 9
//
- NetworkClockEvt * evt9 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt9)
- {
- evt9->setNetworkClockId(9);
- }
+ NetworkClockEvt evt9;
+ evt9.setNetworkClockId(9);
mpNetworkClockEvtList->insertElement (68, evt9);
// Insert Event 10
//
- NetworkClockEvt * evt10 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt10)
- {
- evt10->setNetworkClockId(10);
- }
+ NetworkClockEvt evt10;
+ evt10.setNetworkClockId(10);
mpNetworkClockEvtList->insertElement (2, evt10);
// Update Event 7
//
- NetworkClockEvt * evt7bis = new NetworkClockEvt (evt7); // will be deleted by NetworkClockList
+ NetworkClockEvt evt7bis (evt7);
mpNetworkClockEvtList->insertElement (7, evt7bis);
clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::removeElement" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("removeElement failed"),
mpNetworkClockEvtList->removeElement (2, evt1) );
+
+ mpNetworkClockEvtList->displayListOfEvts();
clog << "-------------------------------------------------------------------------------------" << endl;
clog << endl;
@@ -188,59 +151,43 @@ void NetworkClockEvtListTest::getNextElementTest (void)
// Insert Event 1
//
clog << "\tNetworkClockEvtListTest -> NetworkClockEvt()" << endl;
- NetworkClockEvt * evt1 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt1)
- {
- clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setName" << endl;
- evt1->setNetworkClockId(1);
- }
- else
- {
- CPPUNIT_FAIL ( "Initialized NetworkClockEvt pointer is NULL" );
- }
+ NetworkClockEvt evt1;
+ clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::setName" << endl;
+ evt1.setNetworkClockId(1);
clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::insertElement" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertElement failed"),
mpNetworkClockEvtList->insertElement (0, evt1) );
// Insert Event 2
//
- NetworkClockEvt * evt2 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt2)
- {
- evt2->setNetworkClockId(2);
- }
+ NetworkClockEvt evt2;
+ evt2.setNetworkClockId(2);
mpNetworkClockEvtList->insertElement (3524, evt2);
// Insert Event 3
//
- NetworkClockEvt * evt3 = new NetworkClockEvt (); // will be deleted by NetworkClockList
- if (NULL != evt3)
- {
- evt3->setNetworkClockId(3);
- }
+ NetworkClockEvt evt3;
+ evt3.setNetworkClockId(3);
mpNetworkClockEvtList->insertElement (6457, evt3);
// Insert Event 4
//
- NetworkClockEvt * evt4 = new NetworkClockEvt (evt3); // will be deleted by NetworkClockList
- if (NULL != evt4)
- {
- evt4->setNetworkClockId(4);
- }
+ NetworkClockEvt evt4;
+ evt4.setNetworkClockId(4);
mpNetworkClockEvtList->insertElement (111, evt4);
- /*
+
+ mpNetworkClockEvtList->displayListOfEvts();
+
clog << "\tNetworkClockEvtListTest -> NetworkClockEvt()" << endl;
- NetworkClockEvt * evt = new NetworkClockEvt (0, NETWORK_CLOCK_TYPE_STATION, 0); // will be deleted by NetworkClockList
+ NetworkClockEvt evt (0, NETWORK_CLOCK_TYPE_STATION, 0);
clog << "\tNetworkClockEvtListTest -> NetworkClockEvtList::getNextElement" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("getNextElement failed"),
- mpNetworkClockEvtList->getNextElement (3524, &evt) );
-
- if (NULL != evt)
- {
- delete(evt);
- evt = NULL;
- }
- */
+ mpNetworkClockEvtList->getNextElement (3524, evt) );
+
+ clog << "\tget element is ";
+ evt.displayEvt();
+ clog << endl;
+
clog << "-------------------------------------------------------------------------------------" << endl;
clog << endl;
}
diff --git a/maximus/networkclock/src/NetworkClockProcessor.cpp b/maximus/networkclock/src/NetworkClockProcessor.cpp
index 698ea141b7..9c869ea1e7 100644
--- a/maximus/networkclock/src/NetworkClockProcessor.cpp
+++ b/maximus/networkclock/src/NetworkClockProcessor.cpp
@@ -171,9 +171,9 @@ bool NetworkClockProcessor::insertEvt ( const Network_Clock_Tick tick_value, con
clog << "NetworkClockProcessor::insertEvt" << endl;
bool bInsert = false;
- NetworkClockEvt * evtToInsert = new NetworkClockEvt (evt_to_insert); // will be deleted by NetworkClockList
+ NetworkClockEvt evtToInsert = NetworkClockEvt (evt_to_insert);
- if ( (NULL != mpNetworkClockEvtList) && (NULL != evtToInsert) )
+ if (NULL != mpNetworkClockEvtList)
{
if ( mpNetworkClockEvtList->insertElement (tick_value, evtToInsert) )
{
@@ -196,7 +196,7 @@ bool NetworkClockProcessor::removeEvt ( const Network_Clock_Tick tick_value, con
if (NULL != mpNetworkClockEvtList)
{
- if ( mpNetworkClockEvtList->removeElement (tick_value, &evt_to_remove) )
+ if ( mpNetworkClockEvtList->removeElement (tick_value, evt_to_remove) )
{
bRemove = true;
}
@@ -220,12 +220,12 @@ bool NetworkClockProcessor::processNextEvt ( )
//
if ( (NULL != mpNetworkClockEvtList) && (NULL != mpSystemManager) )
{
- NetworkClockEvt * evtToProcess = new NetworkClockEvt();
- if ( mpNetworkClockEvtList->getNextElement (getCurrentTickValue(), &evtToProcess) )
+ NetworkClockEvt evtToProcess;
+ if ( mpNetworkClockEvtList->getNextElement (getCurrentTickValue(), evtToProcess) )
{
// If an event has been get, process it
//
- bProcess = callMemberFunction (*this, arrayProcess[evtToProcess->getNetworkClockType()]) (*evtToProcess);
+ bProcess = callMemberFunction (*this, arrayProcess[evtToProcess.getNetworkClockType()]) (evtToProcess);
}
else
{
@@ -233,14 +233,7 @@ bool NetworkClockProcessor::processNextEvt ( )
{
bProcess = incrementCurrentTickValue();
}
- }
-
- if (NULL != evtToProcess)
- {
- delete(evtToProcess);
- evtToProcess = NULL;
- }
-
+ }
}
else
{
@@ -473,6 +466,12 @@ Network_Clock_Tick NetworkClockProcessor::getCurrentTickValue ( ) const
}
+NetworkClockEvtList * NetworkClockProcessor::getNetworkClockEvtList ( )
+{
+ return mpNetworkClockEvtList;
+}
+
+
// protected attribute accessor methods
//
diff --git a/maximus/networkclock/src/NetworkClockProcessorTest.cpp b/maximus/networkclock/src/NetworkClockProcessorTest.cpp
index fce76d9f17..8717d26999 100644
--- a/maximus/networkclock/src/NetworkClockProcessorTest.cpp
+++ b/maximus/networkclock/src/NetworkClockProcessorTest.cpp
@@ -1,5 +1,6 @@
#include "NetworkClockProcessorTest.h"
+#include "NetworkClockEvtList.h"
#include "Error.h"
#include "Station.h"
@@ -89,9 +90,9 @@ void NetworkClockProcessorTest::createEvtTest (void)
try
{
clog << "\tNetworkClockProcessorTest -> NetworkClockEvt(...)" << endl;
- NetworkClockEvt * evt = new NetworkClockEvt (123, NETWORK_CLOCK_TYPE_NONE, 456); // will be deleted by NetworkClockEvtList
+ NetworkClockEvt evt (123, NETWORK_CLOCK_TYPE_NONE, 456);
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::createEvt" << endl;
- mpNetworkClockProcessor->createEvt(555, *evt);
+ mpNetworkClockProcessor->createEvt(555, evt);
}
catch ( Error &e )
{
@@ -119,19 +120,19 @@ void NetworkClockProcessorTest::removeEvtTest (void)
try
{
clog << "\tNetworkClockProcessorTest -> NetworkClockEvt(...)" << endl;
- NetworkClockEvt * evt = new NetworkClockEvt (789, NETWORK_CLOCK_TYPE_NONE, 1011);
+ NetworkClockEvt evt (789, NETWORK_CLOCK_TYPE_NONE, 1011);
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::removeEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("removeEvt failed"),
- !mpNetworkClockProcessor->removeEvt(555, *evt) );
+ !mpNetworkClockProcessor->removeEvt(555, evt) );
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::insertEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertEvt failed"),
- mpNetworkClockProcessor->insertEvt(555, *evt) );
+ mpNetworkClockProcessor->insertEvt(555, evt) );
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::removeEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("removeEvt failed"),
- mpNetworkClockProcessor->removeEvt(555, *evt) );
+ mpNetworkClockProcessor->removeEvt(555, evt) );
}
catch ( Error &e )
{
@@ -163,14 +164,15 @@ void NetworkClockProcessorTest::processNextEvtTest (void)
if (NULL != station)
{
stationId = station->getStationId();
+ station->setStationStatus(MAXIMUS_STATION_STATUS_IDLE);
}
clog << "\tNetworkClockProcessorTest -> NetworkClockEvt(...)" << endl;
- NetworkClockEvt * evt = new NetworkClockEvt (stationId, NETWORK_CLOCK_TYPE_STATION, 0); // will be deleted by NetworkClockEvtList
+ NetworkClockEvt evt (stationId, NETWORK_CLOCK_TYPE_STATION, 0);
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::insertEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertEvt failed"),
- mpNetworkClockProcessor->insertEvt(0, *evt) );
+ mpNetworkClockProcessor->insertEvt(0, evt) );
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::processNextEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("processNextEvt failed"),
@@ -178,21 +180,27 @@ void NetworkClockProcessorTest::processNextEvtTest (void)
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::insertEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertEvt failed"),
- mpNetworkClockProcessor->insertEvt(1, *evt) );
+ mpNetworkClockProcessor->insertEvt(1, evt) );
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::processNextEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("processNextEvt failed"),
mpNetworkClockProcessor->processNextEvt() );
clog << "\tNetworkClockProcessorTest -> NetworkClockEvt(...)" << endl;
- NetworkClockEvt * evtToProcess = new NetworkClockEvt (stationId, NETWORK_CLOCK_TYPE_STATION, 0); // will be deleted by NetworkClockEvtList
+ NetworkClockEvt evtToProcess (stationId, NETWORK_CLOCK_TYPE_STATION, 0);
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::insertEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("insertEvt failed"),
- mpNetworkClockProcessor->insertEvt(10, *evtToProcess) );
+ mpNetworkClockProcessor->insertEvt(4, evtToProcess) );
- for (unsigned int i=0; i<15; i++)
+ mpNetworkClockProcessor->getNetworkClockEvtList()->displayListOfEvts();
+
+ for (unsigned int i=0; i<10; i++)
{
+ if (NULL != station)
+ {
+ station->setStationStatus(MAXIMUS_STATION_STATUS_IDLE);
+ }
clog << "\tNetworkClockProcessorTest -> NetworkClockProcessor::processNextEvt" << endl;
CPPUNIT_ASSERT_MESSAGE ( CPPUNIT_NS::Message("processNextEvt failed"),
mpNetworkClockProcessor->processNextEvt() );
diff --git a/maximus/sci/src/SciMsg.cpp b/maximus/sci/src/SciMsg.cpp
index 7134d21b77..0c39ff56f5 100644
--- a/maximus/sci/src/SciMsg.cpp
+++ b/maximus/sci/src/SciMsg.cpp
@@ -554,30 +554,22 @@ bool SciMsg::setSciMsgHeader ( const Sci_Msg_Header * p_sci_msg_header )
//clog << "SciMsg::setSciMsgHeader" << endl;
bool bSetHeader = false;
- if (NULL != p_sci_msg_header)
+ if ( (NULL != p_sci_msg_header) && (NULL != mpSciMsgHeader) )
{
- mpSciMsgHeader = new Sci_Msg_Header;
- if (NULL != mpSciMsgHeader)
- {
- *mpSciMsgHeader = *p_sci_msg_header;
+ *mpSciMsgHeader = *p_sci_msg_header;
- // Set SCI msg attributes from SCI msg header
- //
- setSciMsgType (static_cast<Sci_Msg_Type>(getSciMsgHeader()->type));
- setSciMsgStationId (static_cast<Sci_Msg_Station_Id>(getSciMsgHeader()->station_id));
- setSciMsgFlag (static_cast<Sci_Msg_Flag>(getSciMsgHeader()->flags));
+ // Set SCI msg attributes from SCI msg header
+ //
+ setSciMsgType (static_cast<Sci_Msg_Type>(getSciMsgHeader()->type));
+ setSciMsgStationId (static_cast<Sci_Msg_Station_Id>(getSciMsgHeader()->station_id));
+ setSciMsgFlag (static_cast<Sci_Msg_Flag>(getSciMsgHeader()->flags));
- displaySciMsgHeader();
- bSetHeader = true;
- }
- else
- {
- throw Error("SciMsg::setSciMsgHeader", "Initialized SCI message header pointer is NULL");
- }
+ displaySciMsgHeader();
+ bSetHeader = true;
}
else
{
- throw Error("SciMsg::setSciMsgHeader", "Received SCI messsage header pointer is NULL");
+ throw Error("SciMsg::setSciMsgHeader", "SCI messsage header pointer is NULL");
}
return bSetHeader;
diff --git a/maximus/system/inc/Station.h b/maximus/system/inc/Station.h
index bc8834bfcf..4914b88710 100644
--- a/maximus/system/inc/Station.h
+++ b/maximus/system/inc/Station.h
@@ -183,6 +183,8 @@ private:
void launchEcosProcess ( const char * station_exec );
void initAttributes ( );
+
+ void displayStationStatus ( ) const;
protected:
diff --git a/maximus/system/src/Station.cpp b/maximus/system/src/Station.cpp
index 749cf63b77..a440d020b9 100644
--- a/maximus/system/src/Station.cpp
+++ b/maximus/system/src/Station.cpp
@@ -231,7 +231,9 @@ bool Station::setStationStatus ( const Station_Status status )
//clog << "Station::setStationStatus" << endl;
mStationStatus = status;
- //clog << "\tstation status = " << mStationStatus << endl;
+ //clog << "\tstation status = ";
+ //displayStationStatus();
+ //clog << endl;
return true;
}
@@ -299,6 +301,29 @@ void Station::launchEcosProcess ( const char * station_exec )
}
+void Station::displayStationStatus ( ) const
+{
+ switch (getStationStatus())
+ {
+ case 0:
+ clog << "MAXIMUS_STATION_STATUS_NONE";
+ break;
+ case 1:
+ clog << "MAXIMUS_STATION_STATUS_IDLE";
+ break;
+ case 2:
+ clog << "MAXIMUS_STATION_STATUS_BUSY";
+ break;
+ case 3:
+ clog << "MAXIMUS_STATION_STATUS_DEACTIVATED";
+ break;
+ default:
+ clog << "unknown";
+ break;
+ }
+}
+
+
// protected methods
//
diff --git a/maximus/system/src/SystemSciMsg.cpp b/maximus/system/src/SystemSciMsg.cpp
index 0ebd9907cb..b714fee3ac 100644
--- a/maximus/system/src/SystemSciMsg.cpp
+++ b/maximus/system/src/SystemSciMsg.cpp
@@ -292,8 +292,10 @@ bool SystemSciMsg::setSpecializedSciMsgHeader ( const System_Header * p_speciali
if ( (NULL != p_specialized_sci_msg_header) && (NULL != mpSpecializedSciMsgHeader) )
{
*mpSpecializedSciMsgHeader = *p_specialized_sci_msg_header;
+
+ bSetHeader = setSpecializedSciMsgType (static_cast<System_Type>(getSpecializedSciMsgHeader()->type));
+
displaySpecializedSciMsgHeader();
- bSetHeader = true;
}
else
{