#include <CC_TelemetryPacketFactory.h>
Inheritance diagram for CC_TelemetryPacketFactory:
TelemetryPacket
.
A dynamic factory is a component that manages a pool of instances of components of a certain type. Clients of the factory can require one of these instances at run-time. After the factory hands over a component instance to its client, the instance is marked as "in use" and cannot be given to any other clients. When the requesting client has finished using the instance, it should release it by marking it as "no longer in use". This will allow the factory to make it available to other clients that request it. The "in use" status of the component instances is controlled through method setInUse
declared on the component instances.
A dynamic factory is configured in two steps. The first step is performed by the factory constructor when the internal data structures to hold the component instances are created. The second step is performed during application initialization when the component instances are loaded in the factory. Reconfiguration at run time during normal application operation is not allowed.
Dynamic factories are implemented as singletons. They can exist in one single instance that can be accessed through the getInstance
method. The one single instance of the class is created the first time that method getInstance is called. In order to avoid possible disruptions of real-time behaviour, applications should ensure that this method has been called at least once before the application enters its operational phase.
This factory manages the following component instances:<ul> Number of instances of type DC_DummyPUSTelemetryPacket
: 2 Number of instances of type DC_PUSDataReportingPacket
: 2 Number of instances of type DC_PUSMemoryDumpAbsolute
: 1 Number of instances of type DC_PUSMemoryDumpOffset
: 1 Number of instances of type DC_PUSTcVerificationPacket
: 1 The code for this class was automatically generated by an XSL program processing the XML-based application model.
Definition at line 61 of file CC_TelemetryPacketFactory.h.
Public Member Functions | |
virtual bool | isObjectConfigured () |
Check that all component instances required by the factory have been loaded. | |
void | setTelemetryPacket (unsigned int i, DC_DummyPUSTelemetryPacket *pItem) |
Load one instance of type DC_DummyPUSTelemetryPacket in the factory. | |
unsigned int | getNumberDummyPUSTelemetryPacket (void) |
Return the number of component instances of type DC_DummyPUSTelemetryPacket that are currently allocated. | |
unsigned int | getCapacityDummyPUSTelemetryPacket (void) |
Return the number of component instances of type DC_DummyPUSTelemetryPacket that are in the factory. | |
DC_DummyPUSTelemetryPacket * | allocateDummyPUSTelemetryPacket () |
Allocate one instance of type DC_DummyPUSTelemetryPacket . | |
bool | isFreeDummyPUSTelemetryPacket () |
Check whether a non-allocated component instance of type DC_DummyPUSTelemetryPacket is available within the factory. | |
void | setTelemetryPacket (unsigned int i, DC_PUSDataReportingPacket *pItem) |
Load one instance of type DC_PUSDataReportingPacket in the factory. | |
unsigned int | getNumberPUSDataReportingPacket (void) |
Return the number of component instances of type DC_PUSDataReportingPacket that are currently allocated. | |
unsigned int | getCapacityPUSDataReportingPacket (void) |
Return the number of component instances of type DC_PUSDataReportingPacket that are in the factory. | |
DC_PUSDataReportingPacket * | allocatePUSDataReportingPacket (unsigned int DefinitionBufferSize, unsigned int ValueBufferSize, unsigned int MaxNumberFA) |
Allocate one instance of type DC_PUSDataReportingPacket . | |
bool | isFreePUSDataReportingPacket (unsigned int DefinitionBufferSize, unsigned int ValueBufferSize, unsigned int MaxNumberFA) |
Check whether a non-allocated component instance of type DC_PUSDataReportingPacket is available within the factory. | |
DC_PUSDataReportingPacket * | getPUSDataReportingPacket (TD_SID sid) |
Return the PUS data reporting packet that is currently allocated and whose SID is equal to the value of the argument sid . | |
void | setTelemetryPacket (unsigned int i, DC_PUSMemoryDumpAbsolute *pItem) |
Load one instance of type DC_PUSMemoryDumpAbsolute in the factory. | |
unsigned int | getNumberPUSMemoryDumpAbsolute (void) |
Return the number of component instances of type DC_PUSMemoryDumpAbsolute that are currently allocated. | |
unsigned int | getCapacityPUSMemoryDumpAbsolute (void) |
Return the number of component instances of type DC_PUSMemoryDumpAbsolute that are in the factory. | |
DC_PUSMemoryDumpAbsolute * | allocatePUSMemoryDumpAbsolute (unsigned int MaxNumberBlocks, unsigned int DumpBufferSize) |
Allocate one instance of type DC_PUSMemoryDumpAbsolute . | |
bool | isFreePUSMemoryDumpAbsolute (unsigned int MaxNumberBlocks, unsigned int DumpBufferSize) |
Check whether a non-allocated component instance of type DC_PUSMemoryDumpAbsolute is available within the factory. | |
void | setTelemetryPacket (unsigned int i, DC_PUSMemoryDumpOffset *pItem) |
Load one instance of type DC_PUSMemoryDumpOffset in the factory. | |
unsigned int | getNumberPUSMemoryDumpOffset (void) |
Return the number of component instances of type DC_PUSMemoryDumpOffset that are currently allocated. | |
unsigned int | getCapacityPUSMemoryDumpOffset (void) |
Return the number of component instances of type DC_PUSMemoryDumpOffset that are in the factory. | |
DC_PUSMemoryDumpOffset * | allocatePUSMemoryDumpOffset (unsigned int MaxNumberBlocks, unsigned int DumpBufferSize) |
Allocate one instance of type DC_PUSMemoryDumpOffset . | |
bool | isFreePUSMemoryDumpOffset (unsigned int MaxNumberBlocks, unsigned int DumpBufferSize) |
Check whether a non-allocated component instance of type DC_PUSMemoryDumpOffset is available within the factory. | |
void | setTelemetryPacket (unsigned int i, DC_PUSTcVerificationPacket *pItem) |
Load one instance of type DC_PUSTcVerificationPacket in the factory. | |
unsigned int | getNumberPUSTcVerificationPacket (void) |
Return the number of component instances of type DC_PUSTcVerificationPacket that are currently allocated. | |
unsigned int | getCapacityPUSTcVerificationPacket (void) |
Return the number of component instances of type DC_PUSTcVerificationPacket that are in the factory. | |
DC_PUSTcVerificationPacket * | allocatePUSTcVerificationPacket () |
Allocate one instance of type DC_PUSTcVerificationPacket . | |
bool | isFreePUSTcVerificationPacket () |
Check whether a non-allocated component instance of type DC_PUSTcVerificationPacket is available within the factory. | |
Static Public Member Functions | |
CC_TelemetryPacketFactory * | getInstance (void) |
Get the single instance of this singleton class. | |
Protected Member Functions | |
CC_TelemetryPacketFactory (void) | |
Instantiate the factory component. |
|
Instantiate the factory component. The class identifier is set and the internal data structures to hold the component instances managed by the factory are created. This constructor is defined to be protected because this is a singleton class. Definition at line 25 of file CC_TelemetryPacketFactory.cpp. |
|
Allocate one instance of type
This method scans all the entries in the factory of type If no free component instances are found, then the method returns null. Note that no event report is generated to record the failure to allocate a component instance. Event reporting is the responsibility of the caller.
Definition at line 127 of file CC_TelemetryPacketFactory.cpp. |
|
Allocate one instance of type
This method scans all the entries in the factory of type If no free component instances are found, then the method returns null. Note that no event report is generated to record the failure to allocate a component instance. Event reporting is the responsibility of the caller.
Definition at line 167 of file CC_TelemetryPacketFactory.cpp. |
|
Allocate one instance of type
This method scans all the entries in the factory of type If no free component instances are found, then the method returns null. Note that no event report is generated to record the failure to allocate a component instance. Event reporting is the responsibility of the caller.
Definition at line 224 of file CC_TelemetryPacketFactory.cpp. |
|
Allocate one instance of type
This method scans all the entries in the factory of type If no free component instances are found, then the method returns null. Note that no event report is generated to record the failure to allocate a component instance. Event reporting is the responsibility of the caller.
Definition at line 268 of file CC_TelemetryPacketFactory.cpp. |
|
Allocate one instance of type
This method scans all the entries in the factory of type If no free component instances are found, then the method returns null. Note that no event report is generated to record the failure to allocate a component instance. Event reporting is the responsibility of the caller.
Definition at line 312 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type
The value returned is the maximum number of component instances of type
Definition at line 122 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type
The value returned is the maximum number of component instances of type
Definition at line 162 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type
The value returned is the maximum number of component instances of type
Definition at line 219 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type
The value returned is the maximum number of component instances of type
Definition at line 263 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type
The value returned is the maximum number of component instances of type
Definition at line 307 of file CC_TelemetryPacketFactory.cpp. |
|
Get the single instance of this singleton class. If the instance does not yet exist, it is created. Definition at line 100 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type A component instance is allocated if its "in use" status is equal to: "component is in use".
Definition at line 114 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type A component instance is allocated if its "in use" status is equal to: "component is in use".
Definition at line 154 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type A component instance is allocated if its "in use" status is equal to: "component is in use".
Definition at line 211 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type A component instance is allocated if its "in use" status is equal to: "component is in use".
Definition at line 255 of file CC_TelemetryPacketFactory.cpp. |
|
Return the number of component instances of type A component instance is allocated if its "in use" status is equal to: "component is in use".
Definition at line 299 of file CC_TelemetryPacketFactory.cpp. |
|
Return the PUS data reporting packet that is currently allocated and whose SID is equal to the value of the argument
This method scans all the instances of type DC_PUSDataReportingPacket in the factory and, if it finds one which is allocated (its status is "in use") and with the SID equal to
Definition at line 192 of file CC_TelemetryPacketFactory.cpp. |
|
Check whether a non-allocated component instance of type
If this method return true, then the corresponding
Definition at line 137 of file CC_TelemetryPacketFactory.cpp. |
|
Check whether a non-allocated component instance of type
If this method return true, then the corresponding
Definition at line 180 of file CC_TelemetryPacketFactory.cpp. |
|
Check whether a non-allocated component instance of type
If this method return true, then the corresponding
Definition at line 236 of file CC_TelemetryPacketFactory.cpp. |
|
Check whether a non-allocated component instance of type
If this method return true, then the corresponding
Definition at line 280 of file CC_TelemetryPacketFactory.cpp. |
|
Check whether a non-allocated component instance of type
If this method return true, then the corresponding
Definition at line 322 of file CC_TelemetryPacketFactory.cpp. |
|
Check that all component instances required by the factory have been loaded.
Reimplemented from CC_RootObject. Definition at line 56 of file CC_TelemetryPacketFactory.cpp. |
|
Load one instance of type
The component instances managed by the factory are internally stored in an array. This method loads the i-th element of the array. The argument i should lie in the interval [0,N-1] where N is the number of component instances of type The "in use" status of a newly loaded component is initialized to: "component is not in use". This is an initialization method that should only be called during the application configuration phase.
Definition at line 292 of file CC_TelemetryPacketFactory.cpp. |
|
Load one instance of type
The component instances managed by the factory are internally stored in an array. This method loads the i-th element of the array. The argument i should lie in the interval [0,N-1] where N is the number of component instances of type The "in use" status of a newly loaded component is initialized to: "component is not in use". This is an initialization method that should only be called during the application configuration phase.
Definition at line 248 of file CC_TelemetryPacketFactory.cpp. |
|
Load one instance of type
The component instances managed by the factory are internally stored in an array. This method loads the i-th element of the array. The argument i should lie in the interval [0,N-1] where N is the number of component instances of type The "in use" status of a newly loaded component is initialized to: "component is not in use". This is an initialization method that should only be called during the application configuration phase.
Definition at line 204 of file CC_TelemetryPacketFactory.cpp. |
|
Load one instance of type
The component instances managed by the factory are internally stored in an array. This method loads the i-th element of the array. The argument i should lie in the interval [0,N-1] where N is the number of component instances of type The "in use" status of a newly loaded component is initialized to: "component is not in use". This is an initialization method that should only be called during the application configuration phase.
Definition at line 147 of file CC_TelemetryPacketFactory.cpp. |
|
Load one instance of type
The component instances managed by the factory are internally stored in an array. This method loads the i-th element of the array. The argument i should lie in the interval [0,N-1] where N is the number of component instances of type The "in use" status of a newly loaded component is initialized to: "component is not in use". This is an initialization method that should only be called during the application configuration phase.
Definition at line 107 of file CC_TelemetryPacketFactory.cpp. |