ComponentInstance.h revision 6ba361d96bc2581667b3400f87ff89fae6449e1f
1/* <auto_header> 2 * <FILENAME> 3 * 4 * INTEL CONFIDENTIAL 5 * Copyright © 2011 Intel 6 * Corporation All Rights Reserved. 7 * 8 * The source code contained or described herein and all documents related to 9 * the source code ("Material") are owned by Intel Corporation or its suppliers 10 * or licensors. Title to the Material remains with Intel Corporation or its 11 * suppliers and licensors. The Material contains trade secrets and proprietary 12 * and confidential information of Intel or its suppliers and licensors. The 13 * Material is protected by worldwide copyright and trade secret laws and 14 * treaty provisions. No part of the Material may be used, copied, reproduced, 15 * modified, published, uploaded, posted, transmitted, distributed, or 16 * disclosed in any way without Intel’s prior express written permission. 17 * 18 * No license under any patent, copyright, trade secret or other intellectual 19 * property right is granted to or conferred upon you by disclosure or delivery 20 * of the Materials, either expressly, by implication, inducement, estoppel or 21 * otherwise. Any license under such intellectual property rights must be 22 * express and approved by Intel in writing. 23 * 24 * AUTHOR: Patrick Benavoli (patrickx.benavoli@intel.com) 25 * CREATED: 2011-06-01 26 * UPDATED: 2011-07-27 27 * 28 * 29 * </auto_header> 30 */ 31#pragma once 32 33#include "TypeElement.h" 34 35class CComponentType; 36 37class CComponentInstance : public CTypeElement 38{ 39public: 40 CComponentInstance(const string& strName); 41 42 // Mapping info 43 virtual bool getMappingData(const string& strKey, const string*& pStrValue) const; 44 virtual bool hasMappingData() const; 45 46 // From IXmlSink 47 virtual bool fromXml(const CXmlElement& xmlElement, CXmlSerializingContext& serializingContext); 48 49 // CElement 50 virtual string getKind() const; 51private: 52 virtual bool childrenAreDynamic() const; 53 virtual CInstanceConfigurableElement* doInstantiate() const; 54 virtual void populate(CElement* pElement) const; 55 56 // Related component type 57 const CComponentType* _pComponentType; 58}; 59 60