Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields  

clawsoft::Group Class Reference

#include <Group.h>

Inheritance diagram for clawsoft::Group:

Inheritance graph
[legend]
Collaboration diagram for clawsoft::Group:

Collaboration graph
[legend]

Detailed Description

This class deals with group management and also provides means to search the system's user group database.

STATUS: READY TO TEST


Public Methods

 Group ()
 This is the default constructor, it will initialize the internal groupid and groupname to the same one as the current executing process.

 Group (int gid)
 This will create a new Group object with groupid gid.

 Group (const String &gname)
 This will create a new Group object with groupname gname.

int getGroupID ()
 This will return the object's numeric group id.

const StringtoString ()
 This will return the corresponding groupname as a string.


Static Public Methods

int getCurrentGroupID ()
 This will return the current process's group id.

int getGroupID (const String &gname)
 This will return the numeric group id corresponding to the string gname.

int getEffectiveGroupID ()
 This will give the numeric effective group id.

void setGroupID (int gid)
 This will set the current process group id to gid.

void setGroupID (const String &gname)
 This will set the current process group name to gname.

void setGroupID (const Group &grpobj)
 This will set the current process group to grpobj.

void setEffectiveGroupID (int gid)
 This will set the current process effective group id to gid.

void setEffectiveGroupID (const String &gname)
 This will set the current process effective group name to gname.

void setEffectiveGroupID (const Group &grpobj)
 This will set the current process effective group to grpobj.


Protected Methods

char * getGroupName (int gid)
 This method will return a groupname based on a numeric group id.

void getKernelInfo ()
 This method will update the name and information about the current running kernel.

const char * getUnixName ()
 Use this method to retreives the name of the UNIX version you are currently using.

const char * getNodeName ()
 This method will give you the nodename of your current host machine.

const char * getKernelRelease ()
 This will return your current kernel release string.

const char * getKernelReleaseVersion ()
 This will return your current kernel release version string.

const char * getHostMachine ()
 This will return your current architecture description.

void setClassName (const char *n)
 Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.

const char * getClassName ()
 Returns the name of the current class.


Static Protected Methods

int getuid ()
 Obtains the current (running) user id.

int getuid (const String &username)
 Obtain uid from username.

int getgid ()
 Obtains the current (running) user id.

int getgid (const String &groupname)
 Obtain uid from username.

int chown (const String &fname, int userid, int groupid=-1)
 Changes the owner of the file by its numeric userid.

int chown (const String &fname, const String &owner)
 Changes the owner of the file by its username.

int chgrp (const String &fname, int userid)
 Changes the group owner of the file by its numeric userid.

int chgrp (const String &fname, const String &groupname)
 Changes the group owner of the file by its groupname.

int installedCPUs ()
 This will return how many CPUs are installed in the system.

double cpuSpeed ()
 This will return the CPU speed in megahertz.

int totalMemory ()
 Will return the total amount of system memory.

int freeMemory ()
 Will return the total amount of free system memory.

void usleep (Uint32 usec)
 Will freeze the software for usec microseconds.


Protected Attributes

int _groupid
 Internal numeric group id reference member.

String _groupname
 Internal numeric group id reference member.

char * sysname
 Pointer to system name.


Constructor & Destructor Documentation

clawsoft::Group::Group  
 

This is the default constructor, it will initialize the internal groupid and groupname to the same one as the current executing process.

clawsoft::Group::Group int    gid
 

This will create a new Group object with groupid gid.

clawsoft::Group::Group const String   gname
 

This will create a new Group object with groupname gname.


Member Function Documentation

int clawsoft::Unix::chgrp const String   fname,
const String   groupname
[static, inherited]
 

Changes the group owner of the file by its groupname.

int clawsoft::Unix::chgrp const String   fname,
int    userid
[static, inherited]
 

Changes the group owner of the file by its numeric userid.

int clawsoft::Unix::chown const String   fname,
const String   owner
[static, inherited]
 

Changes the owner of the file by its username.

int clawsoft::Unix::chown const String   fname,
int    userid,
int    groupid = -1
[static, inherited]
 

Changes the owner of the file by its numeric userid.

double clawsoft::System::cpuSpeed   [static, inherited]
 

This will return the CPU speed in megahertz.

int clawsoft::System::freeMemory   [static, inherited]
 

Will return the total amount of free system memory.

const char * clawsoft::Object::getClassName   [inherited]
 

Returns the name of the current class.

int clawsoft::Group::getCurrentGroupID   [static]
 

This will return the current process's group id.

int clawsoft::Group::getEffectiveGroupID   [static]
 

This will give the numeric effective group id.

int clawsoft::Unix::getgid const String   groupname [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getgid   [static, inherited]
 

Obtains the current (running) user id.

int clawsoft::Group::getGroupID const String   gname [static]
 

This will return the numeric group id corresponding to the string gname.

int clawsoft::Group::getGroupID  
 

This will return the object's numeric group id.

char * clawsoft::Group::getGroupName int    gid [protected]
 

This method will return a groupname based on a numeric group id.

BE CAREFULL WHEN USING THIS FUNCTION AND ALLWAYS RELEASE THE POINTER IT RETURN IN ORDER TO PREVENT MEMORY LEAKS

const char * clawsoft::Unix::getHostMachine   [inherited]
 

This will return your current architecture description.

void clawsoft::Unix::getKernelInfo   [inherited]
 

This method will update the name and information about the current running kernel.

const char * clawsoft::Unix::getKernelRelease   [inherited]
 

This will return your current kernel release string.

const char * clawsoft::Unix::getKernelReleaseVersion   [inherited]
 

This will return your current kernel release version string.

const char * clawsoft::Unix::getNodeName   [inherited]
 

This method will give you the nodename of your current host machine.

int clawsoft::Unix::getuid const String   username [static, inherited]
 

Obtain uid from username.

int clawsoft::Unix::getuid   [static, inherited]
 

Obtains the current (running) user id.

const char * clawsoft::Unix::getUnixName   [inherited]
 

Use this method to retreives the name of the UNIX version you are currently using.

int clawsoft::System::installedCPUs   [static, inherited]
 

This will return how many CPUs are installed in the system.

void clawsoft::Object::setClassName const char *    n [protected, inherited]
 

Call this method when you need to set the name of the class you're creating, typically in it's constructor, remember that you must set the classname for every class you create, that way you can have more information while debugging.

void clawsoft::Group::setEffectiveGroupID const Group &    grpobj [static]
 

This will set the current process effective group to grpobj.

void clawsoft::Group::setEffectiveGroupID const String   gname [static]
 

This will set the current process effective group name to gname.

void clawsoft::Group::setEffectiveGroupID int    gid [static]
 

This will set the current process effective group id to gid.

void clawsoft::Group::setGroupID const Group &    grpobj [static]
 

This will set the current process group to grpobj.

void clawsoft::Group::setGroupID const String   gname [static]
 

This will set the current process group name to gname.

void clawsoft::Group::setGroupID int    gid [static]
 

This will set the current process group id to gid.

const String & clawsoft::Group::toString  
 

This will return the corresponding groupname as a string.

int clawsoft::System::totalMemory   [static, inherited]
 

Will return the total amount of system memory.

void clawsoft::System::usleep Uint32    usec [static, inherited]
 

Will freeze the software for usec microseconds.


Field Documentation

int clawsoft::Group::_groupid [protected]
 

Internal numeric group id reference member.

String clawsoft::Group::_groupname [protected]
 

Internal numeric group id reference member.

char* clawsoft::Unix::sysname [protected, inherited]
 

Pointer to system name.


The documentation for this class was generated from the following files:

Authors:

Juan V. Guerrero
Jannette C. Mejia
Juan C. Guevara

Powered by:

SourceForgeLogo