7 #ifndef __data_Scanner_h__ 8 #define __data_Scanner_h__ 31 typedef std::map<sp<Layout>, t_layout_info> t_layout_loinfo;
32 typedef std::map<sp<RecordGroup>,
int> t_rg_id;
33 typedef std::map<sp<RecordArray>,
int> t_ra_id;
34 typedef std::map<FE_UWORD, int> t_sb_id;
35 typedef std::map<sp<Attribute>, t_attr_info> t_attr_id;
36 typedef Array<sp<Attribute> > t_attr_array;
38 class FE_DL_EXPORT Scanner
41 Scanner(sp<Scope> spScope);
42 virtual ~Scanner(
void);
45 virtual void scan(sp<RecordGroup> spRG);
46 virtual void scan(sp<Layout> spLayout);
47 virtual void scan(Record record);
48 virtual void scan(sp<Attribute> spAttribute, sp<Scope> spScope);
49 virtual void scan(sp<RecordArray> spRA);
51 virtual void deepscan(sp<RecordArray> spRA);
53 virtual void setupSBIDs(sp<RecordGroup> spRG);
55 int getID(sp<RecordGroup> spRG);
56 int getID(sp<RecordArray> spRA);
58 t_attr_array m_attrArray;
59 t_layout_loinfo m_layouts;
64 Array<I32> m_recordRGID;
65 Array<I32> m_firstRGID;
66 sp<RecordGroup> m_spScannedRecords;
72 sp<BaseType> m_spRecordGroupType;
73 sp<BaseType> m_spRecordArrayType;
74 sp<BaseType> m_spRecordType;
75 sp<BaseType> m_spWeakRecordType;
76 sp<BaseType> m_spVoidType;
kernel
Definition: namespace.dox:3