semi合集-English.pdf - 第2723页
SEMI E97-0200A © SEMI 2000 43 A P PENDIX 1 FULL IDL SPECIFICA TION NOT E: The ma terial in this appendix is an of ficial part of SEMI E97 and w as approved by full letter ba llot procedure s on October 21 an d December 1…

SEMI E97-0200A © SEMI 2000 42
Table 8 ComponentManager State Transitions
# Current State Trigger New State Action Comment
1 Non Existent No CIM Framework
trigger necessary.
NOT
REGISTERED
Instance creation is done
by the specialization.
ComponentManager is
an abstract inherited
interface designed to
provide common
behavior for
specializations.
2 NOT
REGISTERED
makeRegistered() sent
to the instance of
ComponentManager.
REGISTERED Component manager
registers with a Factory
instance via Trader.
None.
3 REGISTERED makeNotRegistered()
sent to the instance of
ComponentManager.
NOT
REGISTERED
Component manager
removes registration from
the Factory via Trader.
None.
4 Unknown makeStartingUp() sent
to the instance of
ComponentManager.
STARTING
UP
Component manager is
requested to startup.
Implementation can
use startup() or
makeStartingUp()
services.
5 STARTING UP Internal to component. IN SERVICE Report to Factory that
Component is able to
provide services, via
events.
Component manager
has finished its startup
sequence.
6 STARTING UP Internal to component. STOPPED None. Component Manager
could not complete
startup procedure and
is stopped for further
corrective action.
7 IN SERVICE makeStopped() sent to
the instance of
Component Manager.
STOPPED Component will also go
out of service.
ComponentManager is
stopped and it may be
resumed as needed.
8 STOPPED makeInService() sent to
the instance of
Component Manager.
IN SERVICE Component Manager has
resumed operations and is
in service for execution.
None.
9 STOPPED makeShuttingDown()
sent to the instance of
ComponentManager.
SHUTTING
DOWN
As an action it reports to
the Factory that resources
and material are brought
to a safe state.
The component
manager receives
“shutdown normal”
message.
10 IN SERVICE makeShuttingDown()
sent to the instance of
ComponentManager.
SHUTTING
DOWN
As an action it reports to
the Factory that resources
and material are brought
to a safe state.
The component
manager receives
“shutdown normal”
message.
11 SHUTTING
DOWN
makeNotRegistered()
sent to the instance of
Component Manager.
Non Existent The Component Manager
is unregistered.
None.

SEMI E97-0200A © SEMI 200043
APPENDIX 1
FULL IDL SPECIFICATION
NOTE: The material in this appendix is an official part of SEMI E97 and was approved by full letter ballot procedures on
October 21 and December 15, 1999 by the North American Regional Standards Committee.
module CIMFW {
#ifndef _CIMFW_GLOBAL_
#define _CIMFW_GLOBAL_
module Global {
typedef string Identifier;
typedef unsigned long Flags;
struct NamedValue{
Identifier name;
any argument;
long len;
Flags arg_modes;
};
typedef NamedValue NameValue;
typedef sequence <NamedValue> NameValueSequence;
typedef string PropertyName;
struct Property{
PropertyName Property_name;
any Property_value;
};
typedef sequence <Property> Properties;
typedef sequence <string> StringSequence;
typedef string Unit;
typedef string Units;
typedef sequence <any> anySequence;
typedef sequence <long> longSequence;
enum PriorityOfEvent { Low,
Medium,
High,
Alarm };
enum LifecycleState { Undefined,
Created,
Deleted,
Moved,
Copied };
enum ReservationState { UndefinedReservationState,
Reserved,
UnReserved };
enum E10State { E10Productive,
E10Standby,
E10Engineering,
E10ScheduledDowntime,
E10UnscheduledDowntime,
E10NonscheduledTime };

SEMI E97-0200A © SEMI 2000 44
struct ulonglong
{unsigned long low ;
unsigned long high ;
};
typedef ulonglong TimeT ;
typedef TimeT TimeStamp;
typedef sequence <TimeStamp> TimeStampSequence;
struct IntervalT {
TimeT lower_bound;
TimeT upper_bound;
};
typedef IntervalT TimeWindow;
typedef TimeT Duration;
struct ResourceSchedule {
TimeStamp plannedStartTime;
TimeStamp plannedEndTime;
TimeStamp actualStartTime;
TimeStamp actualEndTime;
};
typedef sequence <ResourceSchedule> ResourceScheduleSequence;
exception NotFoundSignal { string errorMessage; };
exception DuplicateIdentifierSignal {
string errorMessage;
string duplicateIdentifier; };
exception InvalidStateTransitionSignal {
string errorMessage; };
exception SetValueOutOfRangeSignal {
string errorMessage; };
exception TimePeriodInvalidSignal {
string errorMessage; };
exception InvalidPropertyNameSignal {};
exception PropertyNotFoundSignal {};
exception UnsupportedPropertySignal {};
exception ReadOnlyPropertySignal {};
exception FrameworkErrorSignal {
string errorMessage;
unsigned long errorCode;
any errorInformation;};
const unsigned long NOT_IMPLEMENTED = 0;
const unsigned long IMPLEMENTED_BY_SUBCLASS = 1;
const unsigned long UNKNOWN_EXCEPTION = 2;
const unsigned long COMPLETION_UNKNOWN = 3;
}; // module Global
#endif // _CIMFW_GLOBAL_
module EquipmentTracking {
interface Machine {}; // Stub