sbTranscodeProfileProperty.h
Go to the documentation of this file.
1 /* vim: set sw=2 : */
2 /*
3 //
4 // BEGIN SONGBIRD GPL
5 //
6 // This file is part of the Songbird web player.
7 //
8 // Copyright(c) 2005-2009 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 #ifndef __SB_TRANSCODEPROFILEPROPERTY_H__
29 #define __SB_TRANSCODEPROFILEPROPERTY_H__
30 
31 #include <sbITranscodeProfile.h>
32 
33 #include <nsCOMPtr.h>
34 #include <nsStringGlue.h>
35 
36 class nsIVariant;
37 
39 {
40 public:
42  NS_DECL_SBITRANSCODEPROFILEPROPERTY
43 
45 
46 // setters
47  nsresult SetPropertyName(const nsAString & aPropertyName);
48  nsresult SetValueMin(nsIVariant * aValueMin);
49  nsresult SetValueMax(nsIVariant * aValueMax);
50  nsresult SetHidden(const PRBool aHidden);
51  nsresult SetMapping(const nsACString & aMapping);
52  nsresult SetScale(const nsACString & aScale);
53 
54 private:
55  ~sbTranscodeProfileProperty();
56 
57 protected:
58  /* The name of the property */
59  nsString mPropertyName;
60 
61  /* The minimum value this property may have, if any */
62  nsCOMPtr<nsIVariant> mValueMin;
63 
64  /* The maximum value this property may have, if any */
65  nsCOMPtr<nsIVariant> mValueMax;
66 
67  /* \brief The current value of this property (initially the default) */
68  nsCOMPtr<nsIVariant> mValue;
69 
74  PRBool mHidden;
75 
80  nsCString mMapping;
81 
86  nsCString mScale;
87 };
88 
89 #endif /* __SB_TRANSCODEPROFILEPROPERTY_H__ */
nsresult SetValueMax(nsIVariant *aValueMax)
nsresult SetValueMin(nsIVariant *aValueMin)
nsresult SetMapping(const nsACString &aMapping)
PRBool mHidden
If true, this property should not be output (instead it should be used for calcuating a different pro...
nsresult SetPropertyName(const nsAString &aPropertyName)
NS_DECL_ISUPPORTS NS_DECL_SBITRANSCODEPROFILEPROPERTY sbTranscodeProfileProperty()
nsresult SetHidden(const PRBool aHidden)
nsresult SetScale(const nsACString &aScale)