00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef IMR_ITERATOR_H
00015 #define IMR_ITERATOR_H
00016
00017 #include "Locator_Repository.h"
00018 #include "tao/PortableServer/PortableServer.h"
00019 #include "tao/ImR_Client/ImplRepoS.h"
00020
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif
00024
00025
00026
00027
00028
00029
00030
00031 class ImR_Iterator
00032 : public POA_ImplementationRepository::ServerInformationIterator
00033 {
00034 public:
00035 ImR_Iterator (CORBA::ULong n, Locator_Repository& repo, PortableServer::POA_ptr poa);
00036
00037
00038
00039 virtual CORBA::Boolean next_n (
00040 CORBA::ULong how_many,
00041 ImplementationRepository::ServerInformationList_out server_list
00042 );
00043
00044 virtual void destroy (void);
00045
00046 private:
00047 Locator_Repository& repo_;
00048 CORBA::ULong count_;
00049 PortableServer::POA_ptr poa_;
00050 };
00051
00052 #endif