Un système de production est représenté par la classe ProductionSystem, dont toute instance est destinée à recevoir trois composants :
- une instance de la classe ControlledSystem
- une instance de la classe OperatingSystem
- une instance de la classe Manager
Cette classe ne possède pas de descripteur, méthode ou service propre.
Une simulation ne gère généralement qu'un seul système de production, qui est alors l'"entité simulée" attachée à l'instance pCurrentSim.
Dans un fichier de données externe, la déclaration s'opère sur l'exemple suivant :
+ I myEntity, pEA, // ... ; + I controlledSystem pCS attachedEntity = <I><, pEA>; ; + I operatingSystem pOS // ... ; + I myManager pSD // ... ; + I productionSystem pSP <- C <I><, pCS>; <- C <I><, pOS>; <- C <I><, pSD>; ; ENTITE_SIMULEE <I><,pSP>;Si la construction est fait dans le code C++, on écrit par exemple :
{ //... Entity* pEA = new MyEntity(); Entity* pCS = new ControlledSystem(); pCS->SetEntityConstValue(ATTACHED_ENTITY, pEA); Entity* pOS = new OperatingSystem(); Entity* pSD = new MyManager(); Entity* pSP = new ProductionSystem(); pSP->AddComponent(pCS); pSP->AddComponent(pOS); pSP->AddComponent(pSD); pCurrentSim->SimulatedEntity(pSP); //... }