sbDeviceStatus.h
Go to the documentation of this file.
1 /* vim: set sw=2 :miv */
2 /*
3 //
4 // BEGIN SONGBIRD GPL
5 //
6 // This file is part of the Songbird web player.
7 //
8 // Copyright(c) 2005-2008 POTI, Inc.
9 // http://songbirdnest.com
10 //
11 // This file may be licensed under the terms of of the
12 // GNU General Public License Version 2 (the "GPL").
13 //
14 // Software distributed under the License is distributed
15 // on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either
16 // express or implied. See the GPL for the specific language
17 // governing rights and limitations.
18 //
19 // You should have received a copy of the GPL along with this
20 // program. If not, go to http://www.gnu.org/licenses/gpl.html
21 // or write to the Free Software Foundation, Inc.,
22 // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
23 //
24 // END SONGBIRD GPL
25 //
26 */
27 
28 #include "sbIDeviceStatus.h"
29 
30 #include <nsStringAPI.h>
31 #include <nsCOMPtr.h>
32 #include <sbIMediaItem.h>
33 #include <sbIMediaList.h>
34 
35 class sbIDataRemote;
36 class nsIProxyObjectManager;
37 
39 {
40 public:
42  NS_DECL_SBIDEVICESTATUS
43 
45 
46 private:
47  ~sbDeviceStatus();
48 
49  nsString mDeviceID;
50  PRUint32 mCurrentState;
51  PRUint32 mCurrentSubState;
52  nsCOMPtr<sbIDataRemote> mStatusRemote;
53  nsCOMPtr<sbIDataRemote> mOperationRemote;
54  nsCOMPtr<sbIDataRemote> mProgressRemote;
55  nsCOMPtr<sbIDataRemote> mWorkCurrentTypeRemote;
56  nsCOMPtr<sbIDataRemote> mWorkCurrentCountRemote;
57  nsCOMPtr<sbIDataRemote> mWorkTotalCountRemote;
58  nsCOMPtr<sbIMediaItem> mItem;
59  nsCOMPtr<sbIMediaList> mList;
60  PRTime mTimestamp;
61  PRInt64 mCurrentProgress;
62  PRBool mNewBatch;
63 
64  nsresult GetDataRemote(nsIProxyObjectManager* aProxyObjectManager,
65  const nsAString& aDataRemoteName,
66  const nsAString& aDataRemotePrefix,
67  void** appDataRemote);
68 
69 };
70 
71 #define SONGBIRD_DEVICESTATUS_DESCRIPTION \
72  "Songbird Device Status Component"
73 #define SONGBIRD_DEVICESTATUS_CONTRACTID \
74  "@songbirdnest.com/Songbird/Device/DeviceStatus;1"
75 #define SONGBIRD_DEVICESTATUS_CLASSNAME \
76  "Songbird Device Status"
77 #define SONGBIRD_DEVICESTATUS_CID \
78 { /* 7b2026c4-9193-4cbd-818a-0d 07 ab ae c8 54 */ \
79  0x7b2026c4, \
80  0x9193, \
81  0x4cbd, \
82  {0x81, 0x8a, 0x0d, 0x07, 0xab, 0xae, 0xc8, 0x54} \
83 }
An interface for accessing, and binding to, stored data.
NS_DECL_ISUPPORTS NS_DECL_SBIDEVICESTATUS sbDeviceStatus()