2025-04-27 07:49:33 -04:00

61 lines
1.6 KiB
C++

/*
******************************************************************************
******************************************************************************
*
*
* INTEL CORPORATION PROPRIETARY INFORMATION
* This software is supplied under the terms of a license agreement or
* nondisclosure agreement with Intel Corporation and may not be copied or
* disclosed except in accordance with the terms of that agreement.
*
* Copyright (c) 1997, 1998 Intel Corporation All Rights Reserved
******************************************************************************
******************************************************************************
*
*
*
*
*
*/
#if !defined(__ITERATOR_H__)
#define __ITERATOR_H__
//TODO get rid of this array
#define UNIQUE_LANGUAGE_ARRAY_SIZE 50
class CIterator
{
CLanguage** m_ppNextLanguage;
CGroup** m_ppNextGroup;
CString m_UniqueLanguageArray[UNIQUE_LANGUAGE_ARRAY_SIZE];
CComponents m_Components;
public:
CIterator( CString& );
~CIterator() {;}
BOOL NextComponent( );
BOOL NextLanguage( );
BOOL NextUniqueLanguage( );
void NextGroup();
void NextRow();
CGroup* GetNextNonComponentIDGroup( ); // on current compnent
CComponent* m_pCurrentComponent;
CGroup* m_pCurrentGroup;
CLanguage* m_pCurrentLanguage;
CRow* m_pCurrentRow;
CCimObject m_PrototypeClass; // saved for use in instance spawning instances
CGroup m_Group;
CComponent m_Component;
};
#endif // __ITERATOR_H__