InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
ITaskMonitorFacade.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Florin Trofin
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // ADOBE CONFIDENTIAL
16 //
17 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
18 //
19 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
20 // with the terms of the Adobe license agreement accompanying it. If you have received
21 // this file from a source other than Adobe, then your use, modification, or
22 // distribution of it requires the prior written permission of Adobe.
23 //
24 //========================================================================================
25 
26 #ifndef __ID_TASK_MONITOR_FACADE__
27 #define __ID_TASK_MONITOR_FACADE__
28 
29 #include <vector>
30 #include "AppFrameworkID.h"
31 #include "IDictionaryData.h"
32 #include "TaskInfo.h"
33 
39 namespace Facade
40 {
41 
46  {
47  public:
48  enum { kDefaultIID = IID_ITASKMONITORFACADE };
49 
50  typedef std::vector<TaskInfo> TaskInfoArray;
51  typedef adobe::name_t TaskPropertyKey;
52  typedef adobe::any_regular_t TaskPropertyValue;
53  typedef std::pair< const TaskPropertyKey , const TaskPropertyValue > TaskProperty;
54  typedef adobe::dictionary_t TaskProperties;
55 
61  virtual TaskInfoArray GetCurrentTasks() const = 0;
62 
66  virtual TaskInfo GetTaskInfo(TaskInfo::TaskID taskID) const = 0;
67 
72  virtual void CancelAllTasks() = 0;
73 
77  virtual TaskInfoArray WaitForAllTasks() = 0;
78 
82  virtual TaskInfoArray FilterTasks(const TaskPropertyKey& propertyKey , const TaskPropertyValue& propertyValue) const = 0;
83 
87  virtual TaskInfoArray FilterTasks(const TaskProperties& properties) const = 0;
88  };
89 } /* namespace Facade */
90 
91 #endif // __ID_TASK_MONITOR_FACADE__