0024180: Eliminate CLang / GCC compiler warning -Wswitch
[occt.git] / src / PCDM / PCDM.cdl
CommitLineData
b311480e 1-- Created on: 1997-08-01
2-- Created by: Jean-Louis Frenkel
3-- Copyright (c) 1997-1999 Matra Datavision
4-- Copyright (c) 1999-2012 OPEN CASCADE SAS
5--
6-- The content of this file is subject to the Open CASCADE Technology Public
7-- License Version 6.5 (the "License"). You may not use the content of this file
8-- except in compliance with the License. Please obtain a copy of the License
9-- at http://www.opencascade.org and read it completely before using this file.
10--
11-- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12-- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13--
14-- The Original Code and all software distributed under the License is
15-- distributed on an "AS IS" basis, without warranty of any kind, and the
16-- Initial Developer hereby disclaims all such warranties, including without
17-- limitation, any warranties of merchantability, fitness for a particular
18-- purpose or non-infringement. Please see the License for the specific terms
19-- and conditions governing the rights and limitations under the License.
20
7fd59977 21
22package PCDM
23
24uses
25
26 CDM,TColStd,TCollection,Storage
27
28
29is
30
31 enumeration ReaderStatus is
32 RS_OK,
33 RS_NoDriver,
34 RS_UnknownFileDriver,
35 RS_OpenError,
36 RS_NoVersion,
37 RS_NoSchema,
38 RS_NoDocument,
39 RS_ExtensionFailure,
40 RS_WrongStreamMode,
41 RS_FormatFailure,
42 RS_TypeFailure,
43 RS_TypeNotFoundInSchema,
44 RS_UnrecognizedFileFormat,
45 RS_MakeFailure,
46 RS_PermissionDenied,
15e8b082
M
47 RS_DriverFailure,
48 RS_AlreadyRetrievedAndModified,
49 RS_AlreadyRetrieved,
50 RS_UnknownDocument,
51 RS_WrongResource,
498ce76b 52 RS_ReaderException,
15e8b082 53 RS_NoModel
7fd59977 54 end ReaderStatus;
15e8b082
M
55
56 enumeration StoreStatus is
57 SS_OK,
58 SS_DriverFailure,
59 SS_WriteFailure,
60 SS_Failure,
15e8b082
M
61 SS_Doc_IsNull,
62 SS_No_Obj,
63 SS_Info_Section_Error
64 end StoreStatus;
7fd59977 65
66 deferred class Document;
67 class SequenceOfDocument instantiates Sequence from TCollection(Document from PCDM);
68
69 deferred class Reader;
70 deferred class Writer;
71 deferred class RetrievalDriver;
72 deferred class StorageDriver;
73
74 class ReferenceIterator;
75---Category: exceptions
76
77 exception DriverError inherits Failure from Standard;
78
79
80 ---Category: classes for versioning reading/writing og the headers.
81 private class Reference;
82 private class SequenceOfReference instantiates Sequence from TCollection(Reference from PCDM);
83 private deferred class ReadWriter;
84 private class ReadWriter_1;
85
86 ---Category: type of FileDriver;
87 --
88 private enumeration TypeOfFileDriver is TOFD_File, TOFD_CmpFile, TOFD_Unknown
89 end TypeOfFileDriver from PCDM;
90
91 private pointer BaseDriverPointer to BaseDriver from Storage;
92
93---Category: drivers plugin.
94--
95 FindStorageDriver(aDocument: Document from CDM)
96 returns Boolean from Standard;
97
98 StorageDriver(aDocument: Document from CDM)
99 returns StorageDriver from PCDM
100 raises NoSuchObject from Standard;
101 ---Purpose: gets in the EuclidDesktop resource the plugin
102 -- identifier of the driver plugs the driver.
103 --
104
105 Schema(aSchemaName: ExtendedString from TCollection;
106 anApplication: Application from CDM)
107 ---Purpose: returns a schema to be used during a Store or Retrieve
108 -- operation.
109 -- Schema will plug the schema defined by
110 -- the SchemaName method.
111 returns Schema from Storage;
112
113 FileDriverType(aFileName: AsciiString from TCollection; aBaseDriver: out BaseDriverPointer from PCDM)
114 returns TypeOfFileDriver from PCDM
115 is private;
116end PCDM;