summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings2/networksettings2/asdevice.h
blob: 058fc4cb3136640a6033548f7af374fd0424d957 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#ifndef ASDEVICE_H
#define ASDEVICE_H

#include "system.h"
#include "netnode.h"

// pure virtual (component oriented) interface of any
// plugin that offers a device
class AsDevice : public RuntimeInfo {

public :

    AsDevice( ANetNodeInstance * NNI ) :
        RuntimeInfo( NNI ) { 
      AssignedInterface = 0;
    }

    // return the interface assigned to this device
    // e.g eth0, wlan, ...
    InterfaceInfo * assignedInterface( void )
      { return AssignedInterface; }
    virtual void assignInterface( InterfaceInfo * NI )
      { AssignedInterface = NI; }

    // number of device to configure for this Device type
    virtual long count( void )
      { return 1; }
    // generate NIC name of device number ...
    virtual QString genNic( long NicNr ) = 0;

private :

    InterfaceInfo * AssignedInterface;

};

#endif