xref: /aoo4110/main/autodoc/inc/ary/info/docstore.hxx (revision b1cdbd2c)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 
23 
24 #ifndef ARY_INFO_DOCSTORE_HXX
25 #define ARY_INFO_DOCSTORE_HXX
26 
27 
28 
29 // USED SERVICES
30 	// BASE CLASSES
31 	// COMPONENTS
32 	// PARAMETERS
33 #include <ary/info/inftypes.hxx>
34 
35 namespace ary
36 {
37 namespace doc
38 {
39     class Node;
40 }
41 
42 
43 
44 namespace info
45 {
46 
47 class DocuStore
48 {
49   public:
~DocuStore()50 	virtual 			~DocuStore() {}
51 
52 	void	 	        Store2CurFile(
53 							DYN doc::Node     &	let_drDocu );
54 	void	 	        Store2CurNamespace(
55 							DYN doc::Node     &	let_drDocu );
56 
57 	void	 	        Store2ConnectedDeclaration(
58 							DYN doc::Node     &	let_drDocu );
59 
60 	void	 	        Store2Glossary(
61 							DYN doc::Node     &	let_drDocu,
62 							const String  &	    i_sExplainedTerm );
63 	void	 	        Store2GlobalTexts(
64 							DYN doc::Node     &	let_drDocu,
65 							ary::info::GlobalTextId
66 												i_nId );
67   private:
68 	virtual void	 	do_Store2CurFile(
69 							DYN doc::Node     &	let_drDocu ) = 0;
70 	virtual void	 	do_Store2CurNamespace(
71 							DYN doc::Node     &	let_drDocu ) = 0;
72 
73 	virtual void	 	do_Store2ConnectedDeclaration(
74 							DYN doc::Node     &	let_drDocu ) = 0;
75 
76 	virtual void	 	do_Store2Glossary(
77 							DYN doc::Node     &	let_drDocu,
78 							const String  &	    i_sExplainedTerm ) = 0;
79 	virtual void	 	do_Store2GlobalTexts(
80 							DYN doc::Node     &	let_drDocu,
81 							ary::info::GlobalTextId
82 												i_nId ) = 0;
83 };
84 
85 
86 
87 
88 // IMPLEMENTATION
89 inline void
Store2CurFile(DYN doc::Node & let_drDocu)90 DocuStore::Store2CurFile( DYN doc::Node     & let_drDocu )
91     { do_Store2CurFile(let_drDocu);  }
92 inline void
Store2CurNamespace(DYN doc::Node & let_drDocu)93 DocuStore::Store2CurNamespace( DYN doc::Node     & let_drDocu )
94     { do_Store2CurNamespace(let_drDocu);  }
95 inline void
Store2ConnectedDeclaration(DYN doc::Node & let_drDocu)96 DocuStore::Store2ConnectedDeclaration( DYN doc::Node     & let_drDocu )
97     { do_Store2ConnectedDeclaration(let_drDocu);  }
98 inline void
Store2Glossary(DYN doc::Node & let_drDocu,const String & i_sExplainedTerm)99 DocuStore::Store2Glossary( DYN doc::Node     &	let_drDocu,
100                            const String  &	    i_sExplainedTerm )
101     { do_Store2Glossary(let_drDocu, i_sExplainedTerm);  }
102 inline void
Store2GlobalTexts(DYN doc::Node & let_drDocu,ary::info::GlobalTextId i_nId)103 DocuStore::Store2GlobalTexts( DYN doc::Node     &	    let_drDocu,
104 							  ary::info::GlobalTextId   i_nId )
105     { do_Store2GlobalTexts(let_drDocu, i_nId);  }
106 
107 
108 
109 
110 }   // namespace info
111 }   // namespace ary
112 #endif
113