35 #ifndef EMANEMODELSIEEE802ABGIEEE80211MACPCRMANAGER_HEADER_ 36 #define EMANEMODELSIEEE802ABGIEEE80211MACPCRMANAGER_HEADER_ 42 #include <libxml/parser.h> 52 namespace IEEE80211ABG
93 PCREntry(
float fSinr,
float por):
104 typedef std::vector <PCREntry> PCREntryVector;
111 typedef std::vector <float> PORVector;
131 typedef std::map <std::uint16_t, PCRPOR> PCRPORMap;
159 void load(
const std::string & uri);
172 float getPCR(
float fSinr,
size_t size, std::uint16_t DataRateIndex);
175 void openDoc(
const std::string & uri, xmlParserCtxtPtr * ppContext,
176 xmlDoc ** ppDocument, xmlNode ** ppRoot);
178 void closeDoc(xmlParserCtxtPtr * ppContext, xmlDoc ** ppDocument);
180 std::string getAttribute(xmlNodePtr cur,
const xmlChar *
id);
182 std::string getContent(xmlNodePtr cur);
184 void getTable(xmlNodePtr cur, PCRManager::PCRPORMap & map);
186 void getDataRate(xmlNodePtr cur, PCRManager::PCRPORMap & map);
188 void getRows(xmlNodePtr cur, PCRManager::PCREntryVector & vec);
196 PCRPORMap pcrPorMap_;
198 size_t tablePacketSize_;
205 #endif //EMANEMODELSIEEE802ABGIEEE80211MACPCRMANAGER_HEADER_
provides access to the pcr curves
void load(const std::string &uri)
PCRManager(NEMId id, PlatformServiceProvider *pPlatformService)
float getPCR(float fSinr, size_t size, std::uint16_t DataRateIndex)