⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gsm_cb.h

📁 对各种手机进行编程的工具包源码gsmlib 1.9版本。
💻 H
字号:
// *************************************************************************// * GSM TA/ME library// *// * File:    gsm_cb.h// *// * Purpose: Cell Broadcast Message Implementation// *// * Author:  Peter Hofmann (software@pxh.de)// *// * Created: 4.8.2001// *************************************************************************#ifndef GSM_CB_H#define GSM_CB_H#include <gsmlib/gsm_sms_codec.h>#include <gsmlib/gsm_util.h>#include <string>using namespace std;namespace gsmlib{  // representation of DataCodingScheme  // The data coding scheme is described in detail in ETSI GSM 03.38, section 5  // This class reuses the DCS_* constants from DataCodingScheme in   // gsm_sms_codec  class CBDataCodingScheme  {  public:    enum Language {German = 0, English = 1, Italian = 2, French = 3,                   Spanish = 4, Dutch = 5, Swedish = 6, Danish = 7,                   Portuguese = 8, Finnish = 9, Norwegian = 10, Greek = 11,                   Turkish = 12, Unknown = 1000};  private:    unsigned char _dcs;    Language _language;  public:    // initialize with data coding scheme octet    CBDataCodingScheme(unsigned char dcs);        // default constructor    CBDataCodingScheme() : _dcs(DCS_DEFAULT_ALPHABET), _language(English) {}    // return language of CBM    Language getLanguage() const {return _language;}    // return compression level (if language == Unknown)    bool compressed() const {return (_dcs & DCS_COMPRESSED) == DCS_COMPRESSED;}    // return type of alphabet used    // (DCS_DEFAULT_ALPHABET, DCS_EIGHT_BIT_ALPHABET, DCS_SIXTEEN_BIT_ALPHABET,    // DCS_RESERVED_ALPHABET)    unsigned char getAlphabet() const      {return _language == Unknown ? _dcs & (3 << 2) : DCS_DEFAULT_ALPHABET;}    // create textual representation of CB data coding scheme    string toString() const;  };  // representation of Cell Broadcast message (CBM)  // The CBM format is described in detail in ETSI GSM 03.41, section 9.3    class CBMessage : public RefBase  {  public:    enum GeographicalScope {CellWide, PLMNWide, LocationAreaWide,                            CellWide2};  private:    // fields parsed from the CB TPDU    GeographicalScope _geographicalScope;    int _messageCode;    int _updateNumber;    int _messageIdentifier;    CBDataCodingScheme _dataCodingScheme;    int _totalPageNumber;    int _currentPageNumber;    string _data;  public:    // constructor with given pdu    CBMessage(string pdu) throw(GsmException);    // accessor functions    GeographicalScope getGeographicalScope() const {return _geographicalScope;}    int getMessageCode() const {return _messageCode;}    int getUpdateNumber() const {return _updateNumber;}    int getMessageIdentifier() const {return _messageIdentifier;}    CBDataCodingScheme getDataCodingScheme() const {return _dataCodingScheme;}    int getTotalPageNumber() const {return _totalPageNumber;}    int getCurrentPageNumber() const {return _currentPageNumber;}    string getData() const {return _data;}    // create textual representation of CBM    string toString() const;  };  // some useful typdefs  typedef Ref<CBMessage> CBMessageRef;};#endif // GSM_CB_H

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -