Source: STDynamicDataLink.h


Annotated List
Files
Globals
Hierarchy
Index
/*=============================================================================

    Copyright (C) 2001 Silicon Tao Technology Systems
    E-mail:  Support 
    Web:     www.silicontao.com

    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
=============================================================================*/

/*=============================================================================
   File Name:					STDynamicDataLink.h
	Object Name:				STDynamicDataLink
   Programmer Name:			Roy Souther
   By Command of:				Silicon Tao Technology Systems
   License:						GNU general public license. See GNU.
   Day Zero:					02152000, Feburary 15, 2000
   Target Platform:			Linux
   Registors Used:       
   Compiler Used:        	GNU g++
   Compiled Settings:    
   Resources Used:       
   Libraries Used:       	alloc.h
   Ports Used:           	None
   Title of program:			Object library
   Discription:				Basic linked list for integers
=============================================================================*/
#ifndef STDynamicDataLink_included 
#define STDynamicDataLink_included 

#include 
#include 
#include 
#include 

/**
 * Can be used to send simple text messages to other running applications.
 *
 * @short Inter-application text messaging.
 */   
class STDynamicDataLink
{
   private:
      /**
       * 
       */   
      QString ReturnString;

      /**
       * 
       */   
      STSystemAPI *SystemAPI1;

      /**
       * 
       */   
      STStringList *MessageList;
      
      /**
       * 
       */   
      void CreateMyMessageFile();

      /**
       * 
       */   
      QString MessageFileName(int UseThisPid);

      /**
       * 
       */   
      QString MyMessageFile();
   public:
      /**
       * Returns True if there is a new, unread text message waiting for you.
       */   
      bool IsNewMessageWaiting();

      /**
       * Returns True if there is a text message waiting for you.
       */   
      bool IsMessageWaiting();

      /**
       * Used to send a text message to an application.
       */   
      bool SendMessage(QString &TheMessage, int PidToSendTo, QString &AppNameToSendTo);

      /**
       * Returns only the message part of a text message.
       */   
      QString ExtractMessage(QString &OriginalMessage);

      /**
       * Returns only the name of the application that sent a text message.
       */   
      QString ExtractSender(QString &OriginalMessage);

      /**
       * Pushes a read message back on to the stack of messages.
       *
       * This is usefull when you are expecting to get a spacific message.
       * You can continue to read messages and use IsNewMessageWaiting() untill
       * you receive your message. Other messages can be left on the stack to be used
       * by other parts of your application.
       * 
       * See also
       * @ref IsNewMessageWaiting
       * @ref STAppLogging
       * @ref STAppLogging::LoggingOn
       */   
      void ReplaceMessage(QString &OldMessage);

      /**
       * Returns the top message waiting on the stack of messages. That message is deleted form the stack.
       */   
      QString ReadMessage();

      /**
       * Constructor
       */   
      STDynamicDataLink();

      /**
       * Destructor
       */   
      ~STDynamicDataLink();
};

#endif // STDynamicDataLink_included 

Generated by: root on UtopiaPlanitia.Ept on Mon Dec 10 22:55:12 2001, using kdoc 2.0a53.