All Classes Functions Variables Typedefs Friends Pages
IGroupManager.h
1 //------------------------------------------------------------------------------
2 //
3 // Copyright (c) 2012 Glympse Inc. All rights reserved.
4 //
5 //------------------------------------------------------------------------------
6 
7 #ifndef IGROUPMANAGER_H__GLYMPSE__
8 #define IGROUPMANAGER_H__GLYMPSE__
9 
10 namespace Glympse
11 {
12 
27 /*O*public**/ struct IGroupManager : public IEventSink
28 {
36  public: virtual bool isSynced() = 0;
37 
45  public: virtual bool isValidGroup(const GString& name) = 0;
46 
62  public: virtual int32 validateGroupName(const GString& name) = 0;
63 
69  public: virtual GGroup viewGroup(const GString& name) = 0;
70 
74  public: virtual GArray<GGroup>::ptr getGroups() = 0;
75 
82  public: virtual GGroup findGroupByGroupId(const GString& groupId) = 0;
83 
88  public: virtual bool anyActive() = 0;
89 
93  public: virtual GEnumeration<GGroup>::ptr getTracking() = 0;
94 
98  public: virtual int32 startTracking(const GGroup& group) = 0;
99 
103  public: virtual int32 stopTracking(const GGroup& group) = 0;
104 
110  public: virtual void startTrackingAll() = 0;
111 
116  public: virtual void stopTrackingAll(bool forced) = 0;
117 
122  public: virtual bool anyActiveTracked() = 0;
123 
127  public: virtual bool isTracking(const GGroup& group) = 0;
128 };
129 
130 /*C*/typedef O< IGroupManager > GGroupManager;
131 
132 }
133 
134 #endif // !IGROUPMANAGER_H__GLYMPSE__