Skip to content

Common Communication Events Layer| An automatic resouce managing network framework

License

Notifications You must be signed in to change notification settings

Sleeplessy/ccel

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

44 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CCEL - Common Communication Event Layer

Build Status

CCEL provides a variant set of effective network-apis and udev binding implemented under Boost.It uses a managed handler pool to achieve memory management(using Boost.object_pool),and suppords function hooking through handlers.

Protocols that supported

  • TCP
  • UDP
  • HTTP
  • CANBus (SocketCAN,CAN over TCP/IP Protocols,CAN over Serial)
  • ModBus (Through TCP/UDP,Serial)

Usage

Include "ccel/ccel.hpp" for all protocols or includes sperated headers for exact functions. You can also use ccel/udev.hpp to handle user-space devices (like uinput)

Progress

Works need to be done,and some needs to refatrory

  • udev keyboard handler
    • virtual keyboard
      • pretend press&release
      • click emulated
    • virtual mouse
    • virtual joypad
    • callback hooking
  • TCP handler
  • UDP handler
  • HTTP handler
  • Serial handler
  • CANBus Protocol Family Implementation
    • SocketCAN handler
      • callback hooking
      • blocked&asynchronous data reading
      • blocked&asynchronous data transfer
  • ModBus Protocol Family Implementation
    • over TCP
    • over UDP
    • over HTTP
    • over Serial

Copyright [2017] [Sleeplessy]

CCEL - Common Communication Event Layer

Build Status

CCEL provides a variant set of effective network-apis and udev binding implemented under Boost.It uses a managed handler pool to achieve memory management(using Boost.object_pool),and suppords function hooking through handlers.

Protocols that supported

  • TCP
  • UDP
  • HTTP
  • CANBus (SocketCAN,CAN over TCP/IP Protocols,CAN over Serial)
  • ModBus (Through TCP/UDP,Serial)

Usage

Include "ccel/ccel.hpp" for all protocols or includes sperated headers for exact functions. You can also use ccel/udev.hpp to handle user-space devices (like uinput)

Progress

Works need to be done,and some needs to refatrory

  • udev keyboard handler
    • virtual keyboard
      • pretend press&release
      • click emulated
    • virtual mouse
    • virtual joypad
    • callback hooking
  • TCP handler
  • UDP handler
  • HTTP handler
  • Serial handler
  • CANBus Protocol Family Implementation
    • SocketCAN handler
      • callback hooking
      • blocked&asynchronous data reading
      • blocked&asynchronous data transfer
  • ModBus Protocol Family Implementation
    • over TCP
    • over UDP
    • over HTTP
    • over Serial

LICENSE

Copyright [2017] [Sleeplessy]

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 or the project contained LICENSE file

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

About

Common Communication Events Layer| An automatic resouce managing network framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published