home *** CD-ROM | disk | FTP | other *** search
- // RunModuleListFile.cpp: implementation of the CRunModuleListFile class.
- //
- /*
- Copyright 2001 Anish Mistry. All rights reserved.
-
- Redistribution and use in source and binary forms, with or without modification,
- are permitted provided that the following conditions are met:
-
- 1. Redistributions of source code must retain the above copyright notice,
- this list of conditions and the following disclaimer.
- 2. Redistributions in binary form must reproduce the above copyright notice,
- this list of conditions and the following disclaimer in the documentation
- and/or other materials provided with the distribution.
-
- THIS SOFTWARE IS PROVIDED BY ANISH MISTRY ``AS IS'' AND ANY EXPRESS OR IMPLIED
- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
- AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS
- OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY,
- OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
- GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
- CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
- TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
- The views and conclusions contained in the software and documentation are those
- of the authors and should not be interpreted as representing official policies,
- either expressed or implied, of Anish Mistry or AM Productions.
-
- * Variation of the FreeBSD License. http://www.freebsd.org/copyright/freebsd-license.html
- */
- //////////////////////////////////////////////////////////////////////
-
- #include "stdafx.h"
- #include "RunModuleListFile.h"
-
- //////////////////////////////////////////////////////////////////////
- // Construction/Destruction
- //////////////////////////////////////////////////////////////////////
-
- CRunModuleListFile::CRunModuleListFile()
- {
-
- }
-
- CRunModuleListFile::~CRunModuleListFile()
- {
-
- }
-
- bool CRunModuleListFile::AddItem(const char *pObject,const char *pCommand)
- {// begin AddItem
- if(*pObject && *pCommand)
- {// begin add item
- int nLastItem = 0;
- if(FindItem(pObject,pCommand,nLastItem))
- return false;
- char pSection[16] = {NULL};
- Itoa(nLastItem,pSection);
- WriteKey(pSection,"object",pObject);
- WriteKey(pSection,"command",pCommand);
- }// end add item
- return true;
- }// end AddItem
-
- int CRunModuleListFile::FindItem(const char *pObject, const char *pCommand, int &nLastItem)
- {// begin FindItem
- char pTmpObject[MAX_PATH] = {NULL};
- char pTmpCommand[MAX_PATH] = {NULL};
- // char pCurrentSection[MAX_PATH] = {NULL};
- bool bFound = false;
- for(int i = 1;GetItem(i,pTmpObject,pTmpCommand) && !bFound;i++)
- {// begin search file
- if(lstrcmpi(pTmpObject,pObject) == 0 && lstrcmpi(pTmpCommand,pCommand) == 0)
- bFound = true;
- }// end search file
- nLastItem = i; // passes the next free section number
- if(bFound)
- return i; // found
- return 0; // not found
- }// end FindItem
-
- bool CRunModuleListFile::GetItem(int nItem, char *pObject, char *pCommand)
- {// begin GetItem
- char pSection[MAX_PATH] = {NULL};
- // convert section number to a string
- Itoa(nItem,pSection);
- // set data file
- if(ReadKey(pSection,"object","",pObject,MAX_OBJECT_LENGTH-1) &&
- ReadKey(pSection,"command","",pCommand,MAX_PATH-1))
- return true;
- return false;
- }// end GetItem
-
-