// =========================================================================== // TCFArray.h // Part of Contextual Menu Workshop by Abracode Inc. // http://free.abracode.com/cmworkshop/ // Copyright © 2002-2003 Abracode, Inc. All rights reserved. // =========================================================================== // // Template-based array class wrapping CFDataArray #pragma once #include "CFDataArray.h" template class TCFArray : public CFDataArray { public: TCFArray() : CFDataArray() { } TCFArray(CFStringRef inKey, CFStringRef inPrefsIdentifier) : CFDataArray(inKey, inPrefsIdentifier) { } virtual ~TCFArray() { } Boolean FetchItemAt( CFIndex inIndex, T& outItem) const { CFIndex buffSize = sizeof(T); return CFDataArray::FetchItemAt(inIndex, &outItem, buffSize ); } void AddItem( const T& inItem ) { CFDataArray::AddItem( &inItem, sizeof(T) ); } private: using CFDataArray::FetchItemAt; using CFDataArray::AddItem; };