2 * Copyright (c) 2000-2001 Apple Computer, Inc. All Rights Reserved.
4 * The contents of this file constitute Original Code as defined in and are
5 * subject to the Apple Public Source License Version 1.2 (the 'License').
6 * You may not use this file except in compliance with the License. Please obtain
7 * a copy of the License at http://www.apple.com/publicsource and read it before
10 * This Original Code and all software distributed under the License are
11 * distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS
12 * OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, INCLUDING WITHOUT
13 * LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
14 * PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. Please see the License for the
15 * specific language governing rights and limitations under the License.
22 * "TBL" ASN.1 module C type definitions and prototypes
24 * This .h file was generated by snacc on Mon Jun 2 11:23:51 1997
26 * UBC snacc written compiler by Mike Sample
28 * NOTE: This is a machine generated file--editing not recommended
54 } TBLTypeId
; /* ENUMERATED { TBL_BOOLEAN (0), TBL_INTEGER (1), TBL_BITSTRING (2), TBL_OCTETSTRING (3), TBL_NULL (4), TBL_OID (5), TBL_REAL (6), TBL_ENUMERATED (7), TBL_SEQUENCE (8), TBL_SET (9), TBL_SEQUENCEOF (10), TBL_SETOF (11), TBL_CHOICE (12), TBL_TYPEREF (13) } */
56 #define BEncTBLTypeIdContent BEncAsnEnumContent
61 typedef AsnInt TBLTypeDefId
; /* INTEGER */
63 #define BEncTBLTypeDefIdContent BEncAsnIntContent
74 } TBLTagClass
; /* ENUMERATED { UNIVERSAL (0), APPLICATION (1), CONTEXT (2), PRIVATE (3) } */
76 #define BEncTBLTagClassContent BEncAsnEnumContent
81 typedef struct TBLRange
/* SEQUENCE */
83 AsnInt from
; /* [0] IMPLICIT INTEGER */
84 AsnInt to
; /* [1] IMPLICIT INTEGER */
87 AsnLen BEncTBLRangeContent
PROTO ((BUF_TYPE b
, TBLRange
*v
));
92 typedef struct TBLNamedNumber
/* SEQUENCE */
94 PrintableString name
; /* [0] IMPLICIT PrintableString */
95 AsnInt value
; /* [1] IMPLICIT INTEGER */
98 AsnLen BEncTBLNamedNumberContent
PROTO ((BUF_TYPE b
, TBLNamedNumber
*v
));
103 typedef AsnList TBLNamedNumberList
; /* SEQUENCE OF TBLNamedNumber */
105 AsnLen BEncTBLNamedNumberListContent
PROTO ((BUF_TYPE b
, TBLNamedNumberList
*v
));
110 typedef struct TBLTypeRef
/* SEQUENCE */
112 TBLTypeDefId typeDef
; /* TBLTypeDefId */
113 AsnBool implicit
; /* BOOLEAN */
116 AsnLen BEncTBLTypeRefContent
PROTO ((BUF_TYPE b
, TBLTypeRef
*v
));
121 typedef struct TBLTag
/* SEQUENCE */
123 TBLTagClass tclass
; /* TBLTagClass */
124 AsnInt code
; /* INTEGER (0..MAX) */
127 AsnLen BEncTBLTagContent
PROTO ((BUF_TYPE b
, TBLTag
*v
));
132 typedef AsnList TBLTypeSeqOf
; /* SEQUENCE OF TBLTag */
134 AsnLen BEncTBLTypeSeqOfContent
PROTO ((BUF_TYPE b
, TBLTypeSeqOf
*v
));
139 typedef AsnList TBLTypeContentSeqOf
; /* SEQUENCE OF TBLType */
141 AsnLen BEncTBLTypeContentSeqOfContent
PROTO ((BUF_TYPE b
, TBLTypeContentSeqOf
*v
));
146 typedef struct TBLType
/* SEQUENCE */
148 TBLTypeId typeId
; /* [0] IMPLICIT TBLTypeId */
149 AsnBool optional
; /* [1] IMPLICIT BOOLEAN */
150 TBLTypeSeqOf
* tagList
; /* [2] IMPLICIT TBLTypeSeqOf OPTIONAL */
151 struct TBLTypeContent
* content
; /* [3] TBLTypeContent */
152 PrintableString fieldName
; /* [4] IMPLICIT PrintableString OPTIONAL */
153 struct TBLRange
* constraint
; /* [5] IMPLICIT TBLRange OPTIONAL */
154 TBLNamedNumberList
* values
; /* [6] IMPLICIT TBLNamedNumberList OPTIONAL */
157 AsnLen BEncTBLTypeContent
PROTO ((BUF_TYPE b
, TBLType
*v
));
162 typedef struct TBLTypeContent
/* CHOICE */
164 enum TBLTypeContentChoiceId
166 TBLTYPECONTENT_PRIMTYPE
,
167 TBLTYPECONTENT_ELMTS
,
168 TBLTYPECONTENT_TYPEREF
170 union TBLTypeContentChoiceUnion
172 AsnNull primType
; /* [0] IMPLICIT NULL */
173 TBLTypeContentSeqOf
* elmts
; /* [1] IMPLICIT TBLTypeContentSeqOf */
174 struct TBLTypeRef
* typeRef
; /* [2] IMPLICIT TBLTypeRef */
178 AsnLen BEncTBLTypeContentContent
PROTO ((BUF_TYPE b
, TBLTypeContent
*v
));
183 typedef struct TBLTypeDef
/* SEQUENCE */
185 TBLTypeDefId typeDefId
; /* TBLTypeDefId */
186 PrintableString typeName
; /* PrintableString */
187 struct TBLType
* type
; /* TBLType */
188 AsnNull
* isPdu
; /* NULL OPTIONAL */
191 AsnLen BEncTBLTypeDefContent
PROTO ((BUF_TYPE b
, TBLTypeDef
*v
));
196 typedef AsnList TBLModuleSeqOf
; /* SEQUENCE OF TBLTypeDef */
198 AsnLen BEncTBLModuleSeqOfContent
PROTO ((BUF_TYPE b
, TBLModuleSeqOf
*v
));
203 typedef struct TBLModule
/* SEQUENCE */
205 PrintableString name
; /* [0] IMPLICIT PrintableString */
206 AsnOid id
; /* [1] IMPLICIT OBJECT IDENTIFIER OPTIONAL */
207 AsnBool isUseful
; /* [2] IMPLICIT BOOLEAN */
208 TBLModuleSeqOf
* typeDefs
; /* [3] IMPLICIT TBLModuleSeqOf */
211 AsnLen BEncTBLModuleContent
PROTO ((BUF_TYPE b
, TBLModule
*v
));
216 typedef AsnList TBLSeqOf
; /* SEQUENCE OF TBLModule */
218 AsnLen BEncTBLSeqOfContent
PROTO ((BUF_TYPE b
, TBLSeqOf
*v
));
223 typedef struct TBL
/* SEQUENCE */
225 AsnInt totalNumModules
; /* INTEGER */
226 AsnInt totalNumTypeDefs
; /* INTEGER */
227 AsnInt totalNumTypes
; /* INTEGER */
228 AsnInt totalNumTags
; /* INTEGER */
229 AsnInt totalNumStrings
; /* INTEGER */
230 AsnInt totalLenStrings
; /* INTEGER */
231 TBLSeqOf
* modules
; /* TBLSeqOf */
234 AsnLen BEncTBL
PROTO ((BUF_TYPE b
, TBL
*v
));
236 AsnLen BEncTBLContent
PROTO ((BUF_TYPE b
, TBL
*v
));
242 #endif /* conditional include of tbl.h */