1 // ShareAttrDirIterator.cpp 2 3 #include "ShareAttrDirIterator.h" 4 5 #include "ShareAttrDir.h" 6 7 // constructor ShareAttrDirIterator()8ShareAttrDirIterator::ShareAttrDirIterator() 9 : 10 fAttrDir(NULL), 11 fCurrentAttribute(NULL) 12 { 13 } 14 15 // destructor ~ShareAttrDirIterator()16ShareAttrDirIterator::~ShareAttrDirIterator() 17 { 18 } 19 20 // SetAttrDir 21 void SetAttrDir(ShareAttrDir * attrDir)22ShareAttrDirIterator::SetAttrDir(ShareAttrDir* attrDir) 23 { 24 fAttrDir = attrDir; 25 fCurrentAttribute = (fAttrDir ? fAttrDir->GetFirstAttribute() : NULL); 26 } 27 28 // SetCurrentAttribute 29 void SetCurrentAttribute(Attribute * attribute)30ShareAttrDirIterator::SetCurrentAttribute(Attribute* attribute) 31 { 32 fCurrentAttribute = attribute; 33 } 34 35 // GetCurrentAttribute 36 Attribute* GetCurrentAttribute() const37ShareAttrDirIterator::GetCurrentAttribute() const 38 { 39 return fCurrentAttribute; 40 } 41 42 // NextAttribute 43 Attribute* NextAttribute()44ShareAttrDirIterator::NextAttribute() 45 { 46 if (fAttrDir && fCurrentAttribute) 47 fCurrentAttribute = fAttrDir->GetNextAttribute(fCurrentAttribute); 48 return fCurrentAttribute; 49 } 50 51 // Rewind 52 void Rewind()53ShareAttrDirIterator::Rewind() 54 { 55 fCurrentAttribute = (fAttrDir ? fAttrDir->GetFirstAttribute() : NULL); 56 } 57 58