Diffstat (limited to 'libopie2/opiecore/linux/opcmciasystem.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | libopie2/opiecore/linux/opcmciasystem.h | 39 |
1 files changed, 30 insertions, 9 deletions
diff --git a/libopie2/opiecore/linux/opcmciasystem.h b/libopie2/opiecore/linux/opcmciasystem.h index ef34964..ac6c1de 100644 --- a/libopie2/opiecore/linux/opcmciasystem.h +++ b/libopie2/opiecore/linux/opcmciasystem.h @@ -106,12 +106,30 @@ class OPcmciaSystem : public QObject * OPcmciaSocket *======================================================================================*/ class OPcmciaSocket : public QObject { Q_OBJECT + public: + + enum OPcmciaSocketCardStatus + { + Unknown = 0, + Occupied = CS_EVENT_CARD_DETECT, + OccupiedCardBus = CS_EVENT_CB_DETECT, + WriteProtected = CS_EVENT_WRITE_PROTECT, + BatteryLow = CS_EVENT_BATTERY_LOW, + BatteryDead = CS_EVENT_BATTERY_DEAD, + Ready = CS_EVENT_READY_CHANGE, + Suspended = CS_EVENT_PM_SUSPEND, + Attention = CS_EVENT_REQUEST_ATTENTION, + InsertionInProgress = CS_EVENT_CARD_INSERTION, + RemovalInProgress = CS_EVENT_CARD_REMOVAL, + ThreeVolts = CS_EVENT_3VCARD, + SupportsVoltage = CS_EVENT_XVCARD, + }; public: /** * Constructor. Normally you don't create @ref OPcmciaSocket objects yourself, * but access them via @ref OPcmciaSystem::socket(). */ @@ -122,16 +140,20 @@ class OPcmciaSocket : public QObject virtual ~OPcmciaSocket(); /** * @returns the corresponding socket number */ int number() const; /** - * @returns the identification string of the card in this socket, or "<Empty Socket>" + * @returns the card managers idea of the cards' identy, or "<Empty Socket>" */ QString identity() const; /** + * @returns the socket status + */ + const OPcmciaSocketCardStatus status() const; + /** * @returns true, if the card is unsupported by the cardmgr */ bool isUnsupported() const; /** * @returns true, if the socket is empty */ @@ -165,33 +187,32 @@ class OPcmciaSocket : public QObject * @note: This operation needs root privileges */ bool reset(); /** * @returns a list of product IDs */ - const QStringList& productIdentity() const; + QStringList productIdentity() const; /** * @returns the manufacturer ID pair */ #if 0 const QPair& manufacturerIdentity() const; #endif - - private: - QStringList _productId; + /** + * @returns the function string + */ + QString function() const; private: void init(); - void buildInformation(); void cleanup(); - bool command( const QString& cmd ); - bool getTuple( cisdata_t tuple ); + bool getTuple( cisdata_t tuple ) const; int _major; int _socket; int _fd; - ds_ioctl_arg_t _ioctlarg; + mutable ds_ioctl_arg_t _ioctlarg; private: class Private; Private *d; }; |