ROOT logo
// $Id: ZMirEmittingEntity.h 2088 2008-11-23 20:26:46Z matevz $

// Copyright (C) 1999-2008, Matevz Tadel. All rights reserved.
// This file is part of GLED, released under GNU General Public License version 2.
// For the licensing terms see $GLEDSYS/LICENSE or http://www.gnu.org/.

#ifndef GledCore_ZMirEmittingEntity_H
#define GledCore_ZMirEmittingEntity_H

#include <Glasses/ZGlass.h>
#include <Glasses/ZIdentity.h>
#include <Glasses/ZHashList.h>

class SaturnInfo;

class ZMirEmittingEntity : public ZGlass {
  MAC_RNR_FRIENDS(ZMirEmittingEntity);

  friend class Gled; friend class Saturn; friend class ZSunQueen;

private:
  void _init();

protected:
  TString		mLogin;			// X{GS} 7 TextOut()
  ZLink<ZIdentity>		mPrimaryIdentity;	// X{gS} L{}
  ZLink<ZHashList>		mActiveIdentities;	// X{gS} L{}

public:
  ZMirEmittingEntity(const Text_t* n="ZMirEmittingEntity", const Text_t* t=0) :
    ZGlass(n,t) { _init(); }

  virtual void AdEnlightenment();

  virtual SaturnInfo* HostingSaturn() = 0;
  virtual void Message(const Text_t* s) {} // X{E}
  virtual void Warning(const Text_t* s) {} // X{E} T{MEE::Self}
  virtual void Error(const Text_t* s)   {} // X{E} T{MEE::Self}

  Bool_t HasIdentity(ZIdentity* ident);

#include "ZMirEmittingEntity.h7"
  ClassDef(ZMirEmittingEntity, 1);
}; // endclass ZMirEmittingEntity


#endif
 ZMirEmittingEntity.h:1
 ZMirEmittingEntity.h:2
 ZMirEmittingEntity.h:3
 ZMirEmittingEntity.h:4
 ZMirEmittingEntity.h:5
 ZMirEmittingEntity.h:6
 ZMirEmittingEntity.h:7
 ZMirEmittingEntity.h:8
 ZMirEmittingEntity.h:9
 ZMirEmittingEntity.h:10
 ZMirEmittingEntity.h:11
 ZMirEmittingEntity.h:12
 ZMirEmittingEntity.h:13
 ZMirEmittingEntity.h:14
 ZMirEmittingEntity.h:15
 ZMirEmittingEntity.h:16
 ZMirEmittingEntity.h:17
 ZMirEmittingEntity.h:18
 ZMirEmittingEntity.h:19
 ZMirEmittingEntity.h:20
 ZMirEmittingEntity.h:21
 ZMirEmittingEntity.h:22
 ZMirEmittingEntity.h:23
 ZMirEmittingEntity.h:24
 ZMirEmittingEntity.h:25
 ZMirEmittingEntity.h:26
 ZMirEmittingEntity.h:27
 ZMirEmittingEntity.h:28
 ZMirEmittingEntity.h:29
 ZMirEmittingEntity.h:30
 ZMirEmittingEntity.h:31
 ZMirEmittingEntity.h:32
 ZMirEmittingEntity.h:33
 ZMirEmittingEntity.h:34
 ZMirEmittingEntity.h:35
 ZMirEmittingEntity.h:36
 ZMirEmittingEntity.h:37
 ZMirEmittingEntity.h:38
 ZMirEmittingEntity.h:39
 ZMirEmittingEntity.h:40
 ZMirEmittingEntity.h:41
 ZMirEmittingEntity.h:42
 ZMirEmittingEntity.h:43
 ZMirEmittingEntity.h:44
 ZMirEmittingEntity.h:45
 ZMirEmittingEntity.h:46
 ZMirEmittingEntity.h:47