1 /*
2  * Copyright 2006-2008 The FLWOR Foundation.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef ZORBA_STORE_API_SHARED_TYPES
18 #define ZORBA_STORE_API_SHARED_TYPES
19 
20 #include <vector>
21 
22 #include "zorbamisc/config/platform.h"
23 
24 #include "zorbatypes/rchandle.h"
25 #include "zorbatypes/zstring.h"
26 
27 #include "store/api/item_handle.h"
28 
29 namespace zorba
30 {
31 
32 typedef std::vector<char>::size_type csize;
33 
34 
35 namespace store
36 {
37 
38 typedef std::vector<std::pair<zstring, zstring> > NsBindings;
39 
40 
41 class CopyMode;
42 
43 class ItemFactory;
44 
45 class Item;
46 typedef ItemHandle<Item> Item_t;
47 
48 class AnyUriItem;
49 typedef ItemHandle<AnyUriItem> AnyUriItem_t;
50 
51 class PUL;
52 typedef ItemHandle<PUL> PUL_t;
53 
54 class IteratorFactory;
55 
56 class Iterator;
57 typedef rchandle<Iterator> Iterator_t;
58 
59 class ItemIterator;
60 typedef rchandle<ItemIterator> ItemIterator_t;
61 
62 class TempSeq;
63 typedef rchandle<TempSeq> TempSeq_t;
64 
65 class TempSeqIterator;
66 typedef rchandle<TempSeqIterator> TempSeqIterator_t;
67 
68 class Collection;
69 typedef rchandle<Collection> Collection_t;
70 
71 class Index;
72 typedef rchandle<Index> Index_t;
73 
74 class IndexEntryReceiver;
75 typedef rchandle<IndexEntryReceiver> IndexEntryReceiver_t;
76 
77 class IndexCondition;
78 typedef rchandle<IndexCondition> IndexCondition_t;
79 
80 class IndexPointCondition;
81 typedef rchandle<IndexPointCondition> IndexPointCondition_t;
82 
83 class IndexBoxCondition;
84 typedef rchandle<IndexBoxCondition> IndexBoxCondition_t;
85 
86 class IndexKey;
87 
88 class IndexProbeIterator;
89 typedef rchandle<IndexProbeIterator> IndexProbeIterator_t;
90 
91 class Store;
92 class XmlDataManager_Impl;
93 
94 class IC;
95 typedef rchandle<IC> IC_t;
96 
97 class ICChecker;
98 
99 class Annotation;
100 typedef rchandle<Annotation> Annotation_t;
101 
102 
103 } // namespace store
104 } // namespace zorba
105 
106 #endif /* ZORBA_STORE_API_SHARED_TYPES */
107 /*
108  * Local variables:
109  * mode: c++
110  * End:
111  */
112 /* vim:set et sw=2 ts=2: */
113