00001 00002 // Copyright (c) 2005, 2006 Yigong Liu 00003 // Permission to use, copy, modify, distribute and sell this software for any 00004 // purpose is hereby granted without fee, provided that the above copyright 00005 // notice appear in all copies and that both that copyright notice and this 00006 // permission notice appear in supporting documentation. 00007 // The author makes no representations about the 00008 // suitability of this software for any purpose. It is provided "as is" 00009 // without express or implied warranty. 00011 00012 #ifndef _CVM_BASE_H_ 00013 #define _CVM_BASE_H_ 00014 00015 #include <CvmBaseChannel.h> 00016 #include <CvmBaseConnector.h> 00017 #include <CvmBaseTask.h> 00018 00019 namespace cvm { 00020 00021 template <class Chan> //dont use "Channel" to avoid conflict with below 00022 class CvmBase { 00023 public: 00024 typedef CvmBaseChannel<Chan> Channel; 00025 typedef CvmBaseConnector<Chan, channel::UnixSockTransport<Chan> > UnixConnector; 00026 typedef CvmBaseConnector<Chan, channel::TcpSockTransport<Chan> > TcpConnector; 00027 typedef CvmBaseTask<Chan> Task; 00028 }; 00029 00030 }; 00031 00032 00033 #endif