semi合集-English.pdf - 第2719页
SEMI E97-0200A © SEMI 2000 39 }; // Area Contracted Services: None. Dyna mic Mo del: No ne. 6.7.5 C omponent Manager Inter face Module: FactoryOperations Interface: ComponentManager Inherited In terface: Resource Descrip…

SEMI E97-0200A © SEMI 2000 38
EquipmentTracking::Machine addMachine (in EquipmentTracking::Machine aMachine)
raises (Global::FrameworkErrorSignal,
EquipmentTracking::MachineDuplicateSignal);
/* Create an association between an Area and the Area to which it belongs. The service will add the Area indicated
by the argument to the receiver’s set of subareas. The service will also update the superarea for the argument. The
service returns the argument. */
Area addSubArea (in Area anArea)
raises (Global::FrameworkErrorSignal,
AreaDuplicateSignal);
/* Adds a person to the receiver. Returns the person added. */
Labor::Person addPerson (in Labor::Person aPerson)
raises (Global::FrameworkErrorSignal,
Labor::PersonDuplicateSignal);
/* Remove the association between an Area and the Area to which it belongs. The service will remove the Area
indicated by the argument from the receiver’s set of subareas. The service will also nullify membership (ownership)
for the argument. */
void removeSubArea (in Area anArea)
raises (Global::FrameworkErrorSignal,
AreaNotAssignedSignal,
AreaRemovalFailedSignal);
/* Removes a machine from the receiver. */
void removeMachine (in EquipmentTracking::Machine aMachine)
raises (Global::FrameworkErrorSignal,
EquipmentTracking::MachineNotAssignedSignal,
EquipmentTracking::MachineRemovalFailedSignal);
/* Removes a person from the receiver. */
void removePerson (in Labor::Person aPerson)
raises (Global::FrameworkErrorSignal,
Labor::PersonNotAssignedSignal,
Labor::PersonRemovalFailedSignal);
/* Set the unique identifier for the Area. */
void setAreaIdentifier (in string identifier)
raises (Global::FrameworkErrorSignal,
Global::DuplicateIdentifierSignal);
/* Returns the set of subareas associated with this Area, that is, the Areas “contained” within this higher-level Area.
If no membership has been established, an empty set is returned. */
AreaSequence allSubAreas ()
raises (Global::FrameworkErrorSignal);
/* Returns the receiver’s set of process machines. */
EquipmentTracking::MachineSequence allMachines ()
raises (Global::FrameworkErrorSignal);
/* Returns the receiver’s set of persons */
Labor::PersonSequence allPersons ()
raises (Global::FrameworkErrorSignal);

SEMI E97-0200A © SEMI 200039
}; // Area
Contracted Services: None.
Dynamic Model: None.
6.7.5 Component Manager Interface
Module: FactoryOperations
Interface: ComponentManager
Inherited Interface: Resource
Description: The ComponentManager is an abstract interface that supports the registration and control
(enabling/disabling) of a component’s interface and for managing the resources in its
domain.
Exceptions: None.
Published Events:
interface ComponentManager : Resource {
/* Component Manager state has changed */
const string ComponentManagerStateChangedSubject =
“/Factory/ComponentManager/ComponentManagerStateChanged”;
/* This enumerated type identifies the states of Component Managers. It is used in event notifications of state
changes. */
enum ComponentManagerState {
ComponentManagerUndefined,
ComponentManagerStopped,
ComponentManagerStartingUp,
ComponentManagerShuttingDown };
struct ComponentManagerStateChangedFilters {
Global::Property name;
Global::Property previousState;
Global::Property newState;
};
ComponentManagerStateChangedFilters Properties:
Name Value Type Description
“Name” string The name of the ComponentManager.
“PreviousState” ComponentManagerState Previous state prior to the most recent transition.
“NewState” ComponentManagerState New state following the most recent transition.
struct ComponentManagerStateChangedEvent {
string eventSubject;
Global::TimeStamp eventTimeStamp;
ComponentManagerStateChangedFilters eventFilterData;
Global::Properties eventNews;
ComponentManager aComponentManager;
};
Provided Services:
/* This operation causes the component to do its portion of the registration interchange with the factory indicated by
the argument. */

SEMI E97-0200A © SEMI 2000 40
void makeRegistered (in MESFactory aFactory)
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* This operation causes the component to remove its registration from the factory. */
void makeNotRegistered (in MESFactory aFactory)
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* This operation causes a registered component to perform its startup sequence. Each manager gets itself to the
point where it is capable of interacting with other components. When it is ready to support all services defined in the
interface, the component manager tells the factory that component startup is complete. */
void makeStartingUp ()
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* This operation causes the component to perform its shutdown sequence and then enter the state STOPPED.
During shutting down activities, time is allotted to bringing the resources of a component to a safe stopping
condition. The component manager tells the factory that component shutdown is complete. */
void makeShuttingDown ()
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* This operation causes the component to go into the state STOPPED without regard to data loss or the stopping
condition of resources or material. There is no communication with the factory. */
void makeStopped ()
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* This operation causes a registered component to go into the state IN SERVICE from the state STOPPED. */
void makeInService ()
raises (Global::FrameworkErrorSignal,
Global::InvalidStateTransitionSignal);
/* Answer whether the status of the component is that indicated. */
boolean isStopped ()
raises (Global::FrameworkErrorSignal);
boolean isStartingUp ()
raises (Global::FrameworkErrorSignal);
boolean isShuttingDown ()
raises (Global::FrameworkErrorSignal);
boolean isNotRegistered ()
raises (Global::FrameworkErrorSignal);
boolean isRegistered ()
raises (Global::FrameworkErrorSignal);
}; // ComponentManager
Contracted Services: None.