Changeset 2268
- Timestamp:
- 03/04/10 08:42:11 (5 months ago)
- Location:
- FalconView/trunk/public/fvw_core/GeodataDataSources
- Files:
-
- 3 modified
-
LibkmlContainerBase.cpp (modified) (1 diff)
-
LibkmlContainerBase.h (modified) (1 diff)
-
stdafx.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
FalconView/trunk/public/fvw_core/GeodataDataSources/LibkmlContainerBase.cpp
r2267 r2268 59 59 bNeedToFireDataSourceChanged = true; // stops firing once all regions have been loaded 60 60 61 IUnknownPtr unk = CLibkmlDataSource::WrapKMLElement(feature, m_kml_file, m_rootDS); 62 if (unk) // may return NULL for unsupported elements 63 unk->Release(); // get rid of extra reference 61 // if we already have a COM object for this element, use it 62 63 UINT_TO_UNKNOWN_MAP::iterator it = m_wrapped_objects.find(i); 64 IUnknownPtr unk; 65 66 if (it == m_wrapped_objects.end()) 67 { 68 unk = CLibkmlDataSource::WrapKMLElement(feature, m_kml_file, m_rootDS); 69 if (unk) // may return NULL for unsupported elements 70 unk->Release(); // get rid of extra reference 71 m_wrapped_objects[i] = unk; 72 } 73 else 74 { 75 unk = it->second; 76 } 77 78 // save the object in the appropriate vector(s) 64 79 65 80 IFvDataSourcePtr spDataSource = unk; -
FalconView/trunk/public/fvw_core/GeodataDataSources/LibkmlContainerBase.h
r2267 r2268 137 137 IFilterPtr m_filter; // the filter that currently applies to the data set 138 138 kmldom::KmlFactory* m_factory; // NULL if not in an editing session 139 UINT_TO_UNKNOWN_MAP m_wrapped_objects; // a map containing objects already wrapped 139 140 140 141 void PopulateIndiciesAsNecessary(); -
FalconView/trunk/public/fvw_core/GeodataDataSources/stdafx.h
r2133 r2268 68 68 typedef std::map<std::string, _variant_t, std::less<std::string>> STRING_TO_VARIANT_MAP; 69 69 typedef std::map<ULONG, PCHAR> ULONG_TO_PCHAR_MAP; 70 typedef std::map<UINT, IUnknownPtr> UINT_TO_UNKNOWN_MAP; 70 71 71 72 #include <vector>
