summaryrefslogtreecommitdiff
path: root/libopie2/opiecore/linux/opcmciasystem.h
Side-by-side diff
Diffstat (limited to 'libopie2/opiecore/linux/opcmciasystem.h') (more/less context) (ignore whitespace changes)
-rw-r--r--libopie2/opiecore/linux/opcmciasystem.h74
1 files changed, 58 insertions, 16 deletions
diff --git a/libopie2/opiecore/linux/opcmciasystem.h b/libopie2/opiecore/linux/opcmciasystem.h
index 694bf16..4b445aa 100644
--- a/libopie2/opiecore/linux/opcmciasystem.h
+++ b/libopie2/opiecore/linux/opcmciasystem.h
@@ -33,4 +33,3 @@
#include <qobject.h>
-#include <qdict.h>
-#include <qmap.h>
+#include <qlist.h>
@@ -39,3 +38,3 @@ namespace Core {
-class OPcmciaCard;
+class OPcmciaSocket;
@@ -57,4 +56,4 @@ class OPcmciaSystem : public QObject
public:
- typedef QDict<OPcmciaCard> CardMap;
- typedef QDictIterator<OPcmciaCard> CardIterator;
+ typedef QList<OPcmciaSocket> CardList;
+ typedef QListIterator<OPcmciaSocket> CardIterator;
@@ -62,3 +61,3 @@ class OPcmciaSystem : public QObject
/**
- * @returns the number of available interfaces
+ * @returns the number of available sockets
*/
@@ -66,2 +65,6 @@ class OPcmciaSystem : public QObject
/**
+ * @returns the number of populated sockets
+ */
+ int cardCount() const;
+ /**
* @returns a pointer to the (one and only) @ref OSystem instance.
@@ -74,8 +77,8 @@ class OPcmciaSystem : public QObject
/**
- * @returns a pointer to the @ref OAudioInterface object for the specified @a interface or 0, if not found
- * @see OAudioInterface
+ * @returns a pointer to the @ref OPcmciaSocket object correspinding to socket number n, or 0, if not found
+ * @see OPcmciaSocket
*/
- OPcmciaCard* card( const QString& interface ) const;
+ OPcmciaSocket* socket( unsigned int number );
/**
- * @internal Rebuild the internal interface database
+ * @internal Rebuild the internal database
* @note Sometimes it might be useful to call this from client code,
@@ -90,3 +93,3 @@ class OPcmciaSystem : public QObject
static OPcmciaSystem* _instance;
- CardMap _interfaces;
+ CardList _interfaces;
class Private;
@@ -97,6 +100,6 @@ class OPcmciaSystem : public QObject
/*======================================================================================
- * OPcmciaCard
+ * OPcmciaSocket
*======================================================================================*/
-class OPcmciaCard : public QObject
+class OPcmciaSocket : public QObject
{
@@ -106,6 +109,6 @@ class OPcmciaCard : public QObject
/**
- * Constructor. Normally you don't create @ref OPcmciaCard objects yourself,
+ * Constructor. Normally you don't create @ref OPcmciaSocket objects yourself,
* but access them via @ref OPcmciaSystem::card().
*/
- OPcmciaCard( QObject* parent, const char* name );
+ OPcmciaSocket( int socket, QObject* parent, const char* name );
/**
@@ -113,3 +116,39 @@ class OPcmciaCard : public QObject
*/
- virtual ~OPcmciaCard();
+ virtual ~OPcmciaSocket();
+ /**
+ * @returns the corresponding socket number
+ */
+ int number() const;
+ /**
+ * @returns the identification string of the card in this socket, or "<Empty Socket>"
+ */
+ QString identity() const;
+ /**
+ * @returns true, if the socket is empty
+ */
+ bool isEmpty() const;
+ /**
+ * @returns true, if the socket is suspended
+ */
+ bool isSuspended() const;
+ /**
+ * Eject card. @returns true, if operation succeeded
+ * @note: This operation needs root privileges
+ */
+ bool eject();
+ /**
+ * Insert card. @returns true, if operation succeeded
+ * @note: This operation needs root privileges
+ */
+ bool insert();
+ /**
+ * Suspend card. @returns true, if operation succeeded
+ * @note: This operation needs root privileges
+ */
+ bool suspend();
+ /**
+ * Resume card. @returns true, if operation succeeded
+ * @note: This operation needs root privileges
+ */
+ bool resume();
@@ -119,2 +158,5 @@ class OPcmciaCard : public QObject
void init();
+ bool command( const QString& cmd );
+ int _socket;
+
private: