Intentando crear una librería

Hola gente. Estoy intentando adaptar un código (que funciona perfectamente) como librería, más en concreto un código que conecta a la red mi arduino ethernet.

Este es el código de mi programa:

#include <ETHc.h>

byte macArduino[] = { 0x90, 0xA2, 0xDA, 0x0D, 0xD5, 0xAA };
int ipServer[] = { 192, 168, 0, 200};


void setup(){
  ETHc newEthernetCon(macArduino,ipServer);
}
void loop(){

}

Y aquí os dejo el código de la librería que he intentado crear:
.h

#ifndef ETHc_h
#define ETHc_h
	
	#include "Arduino.h"

	class ETHc
	{
	  public:
		ETHc(byte *macArduino,int *ipServer);
	  private:
		byte _macArduino[];
		int _ipServer[];
	};

#endif

.cpp

#include "Arduino.h"
#include "ETHc.h"

#include <Dhcp.h>
#include <Dns.h>
#include <Ethernet.h>
#include <EthernetClient.h>
#include <EthernetServer.h>
#include <EthernetUdp.h>
#include <util.h>
#include <SPI.h>

ETHc::ETHc(byte macArduino[] ,int ipServer[])
{
	for(int i=0;i<sizeof(macArduino);i++){
	  _macArduino[i] = macArduino[i];
	}
	
	for(int i=0;i<sizeof(ipServer);i++){
	  _ipServer[i] = ipServer[i];
	}

  
  //CONNECTING
  
  IPAddress server(_ipServer[0],_ipServer[1],_ipServer[2],_ipServer[3]);
  EthernetClient client;

  
  Serial.begin(9600);
  Serial.println("Bienvenido!!!");
  
  if (Ethernet.begin(_macArduino) == 0){
    Serial.println("Fallo al configurar IP usando servidor DHCP");
  }else{
    
    Serial.print("My IP address: ");
    for (byte thisByte = 0; thisByte < 4; thisByte++) {
      // print the value of each byte of the IP address:
      Serial.print(Ethernet.localIP()[thisByte], DEC);
      Serial.print(".");
    }
    Serial.println("");
    Serial.println("Listo");
  }
}

Y este es el error:

C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp: In constructor 'ETHc::ETHc(byte*, int*)':
C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp:26: error: 'IPAddress' was not declared in this scope
C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp:26: error: expected `;' before 'server'
C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp:27: error: 'EthernetClient' was not declared in this scope
C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp:27: error: expected `;' before 'client'
C:\Users\user\Documents\Arduino\libraries\ETHc\ETHc.cpp:33: error: 'Ethernet' was not declared in this scope

¿Puede ser que no esté cogiendo bien la librería Ethernet?

PD: Soy MUY novato con todo esto

MUCHÍSIMAS GRACIAS A TODOS

No he usado nunca la conexión Ethernet de arduino, pero a ver si puedo ayudar.

Según la librería de Arduino Ethernet.h, IPAddress no tiene asociado ningún campo llamado server. Prueba con

IPAdress ip(ip0, ip1, ip2, ip3).

Saludos