1 #ifndef INCLUDE_ANALYZER_H
2 #define INCLUDE_ANALYZER_H
4 #include "ValueTypes_impl.h"
5 #include "tao/DynamicAny/DynAnyFactory.h"
7 //============= class DynAnyAnalyzer ============
14 DynamicAny::DynAnyFactory_var dany_fact_
;
17 DynAnyAnalyzer (int argc
, ACE_TCHAR
*argv
[]);
18 ~DynAnyAnalyzer () {orb_
->destroy ();}
20 DynamicAny::DynAny_ptr
DynAny_NoTrunc (const CORBA::Any
&);
21 DynamicAny::DynAny_ptr
DynAny (const CORBA::Any
&);
22 DynamicAny::DynAny_ptr
DynAny (const CORBA::TypeCode_ptr
&);
24 void register_factory (CORBA::ValueFactoryBase_var factory
);
27 DynamicAny::DynAny_ptr da
,
28 CORBA::Boolean newline
= false);
31 /// List of base types.
32 typedef ACE_Array_Base
<CORBA::TypeCode_var
> BaseTypesList_t
;
34 void tab (const char p
[])
36 for (unsigned int i
= 0u; i
< level_
; ++i
)
37 ACE_DEBUG ((LM_DEBUG
, ".."));
38 ACE_DEBUG ((LM_DEBUG
, "%C", p
));
41 void analyze_basic_seq (
42 CORBA::TypeCode_ptr tc
,
43 DynamicAny::DynAny_ptr da
);
45 static void get_base_types (
46 CORBA::TypeCode_ptr tc
,
47 BaseTypesList_t
&base_types
,
48 CORBA::ULong
*total_member_count
= 0);
50 /// Return the unaliased valuetype typecode that corresponds to
51 /// index (0..total_members-1) from the given hiarchical list of
52 /// the derived type and it basetypes.
53 static CORBA::TypeCode_ptr
get_correct_base_type (
54 const BaseTypesList_t
&base_types
,
58 #endif // INCLUDE_ANALYZER_H