Merge pull request #2301 from sonndinh/remove-dup-reactor-functions
[ACE_TAO.git] / TAO / TAO_IDL / include / fe_home_header.h
blobae13bc609cc33ac7523d6a68760fc6e42e56c3ab
1 #ifndef FE_HOME_HEADER_H
2 #define FE_HOME_HEADER_H
4 #include "fe_component_header.h"
6 class AST_Home;
7 class AST_ValueType;
9 // FE_HomeHeader
10 // Internal class for FE to describe component home headers
12 // We use the 'base_component' member of the base class to
13 // store the 'managed_component' member of the derived class.
14 // By inheriting from FE_ComponentHeader, we also get the
15 // reuse of the mechanism described in the comment above
16 // for handling the supported interface list.
17 class FE_HomeHeader : public FE_ComponentHeader
19 public:
20 FE_HomeHeader (UTL_ScopedName *n,
21 UTL_ScopedName *base_home,
22 UTL_NameList *supports,
23 UTL_ScopedName *managed_component,
24 UTL_ScopedName *primary_key);
26 virtual ~FE_HomeHeader ();
28 // Data Accessors.
29 AST_Home *base_home () const;
30 AST_Component *managed_component () const;
31 AST_Type *primary_key () const;
33 protected:
34 AST_Home *base_home_;
35 AST_Component *managed_component_;
36 AST_Type *primary_key_;
38 protected:
39 void compile_inheritance (UTL_ScopedName *base_home);
40 void compile_managed_component (UTL_ScopedName *managed_compoent);
41 void compile_primary_key (UTL_ScopedName *primary_key);
44 #endif /* FE_HOME_HEADER_H */