|
Katana Plug-in APIs 0.1
|
00001 #ifndef INCLUDED_FNDEFAULTATTRIBUTEPRODUCERUTIL_H 00002 #define INCLUDED_FNDEFAULTATTRIBUTEPRODUCERUTIL_H 00003 00004 #include <FnAttribute/FnAttribute.h> 00005 #include <FnAttribute/FnGroupBuilder.h> 00006 00007 #include <FnDefaultAttributeProducer/FnDefaultAttributeProducerAPI.h> 00008 #include <FnDefaultAttributeProducer/plugin/ns.h> 00009 00010 00011 FNDEFAULTATTRIBUTEPRODUCER_NAMESPACE_ENTER 00012 { 00013 namespace DapUtil 00014 { 00015 00016 FNDEFAULTATTRIBUTEPRODUCER_API 00017 void SetAttrHints( 00018 FnAttribute::GroupBuilder & gb, 00019 const std::string & attrPath, 00020 const FnAttribute::GroupAttribute & hintsGroup); 00021 00022 FNDEFAULTATTRIBUTEPRODUCER_API 00023 void SetHintsForAllChildren( 00024 FnAttribute::GroupBuilder & gb, 00025 const std::string & attrPath, 00026 const FnAttribute::GroupAttribute & hintsGroup); 00027 00028 FNDEFAULTATTRIBUTEPRODUCER_API 00029 void CopyAttrHints( 00030 FnAttribute::GroupBuilder & gb, 00031 const FnAttribute::GroupAttribute & srcGrp, 00032 const std::string & srcAttrPath, 00033 const std::string & dstAttrPath, 00034 bool recursive); 00035 00036 FNDEFAULTATTRIBUTEPRODUCER_API 00037 void PromoteAttrHints( 00038 FnAttribute::GroupBuilder & gb, 00039 const FnAttribute::GroupAttribute & attrWithHints, 00040 const std::string & attrPath); 00041 00042 FNDEFAULTATTRIBUTEPRODUCER_API 00043 FnAttribute::GroupAttribute StripAttrHints( 00044 const FnAttribute::GroupAttribute & attr); 00045 00046 00047 FNDEFAULTATTRIBUTEPRODUCER_API 00048 void SetContainerHints( 00049 FnAttribute::GroupBuilder & gb, 00050 const std::string & attrPath, 00051 const std::string & containerPath, 00052 const FnAttribute::GroupAttribute & hintsGroup); 00053 00062 FNDEFAULTATTRIBUTEPRODUCER_API 00063 FnAttribute::GroupAttribute GetContainerHints( 00064 const FnAttribute::GroupAttribute& defaultsGroup, 00065 const std::string& attributePath, const std::string& containerPath); 00066 00072 FNDEFAULTATTRIBUTEPRODUCER_API 00073 FnAttribute::GroupAttribute GetAttributeHints( 00074 const FnAttribute::GroupAttribute& defaultsGroup, 00075 const std::string& attributePath); 00076 00077 FNDEFAULTATTRIBUTEPRODUCER_API 00078 void ParseAttributeHints( 00079 const std::string & argsRoot, 00080 FnAttribute::GroupBuilder & mainGb, 00081 FnAttribute::GroupBuilder & argsGb, 00082 FnAttribute::GroupAttribute & groupAttr, 00083 const std::string & attrPath); 00084 00085 } // namespace DapUtil 00086 } 00087 FNDEFAULTATTRIBUTEPRODUCER_NAMESPACE_EXIT 00088 00089 #endif // INCLUDED_FNDEFAULTATTRIBUTEPRODUCERUTIL_H 00090
1.7.3