1 #ifndef FE_OBV_HEADER_H
2 #define FE_OBV_HEADER_H
4 #include "fe_interface_header.h"
9 // Internal class for FE to describe valuetype headers.
12 class TAO_IDL_FE_Export FE_OBVHeader
: public FE_InterfaceHeader
16 FE_OBVHeader (UTL_ScopedName
*n
,
17 UTL_NameList
*inherits
,
18 UTL_NameList
*supports
,
20 bool is_eventtype
= false);
21 virtual ~FE_OBVHeader (void);
24 AST_Type
**supports (void) const;
25 long n_supports (void) const;
26 AST_Type
*inherits_concrete (void) const;
27 AST_Type
*supports_concrete (void) const;
28 bool truncatable (void) const;
30 virtual void destroy (void);
31 // Destroy anything allocated for this class.
34 // Supported interfaces.
38 AST_Type
*inherits_concrete_
;
39 AST_Type
*supports_concrete_
;
45 void compile_inheritance (UTL_NameList
*vtypes
,
47 void compile_supports (UTL_NameList
*supports
);
48 bool check_concrete_supported_inheritance (AST_Interface
*d
);
51 #endif /* FE_OBV_HEADER_H */