OCC Main Page | FoundationClasses | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

FoundationClasses
TKernel
OSD


OSD_Protection Class Reference

This class provides data to manage file protection
Example:These rights are treated in a system dependent manner :
On UNIX you have User,Group and Other rights
On VMS you have Owner,Group,World and System rights
An automatic conversion is done between OSD and UNIX/VMS.

OSD VMS UNIX
User Owner User
Group Group Group
World World Other
System System (combined with Other)

When you use System protection on UNIX you must know that
Other rights and System rights are inclusively "ORed".
So Other with only READ access and System with WRITE access
will produce on UNIX Other with READ and WRITE access.
.

#include <OSD_Protection.hxx>


Public Member Functions

void * operator new (size_t, void *anAddress)
void * operator new (size_t size)
void operator delete (void *anAddress)
Standard_EXPORT OSD_Protection ()
 Initializes global access rights as follows
.
Standard_EXPORT OSD_Protection (const OSD_SingleProtection System, const OSD_SingleProtection User, const OSD_SingleProtection Group, const OSD_SingleProtection World)
 Sets values of fields
.
Standard_EXPORT void Values (OSD_SingleProtection &System, OSD_SingleProtection &User, OSD_SingleProtection &Group, OSD_SingleProtection &World)
 Retrieves values of fields
.
Standard_EXPORT void SetValues (const OSD_SingleProtection System, const OSD_SingleProtection User, const OSD_SingleProtection Group, const OSD_SingleProtection World)
 Sets values of fields
.
Standard_EXPORT void SetSystem (const OSD_SingleProtection priv)
 Sets protection of 'System'
.
Standard_EXPORT void SetUser (const OSD_SingleProtection priv)
 Sets protection of 'User'
.
Standard_EXPORT void SetGroup (const OSD_SingleProtection priv)
 Sets protection of 'Group'
.
Standard_EXPORT void SetWorld (const OSD_SingleProtection priv)
 Sets protection of 'World'
.
Standard_EXPORT OSD_SingleProtection System () const
 Gets protection of 'System'
.
Standard_EXPORT OSD_SingleProtection User () const
 Gets protection of 'User'
.
Standard_EXPORT OSD_SingleProtection Group () const
 Gets protection of 'Group'
.
Standard_EXPORT OSD_SingleProtection World () const
 Gets protection of 'World'
.
Standard_EXPORT void Add (OSD_SingleProtection &aProt, const OSD_SingleProtection aRight)
 Add a right to a single protection.
ex: aProt = RWD
me.Add(aProt,X) -> aProt = RWXD
.
Standard_EXPORT void Sub (OSD_SingleProtection &aProt, const OSD_SingleProtection aRight)
 Subtract a right to a single protection.
ex: aProt = RWD
me.Sub(aProt,RW) -> aProt = D
But me.Sub(aProt,RWX) is also valid and gives same result.
.

Private Member Functions

Standard_EXPORT Standard_Integer Internal () const
 Returns System dependent access rights
this is a private method.
.

Private Attributes

OSD_SingleProtection s
OSD_SingleProtection u
OSD_SingleProtection g
OSD_SingleProtection w


Constructor & Destructor Documentation

Standard_EXPORT OSD_Protection::OSD_Protection  ) 
 

Standard_EXPORT OSD_Protection::OSD_Protection const OSD_SingleProtection  System,
const OSD_SingleProtection  User,
const OSD_SingleProtection  Group,
const OSD_SingleProtection  World
 


Member Function Documentation

Standard_EXPORT void OSD_Protection::Add OSD_SingleProtection aProt,
const OSD_SingleProtection  aRight
 

Standard_EXPORT OSD_SingleProtection OSD_Protection::Group  )  const
 

Standard_EXPORT Standard_Integer OSD_Protection::Internal  )  const [private]
 

void OSD_Protection::operator delete void *  anAddress  )  [inline]
 

void* OSD_Protection::operator new size_t  size  )  [inline]
 

void* OSD_Protection::operator new size_t  ,
void *  anAddress
[inline]
 

Standard_EXPORT void OSD_Protection::SetGroup const OSD_SingleProtection  priv  ) 
 

Standard_EXPORT void OSD_Protection::SetSystem const OSD_SingleProtection  priv  ) 
 

Standard_EXPORT void OSD_Protection::SetUser const OSD_SingleProtection  priv  ) 
 

Standard_EXPORT void OSD_Protection::SetValues const OSD_SingleProtection  System,
const OSD_SingleProtection  User,
const OSD_SingleProtection  Group,
const OSD_SingleProtection  World
 

Standard_EXPORT void OSD_Protection::SetWorld const OSD_SingleProtection  priv  ) 
 

Standard_EXPORT void OSD_Protection::Sub OSD_SingleProtection aProt,
const OSD_SingleProtection  aRight
 

Standard_EXPORT OSD_SingleProtection OSD_Protection::System  )  const
 

Standard_EXPORT OSD_SingleProtection OSD_Protection::User  )  const
 

Standard_EXPORT void OSD_Protection::Values OSD_SingleProtection System,
OSD_SingleProtection User,
OSD_SingleProtection Group,
OSD_SingleProtection World
 

Standard_EXPORT OSD_SingleProtection OSD_Protection::World  )  const
 


Field Documentation

OSD_SingleProtection OSD_Protection::g [private]
 

OSD_SingleProtection OSD_Protection::s [private]
 

OSD_SingleProtection OSD_Protection::u [private]
 

OSD_SingleProtection OSD_Protection::w [private]
 


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 13:13:09 2008 for OpenCASCADE by  doxygen 1.4.1