summaryrefslogtreecommitdiff
path: root/lib/Remote-Operations-Information-Objects.asn1
blob: 5414b3270eaac756325a573559a46b22b85ac3e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
Remote-Operations-Information-Objects {joint-iso-itu-t remote-operations(4) informationObjects(5) version1(0)}
DEFINITIONS ::=
BEGIN
-- exports everything
IMPORTS emptyBind, emptyUnbind FROM Remote-Operations-Useful-Definitions{joint-iso-itu-t remote-operations(4) useful-definitions(7) version1(0)};
OPERATION ::= CLASS
{
	&ArgumentType					OPTIONAL,
	&argumentTypeOptional	BOOLEAN 		OPTIONAL,
	&returnResult		BOOLEAN 		DEFAULT TRUE,
	&ResultType					OPTIONAL,
	&resultTypeOptional	BOOLEAN 		OPTIONAL,
	&Errors			ERROR 			OPTIONAL,
	&Linked			OPERATION 		OPTIONAL,
	&synchronous		BOOLEAN 		DEFAULT FALSE,
	&alwaysReturns		BOOLEAN 		DEFAULT TRUE,
	&InvokePriority		Priority 		OPTIONAL,
	&ResultPriority		Priority 		OPTIONAL,
	&operationCode		Code 			UNIQUE OPTIONAL
}
WITH SYNTAX
{
	[ARGUMENT		&ArgumentType  [OPTIONAL	&argumentTypeOptional]]
	[RESULT			&ResultType    [OPTIONAL	&resultTypeOptional]]
	[RETURN RESULT		&returnResult]
	[ERRORS			&Errors]
	[LINKED			&Linked]
	[SYNCHRONOUS		&synchronous]
	[ALWAYS RESPONDS	&alwaysReturns]
	[INVOKE PRIORITY	&InvokePriority]
	[RESULT-PRIORITY	&ResultPriority]
	[CODE			&operationCode]
}
ERROR ::= CLASS
{
	&ParameterType				OPTIONAL,
	&parameterTypeOptional	BOOLEAN 	OPTIONAL,
	&ErrorPriority		Priority 	OPTIONAL,
	&errorCode		Code UNIQUE 	OPTIONAL
}
WITH SYNTAX
{
	[PARAMETER		&ParameterType  [OPTIONAL	&parameterTypeOptional]]
	[PRIORITY		&ErrorPriority]
	[CODE			&errorCode]
}

OPERATION-PACKAGE ::= CLASS
{
	&Both			OPERATION OPTIONAL,
	&Consumer		OPERATION OPTIONAL,
	&Supplier		OPERATION OPTIONAL,
	&id			OBJECT IDENTIFIER UNIQUE OPTIONAL
}
WITH SYNTAX
{
	[OPERATIONS		&Both]
	[CONSUMER INVOKES	&Supplier]
	[SUPPLIER INVOKES	&Consumer]
	[ID			&id]
}
CONNECTION-PACKAGE ::= CLASS
{
	&bind				OPERATION DEFAULT emptyBind,
	&unbind				OPERATION DEFAULT emptyUnbind,
	&responderCanUnbind		BOOLEAN DEFAULT FALSE,
	&unbindCanFail			BOOLEAN DEFAULT FALSE,
	&id				OBJECT IDENTIFIER UNIQUE OPTIONAL
}
WITH SYNTAX
{
	[BIND				&bind]
	[UNBIND				&unbind]
	[RESPONDER UNBIND		&responderCanUnbind]
	[FAILURE TO UNBIND		&unbindCanFail]
	[ID				&id]
}
CONTRACT ::= CLASS
{
	&connection		CONNECTION-PACKAGE OPTIONAL,
	&OperationsOf		OPERATION-PACKAGE OPTIONAL,
	&InitiatorConsumerOf	OPERATION-PACKAGE OPTIONAL,
	&InitiatorSupplierOf	OPERATION-PACKAGE OPTIONAL,
	&id			OBJECT IDENTIFIER UNIQUE OPTIONAL
}
WITH SYNTAX
{
	[CONNECTION		&connection]
	[OPERATIONS OF		&OperationsOf]
	[INITIATOR CONSUMER OF	&InitiatorConsumerOf]
	[RESPONDER CONSUMER OF	&InitiatorSupplierOf]
	[ID			&id]
}

ROS-OBJECT-CLASS ::= CLASS
{
	&Is			ROS-OBJECT-CLASS OPTIONAL,
	&Initiates		CONTRACT OPTIONAL,
	&Responds		CONTRACT OPTIONAL,
	&InitiatesAndResponds	CONTRACT OPTIONAL,
	&id			OBJECT IDENTIFIER UNIQUE
}
WITH SYNTAX
{
	[IS			&Is]
	[BOTH			&InitiatesAndResponds]
	[INITIATES		&Initiates]
	[RESPONDS		&Responds]
	ID			&id
}
Code ::= CHOICE
{
	local	INTEGER,
	global	OBJECT IDENTIFIER
}
Priority ::= INTEGER (0..MAX)
END -- end of Information Object specifications