8 #ifndef MsiChart_GraphObjectManager_h 9 #define MsiChart_GraphObjectManager_h 11 #include "PDCHeader/PDCmap" 12 #include "PDCHeader/PDCvector" 78 const std::vector<Int32>& irObjectIds,
Int32& iorDistance,
Int32 iRadius,
82 const std::vector<Int32>& irObjectIds,
const std::vector<Point2D>& iPoints,
83 std::vector<GraphObject::Ptr>& iorGraphObjectsIn)
const;
151 void GetAllGraphObjectInfo(std::vector<CGRect> &iAllGraphObjectsBorder, std::vector<MsiChart::TripleId > &iAllGraphObjectsTripleId);
177 void AddToMapAndList(std::vector<GraphObject::Ptr> iGraphObjectPtrList);
225 const Point2D& irCursor,
const std::vector<Int32>& irObjectIds,
Int32& iorDistance,
Int32 iRadius,
258 typedef std::pair<TripleId, GraphObject::Ptr>
MapPair;
virtual void GenerateView()
float GetMemoryUsageEstimation() const
Get memory usage estimation for current GraphObjectManager.
Definition: LayerObject.h:21
void AdjustObjectsForLayer()
ChartContext::Ptr mChartContextPtr
The drawing context instance. Only one object in a chart.
Definition: GraphObjectManager.h:273
ChartContext::Ptr GetChartContext() const
Definition: GraphObjectManager.h:282
virtual GraphObject::Ptr OnPointDetection(const Point2D &irCursor) const
MSynch::SmartPtr< GraphObjectManager > Ptr
Definition: GraphObjectManager.h:40
LayerObject * mpCurrentLayerObject
Definition: GraphObjectManager.h:279
void AddToManagerList(GraphObjectManager::Ptr iGraphObjectPtr)
std::vector< GraphObjectManager::Ptr > mGraphObjectManagerList
This list keeps all the children of current GraphObjectManager.
Definition: GraphObjectManager.h:267
virtual void GenerateVirtualMarker()
std::vector< GraphObject::Ptr > mGraphObjectList
Definition: GraphObjectManager.h:264
EnumDSSGraphObjectManager
Definition: GraphObjectManager.h:18
#define _ASSERTE(x)
Definition: Asserte.h:40
GraphObjectManager::Ptr GetGraphObjectManager(const TripleId &irTripleId, bool iRecursive=true) const
virtual void GetOptions(Int32 iSeriesId, Int32 iPropertyId, CComVariant *opValue) const =0
virtual GraphObject::Ptr GetGraphObject(const TripleId &irTripleId, bool iRecursive=true) const
void ClearGraphObjectList()
Clear GraphObject list.
EnumGraphObjectUsage
Definition: GraphObject.h:28
virtual void GenerateMapAndList()=0
void GetGraphObjectList(std::vector< GraphObject::Ptr > &orGraphObjectList)
Get GraphObject list.
#define VARIANT_FALSE
Definition: PDCwtypes.h:406
Definition: GraphObjectManager.h:28
void GetTripleId(TripleId &orTripleId) const
Definition: Msi_variant.h:101
VARTYPE vt
Definition: Msi_variant.h:148
Definition: GraphObjectManager.h:22
double mProgress
Definition: GraphObjectManager.h:278
virtual void GenerateImageMap(ImageMap &iorImageMap)
#define Int32
Definition: BasicTypes.h:20
void MergeObjectList(GraphObjectManager *ipGraphObjectManager, bool iIsAppend)
std::map< TripleId, GraphObject::Ptr > mGraphObjectMap
Definition: GraphObjectManager.h:257
void GetGraphObjectManagerList(std::vector< GraphObjectManager::Ptr > &orGraphObjectManagerList)
Get GraphObjectManager list.
void AddToMapAndList(GraphObject::Ptr iGraphObjectPtr)
Definition: GraphObjectManager.h:24
static GraphObject::Ptr OnPointDetectionByList(const std::vector< GraphObject::Ptr > &irGraphObjectList, const Point2D &irCursor, const std::vector< Int32 > &irObjectIds, Int32 &iorDistance, Int32 iRadius, std::vector< GraphObject::Ptr > &iorGraphObjectsAround, EnumGraphObjectUsage iUsage=GOU_NORMAL_HIGHLIGHT)
Definition: GraphObject.h:38
Definition: SmartPtr.h:38
void GetAllGraphObjectInfo(std::vector< CGRect > &iAllGraphObjectsBorder, std::vector< MsiChart::TripleId > &iAllGraphObjectsTripleId)
Definition: ChartContext.h:542
const TripleId mTripleId
Identifiy current GraphObjectManager.
Definition: GraphObjectManager.h:270
Definition: GraphObjectManager.h:20
Definition: GraphObjectManager.h:25
Definition: GraphObjectManager.h:26
virtual void OnRectangleSelection(const Rect2D &irRect, std::vector< GraphObject::Ptr > &iorSelectedObjects) const
virtual GraphObject::Ptr OnPointDetectionEx(const Point2D &irCursor, const std::vector< Int32 > &irObjectIds, Int32 &iorDistance, Int32 iRadius, std::vector< GraphObject::Ptr > &iorGraphObjectsAround, EnumGraphObjectUsage iUsage=GOU_NORMAL_HIGHLIGHT)
bool ToBool(CComVariant *ipValue) const
Definition: GraphObjectManager.h:287
VARIANT_BOOL boolVal
Definition: Msi_variant.h:159
std::vector< AreaRec * > ImageMap
Definition: ImageMap.h:99
GraphObjectManager(const TripleId &irTripleId, GraphObjectManager *ipManager)
#define VARIANT_TRUE
Definition: PDCwtypes.h:405
Int32 GetChartAreaId() const
void BoolToVariant(bool iValue, CComVariant *opValue) const
Definition: GraphObjectManager.h:292
void AddToMap(GraphObject::Ptr iGraphObjectPtr)
GraphObjectManager * mpManager
The manager object which created the current object.
Definition: GraphObjectManager.h:276
virtual void GenerateInterpolationFrame(double iProgress, LayerObject *ipLayerObject)
Definition: Msi_ccomvariant.h:24
void InsertGraphObjectListAfterObject(const std::vector< GraphObject::Ptr > &irGraphObjectList, const GraphObject *ipGraphObject)
std::pair< TripleId, GraphObject::Ptr > MapPair
Definition: GraphObjectManager.h:258
Definition: GraphObjectManager.h:27
Definition: GraphObjectManager.h:37
void AddToList(GraphObject::Ptr iGraphObjectPtr)
Use four Int32 values to represent a 2D rectangle.
Definition: Rect2D.h:25
virtual ~GraphObjectManager()
Definition: GraphObject.h:30
void ExtractGraphObjectsByObjectId(std::vector< GraphObject::Ptr > &orGraphObjectList, Int32 iObjectId)
Extract some graph objects out by object ID. The extracted graph object will be removed from mGraphOb...
virtual void OnPointInPolygon(const Point2D &irCursor, const std::vector< Int32 > &irObjectIds, const std::vector< Point2D > &iPoints, std::vector< GraphObject::Ptr > &iorGraphObjectsIn) const
Definition: GraphObjectManager.h:21