add factory classes

This commit is contained in:
Alexey Rybalchenko 2014-01-21 15:57:29 +01:00
parent 65cdc33a15
commit a383434c45
4 changed files with 79 additions and 0 deletions

View File

@ -0,0 +1,6 @@
/**
* FairMQTransportFactory.cxx
*
* @since 2014-01-20
* @author: A. Rybalchenko
*/

View File

@ -0,0 +1,23 @@
/**
* FairMQTransportFactory.h
*
* @since 2014-01-20
* @author: A. Rybalchenko
*/
#ifndef FAIRMQTRANSPORTFACTORY_H_
#define FAIRMQTRANSPORTFACTORY_H_
#include "FairMQMessage.h"
#include "FairMQSocket.h"
class FairMQTransportFactory
{
public:
virtual FairMQMessage* CreateMessage() = 0;
virtual FairMQSocket* CreateSocket(FairMQContext* context, int type, int num) = 0;
virtual ~FairMQTransportFactory() {};
};
#endif /* FAIRMQTRANSPORTFACTORY_H_ */

View File

@ -0,0 +1,23 @@
/**
* FairMQTransportFactoryZMQ.cxx
*
* @since 2014-01-20
* @author: A. Rybalchenko
*/
#include "FairMQTransportFactoryZMQ.h"
FairMQTransportFactoryZMQ::FairMQTransportFactoryZMQ()
{
}
FairMQMessage* FairMQTransportFactoryZMQ::CreateMessage()
{
return new FairMQMessageZMQ();
}
FairMQSocket* FairMQTransportFactoryZMQ::CreateSocket(FairMQContext* context, int type, int num)
{
return new FairMQSocketZMQ(context, type, num);
}

View File

@ -0,0 +1,27 @@
/**
* FairMQTransportFactoryZMQ.h
*
* @since 2014-01-20
* @author: A. Rybalchenko
*/
#ifndef FAIRMQTRANSPORTFACTORYZMQ_H_
#define FAIRMQTRANSPORTFACTORYZMQ_H_
#include "FairMQTransportFactory.h"
#include "FairMQContext.h"
#include "FairMQMessageZMQ.h"
#include "FairMQSocketZMQ.h"
class FairMQTransportFactoryZMQ : public FairMQTransportFactory
{
public:
FairMQTransportFactoryZMQ();
virtual FairMQMessage* CreateMessage();
virtual FairMQSocket* CreateSocket(FairMQContext* context, int type, int num);
virtual ~FairMQTransportFactoryZMQ() {};
};
#endif /* FAIRMQTRANSPORTFACTORYZMQ_H_ */