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 AUTODOC_DSP_HTML_STD_HXX 25 #define AUTODOC_DSP_HTML_STD_HXX 26 27 28 29 namespace ary 30 { 31 namespace cpp 32 { 33 class Gate; 34 } 35 namespace idl 36 { 37 class Gate; 38 } 39 } 40 41 namespace display 42 { 43 class CorporateFrame; 44 } 45 46 47 namespace autodoc 48 { 49 50 51 class HtmlDisplay_UdkStd 52 { 53 public: 54 virtual ~HtmlDisplay_UdkStd() {} 55 56 /** Displays the names of several C++ code entities within the 57 given namespace (or the global namespace as default). All 58 subnamespaces are included. 59 60 Output has following format: 61 62 ========================================================================= 63 OutputDirectory 64 index.html 65 def-all.html 66 prj\ 67 sal\ 68 index.html // Overview about project 69 70 f-FileName[1,2,...] // Overview about file 71 f-OtherFileName[1,2,...] 72 ... 73 def-FileName[1,2,...] // #defines and macros in file 74 def-OtherFileName[1,2,...] 75 ... 76 rtl\ 77 ... 78 cppu\ 79 ... 80 cppuhelper\ 81 ... 82 ... 83 ix\ 84 ix-a.html 85 ix-b.html 86 ... 87 ix-z.html 88 ix-_.html 89 ix-other.html 90 91 cpp\ 92 index.html // Overview about global namespace 93 94 Namespace_A\ 95 Namespace_C\ 96 index.html // Overview about namespace C 97 ... 98 ... 99 100 index.html // Overview about namespace A 101 102 c-ClassName_X.html // Description of class 103 ... 104 e-EnumName.html // Description of enum 105 ... 106 t-TypedefName.html // Description of typedef 107 ... 108 o-Filename.html // Descriptions of operations in this file in this namespace 109 ... 110 d-Filename.html // Descriptions of data in this file in this namespace 111 ... 112 113 ClassName_X\ 114 c-ClassName_Y.html 115 e-EnumName.html 116 t-TypedefName.html 117 o.html // Descriptions of operations in class X 118 d.html // Descriptions of data in class X 119 120 ClassName_Y\ 121 ... 122 ... 123 124 idl\ 125 ... 126 java\ 127 ... 128 ========================================================================= 129 130 131 @param i_sOutputDirectory 132 Directory for output. Path must be given in correct 133 syntax for the actual operating system without final 134 path delimiter. If this is 0 or "", the current 135 working directory is chosen. 136 @param i_rAryGate 137 The access to the Autodoc Repository. 138 @param i_rLayout 139 Gives parameters for the appearance of the HTML output. 140 @param i_pProjectList 141 If this is != 0, then only code entities which are declared 142 in this projects are displayed. 143 */ 144 void Run( 145 const char * i_sOutputDirectory, 146 const ary::cpp::Gate & 147 i_rAryGate, 148 const display::CorporateFrame & 149 i_rLayout ); 150 private: 151 virtual void do_Run( 152 const char * i_sOutputDirectory, 153 const ary::cpp::Gate & 154 i_rAryGate, 155 const display::CorporateFrame & 156 i_rLayout ) = 0; 157 }; 158 159 // IMPLEMENTATION 160 161 inline void 162 HtmlDisplay_UdkStd::Run( const char * i_sOutputDirectory, 163 const ary::cpp::Gate & i_rAryGate, 164 const display::CorporateFrame & i_rLayout ) 165 { 166 do_Run( i_sOutputDirectory, i_rAryGate, i_rLayout ); 167 } 168 169 170 171 // class HtmlDisplay_Idl_Ifc 172 173 class HtmlDisplay_Idl_Ifc 174 { 175 public: 176 virtual ~HtmlDisplay_Idl_Ifc() {} 177 178 void Run( 179 const char * i_sOutputDirectory, 180 const ary::idl::Gate & 181 i_rAryGate, 182 const display::CorporateFrame & 183 i_rLayout ); 184 private: 185 virtual void do_Run( 186 const char * i_sOutputDirectory, 187 const ary::idl::Gate & 188 i_rAryGate, 189 const display::CorporateFrame & 190 i_rLayout ) = 0; 191 }; 192 193 194 195 196 // IMPLEMENTATION 197 inline void 198 HtmlDisplay_Idl_Ifc::Run( const char * i_sOutputDirectory, 199 const ary::idl::Gate & i_rAryGate, 200 const display::CorporateFrame & i_rLayout ) 201 { 202 do_Run( i_sOutputDirectory, i_rAryGate, i_rLayout ); 203 } 204 205 206 207 208 } // namespace autodoc 209 #endif 210