00001
00002
00003
00004
00005
00006
00007
00008
00010
00012
00018 #ifndef _seDRMAccess_h
00019 #define _seDRMAccess_h
00020
00021 #include "seDRMBase.h"
00022
00023 namespace sedris {
00024
00030 class seDRMAccess : public seDRMBase
00031 {
00032 public:
00033
00035 seDRMAccess() {}
00036
00038 seDRMAccess( const seObject &other ) : seDRMBase(other) {}
00039
00041 SE_Restriction_Code get_access_constraints() { DRMBASE_RET_FIELDS(Access, access_constraints); }
00042
00044 void set_access_constraints( SE_Restriction_Code val ) { DRMBASE_SET_FIELDS(Access, access_constraints, val); }
00045
00047 SE_Restriction_Code get_use_constraints() { DRMBASE_RET_FIELDS(Access, use_constraints); }
00048
00050 void set_use_constraints( SE_Restriction_Code val ) { DRMBASE_SET_FIELDS(Access, use_constraints, val); }
00051
00053 const SE_String& get_other_constraints() { DRMBASE_RET_FIELDS(Access, other_constraints); }
00054
00056 void set_other_constraints( const SE_String &val ) {
00057 DRMBASE_ALLOC_FIELDS;
00058 seHelperDRM::setSE_String(DRMBASE_ACC_FIELDS(Access, other_constraints), val.characters, val.length, val.locale);
00059 }
00060
00062 void set_other_constraints( const SE_Character *chars, SE_Short_Integer_Unsigned len=0, SE_Locale locale=SE_LOCALE_DEFAULT ) {
00063 DRMBASE_ALLOC_FIELDS;
00064 seHelperDRM::setSE_String(DRMBASE_ACC_FIELDS(Access, other_constraints), chars, len, locale);
00065 }
00066
00068 const SE_Security_Constraints& get_security() { DRMBASE_RET_FIELDS(Access, security); }
00069
00071 void set_security( const SE_Security_Constraints &val ) {
00072 DRMBASE_ALLOC_FIELDS;
00073 set_SE_Security_Constraints(DRMBASE_ACC_FIELDS(Access, security), val);
00074 }
00075
00077 const SE_String& get_use_limitation() { DRMBASE_RET_FIELDS(Access, use_limitation); }
00078
00080 void set_use_limitation( const SE_String &val ) {
00081 DRMBASE_ALLOC_FIELDS;
00082 seHelperDRM::setSE_String(DRMBASE_ACC_FIELDS(Access, use_limitation), val.characters, val.length, val.locale);
00083 }
00084
00086 void set_use_limitation( const SE_Character *chars, SE_Short_Integer_Unsigned len=0, SE_Locale locale=SE_LOCALE_DEFAULT ) {
00087 DRMBASE_ALLOC_FIELDS;
00088 seHelperDRM::setSE_String(DRMBASE_ACC_FIELDS(Access, use_limitation), chars, len, locale);
00089 }
00090
00092 virtual SE_DRM_Class getClassType() const { return SE_DRM_CLS_ACCESS; }
00093
00094 };
00095
00096 }
00097
00098 #endif // _seDRMAccess_h