X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=Macro%2FPartialMap%2Fmacro.h;h=a165a458d503897c5b76ce17de9ff39713be5635;hb=5f262ea4b68a07e9b94ce0a49c0f7196e5f32b3b;hp=6722c2ca9906eabdcc93894e687db98b3f0e02a1;hpb=1fd777815b465951ba558f290f9be8d7b241b95c;p=kiibohd-controller.git diff --git a/Macro/PartialMap/macro.h b/Macro/PartialMap/macro.h index 6722c2c..a165a45 100644 --- a/Macro/PartialMap/macro.h +++ b/Macro/PartialMap/macro.h @@ -1,26 +1,20 @@ -/* Copyright (C) 2014 by Jacob Alexander +/* Copyright (C) 2014-2015 by Jacob Alexander * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: + * This file is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. + * This file is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. + * You should have received a copy of the GNU General Public License + * along with this file. If not, see . */ -#ifndef __macro_h -#define __macro_h +#pragma once // ----- Includes ----- @@ -29,33 +23,21 @@ -// ----- Defines ----- +// ----- Capabilities ----- -// Key states (DO NOT USE for analog keyboards) -#define DEPRESSED 0 -#define RELEASED 1 -#define PRESSED 254 -#define HELD 255 - - -// ----- Variables ----- - - - -// ----- Macros ----- +void Macro_layerState_capability( uint8_t state, uint8_t stateType, uint8_t *args ); +void Macro_layerLatch_capability( uint8_t state, uint8_t stateType, uint8_t *args ); +void Macro_layerLock_capability( uint8_t state, uint8_t stateType, uint8_t *args ); +void Macro_layerShift_capability( uint8_t state, uint8_t stateType, uint8_t *args ); // ----- Functions ----- -void Macro_keyState( uint8_t scanCode, uint8_t state ); void Macro_analogState( uint8_t scanCode, uint8_t state ); +void Macro_keyState( uint8_t scanCode, uint8_t state ); void Macro_ledState( uint8_t ledCode, uint8_t state ); -void Macro_bufferAdd( uint8_t byte ); -void Macro_bufferRemove( uint8_t byte ); -void Macro_finishWithUSBBuffer( uint8_t sentKeys ); +void Macro_triggerState( void *triggers, uint8_t num ); // triggers is of type TriggerGuide, void* for circular dependencies void Macro_process(); void Macro_setup(); -#endif -