00001 /* 00002 * This file is part of the libetonyek project. 00003 * 00004 * This Source Code Form is subject to the terms of the Mozilla Public 00005 * License, v. 2.0. If a copy of the MPL was not distributed with this 00006 * file, You can obtain one at http://mozilla.org/MPL/2.0/. 00007 */ 00008 00009 #ifndef IWORKTYPES_FWD_H_INCLUDED 00010 #define IWORKTYPES_FWD_H_INCLUDED 00011 00012 #include <deque> 00013 #include <string> 00014 00015 #include <boost/shared_ptr.hpp> 00016 #include <boost/unordered_map.hpp> 00017 00018 namespace libetonyek 00019 { 00020 00021 typedef std::string ID_t; 00022 00023 typedef std::deque<double> IWORKColumnSizes_t; 00024 00025 typedef std::deque<double> IWORKRowSizes_t; 00026 00027 typedef unsigned IWORKOutputID_t; 00028 00029 typedef boost::unordered_map<ID_t, IWORKOutputID_t> IWORKOutputMap_t; 00030 00031 typedef boost::unordered_map<std::string, std::string> IWORKTableNameMap_t; 00032 00033 typedef boost::shared_ptr<IWORKTableNameMap_t> IWORKTableNameMapPtr_t; 00034 00035 typedef boost::unordered_map<std::string, std::string> IWORKContentMap_t; 00036 00037 struct IWORKSize; 00038 struct IWORKPosition; 00039 00040 struct IWORKGeometry; 00041 00042 typedef boost::shared_ptr<IWORKGeometry> IWORKGeometryPtr_t; 00043 00044 struct IWORKLine; 00045 00046 typedef boost::shared_ptr<IWORKLine> IWORKLinePtr_t; 00047 00048 struct IWORKData; 00049 00050 typedef boost::shared_ptr<IWORKData> IWORKDataPtr_t; 00051 typedef boost::unordered_map<ID_t, IWORKDataPtr_t> IWORKDataMap_t; 00052 00053 struct IWORKMediaContent; 00054 00055 typedef boost::shared_ptr<IWORKMediaContent> IWORKMediaContentPtr_t; 00056 typedef boost::unordered_map<ID_t, IWORKMediaContentPtr_t> IWORKMediaContentMap_t; 00057 00058 struct IWORKImage; 00059 00060 typedef boost::shared_ptr<IWORKImage> IWORKImagePtr_t; 00061 typedef boost::unordered_map<ID_t, IWORKImagePtr_t> IWORKImageMap_t; 00062 00063 struct IWORKMedia; 00064 00065 typedef boost::shared_ptr<IWORKMedia> IWORKMediaPtr_t; 00066 00067 struct IWORKWrap; 00068 00069 typedef boost::shared_ptr<IWORKWrap> IWORKWrapPtr_t; 00070 00071 struct IWORKGroup; 00072 00073 typedef boost::shared_ptr<IWORKGroup> IWORKGroupPtr_t; 00074 00075 struct IWORKTableData; 00076 00077 typedef boost::shared_ptr<IWORKTableData> IWORKTableDataPtr_t; 00078 00079 } 00080 00081 #endif // IWORKTYPES_FWD_H_INCLUDED 00082 00083 /* vim:set shiftwidth=2 softtabstop=2 expandtab: */