1 // -*- Mode: C++; -*-
2 //                            Package   : omniORB
3 // objectStub.h               Created on: 04/09/2000
4 //                            Author    : Sai-Lai Lo (sll)
5 //
6 //    Copyright (C) 2000 AT&T Research Cambridge
7 //
8 //    This file is part of the omniORB library
9 //
10 //    The omniORB library is free software; you can redistribute it and/or
11 //    modify it under the terms of the GNU Lesser General Public
12 //    License as published by the Free Software Foundation; either
13 //    version 2.1 of the License, or (at your option) any later version.
14 //
15 //    This library is distributed in the hope that it will be useful,
16 //    but WITHOUT ANY WARRANTY; without even the implied warranty of
17 //    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18 //    Lesser General Public License for more details.
19 //
20 //    You should have received a copy of the GNU Lesser General Public
21 //    License along with this library. If not, see http://www.gnu.org/licenses/
22 //
23 //
24 // Description:
25 //
26 
OMNI_NAMESPACE_BEGIN(omni)27 OMNI_NAMESPACE_BEGIN(omni)
28 
29 //////////////////////////////////////////////////////////////////////
30 class omni_is_a_CallDesc : public omniCallDescriptor {
31 public:
32   inline omni_is_a_CallDesc(const char* op,
33 			    int oplen, const char* i_1,
34 			    CORBA::Boolean upcall=0)
35     : omniCallDescriptor(lcfn, op, oplen, 0, 0, 0, upcall),
36       a_1((char*)i_1)
37     {}
38 
39   inline ~omni_is_a_CallDesc() {
40     if (is_upcall()) { _CORBA_String_helper::dealloc(a_1); }
41   }
42 
43   void marshalArguments(cdrStream&);
44   void unmarshalReturnedValues(cdrStream&);
45   void unmarshalArguments(cdrStream&);
46   void marshalReturnedValues(cdrStream&);
47 
48   static void lcfn(omniCallDescriptor* cd, omniServant* servant);
49 
50   char*    a_1;
51   CORBA::Boolean result;
52 };
53 
54 //////////////////////////////////////////////////////////////////////
55 class omni_non_existent_CallDesc : public omniCallDescriptor {
56 public:
57   inline omni_non_existent_CallDesc(const char* op, int oplen,
58 				    CORBA::Boolean upcall=0)
59     : omniCallDescriptor(lcfn, op, oplen, 0, 0, 0, upcall)
60     {}
61 
62   void unmarshalReturnedValues(cdrStream&);
63   void marshalReturnedValues(cdrStream&);
64 
65   static void lcfn(omniCallDescriptor* cd, omniServant* servant);
66 
67   CORBA::Boolean result;
68 };
69 
70 
71 //////////////////////////////////////////////////////////////////////
72 class omni_interface_CallDesc : public omniCallDescriptor {
73 public:
74   inline omni_interface_CallDesc(const char* op, int oplen,
75 				 CORBA::Boolean upcall=0)
76     : omniCallDescriptor(lcfn, op, oplen, 0, 0, 0, upcall)
77     {}
78 
79   void unmarshalReturnedValues(cdrStream&);
80   void marshalReturnedValues(cdrStream&);
81 
result()82   inline CORBA::Object_ptr result() { return pd_result._retn(); }
83 
84   static void lcfn(omniCallDescriptor* cd, omniServant* servant);
85 
86   CORBA::Object_var pd_result;
87 };
88 
89 OMNI_NAMESPACE_END(omni)
90