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 ADC_DISPLAY_HFI_METHOD_HXX
25 #define ADC_DISPLAY_HFI_METHOD_HXX
26 
27 
28 
29 // USED SERVICES
30     // BASE CLASSES
31 #include "hi_factory.hxx"
32     // COMPONENTS
33     // PARAMETERS
34 #include <ary/idl/i_param.hxx>
35 #include <ary/doc/d_oldidldocu.hxx>
36 typedef ary::doc::OldIdlDocu CodeInfo;
37 #include "hfi_linklist.hxx"
38 
39 
40 
41 namespace csi
42 {
43     namespace idl
44     {
45         class Parameter;
46     }
47 }
48 
49 class HF_FunctionDeclaration;
50 
51 class HF_IdlMethod : public HtmlFactory_Idl
52 {
53   public:
54     typedef ary::StdConstIterator<ary::idl::Parameter>  param_list;
55 
56                         HF_IdlMethod(
57                             Environment &       io_rEnv,
58                             Xml::Element &      o_cell );
59     virtual             ~HF_IdlMethod();
60 
61     void                Produce_byData(
62                             const String &      i_sName,
63                             type_id             i_nReturnType,
64                             param_list &        i_rParams,
65                             type_list &         i_rExceptions,
66                             bool                i_bOneway,
67                             bool				i_bEllipse,
68                             const client &      i_ce ) const;
69   private:
70     void                write_Declaration(
71                             const String &      i_sName,
72                             type_id             i_nReturnType,
73                             param_list &        i_rParams,
74                             type_list &         i_rExceptions,
75                             bool                i_bOneway,
76                             bool				i_bEllipse ) const;
77 //    void                write_Param(
78 //                            HF_IdlTypeText &    o_type,
79 //                            Xml::Element &      o_names,
80 //                            const ary::idl::Parameter &
81 //                                                i_param ) const;
82 
83     Xml::Element *      write_Param(
84                             HF_FunctionDeclaration &
85                                                 o_decl,
86                             const ary::idl::Parameter &
87                                                 i_param ) const;
88     void                enter_ContentCell() const;
89     void                leave_ContentCell() const;
90 };
91 
92 
93 
94 // IMPLEMENTATION
95 
96 
97 
98 #endif
99 
100 
101