Click here to Skip to main content
14,546,611 members
C

C

Great Reads

by Martin Mitáš
How to support scrolling within your controls.
by Volynsky Alex
New features of the C++17 standard
by Jeffrey Walton
Perform authenticated encryption with Crypto++.
by Jecho Jekov
Provides an easy way to use C calling convention callback functions in C# and VB

Latest Articles

by Steffen Ploetz
Check whether ReactOS is able to run OpenGL, determine a convincing IDE and get started with the OpenGL on ReactOS.
by Askar Azhibaev
Calculating the pi number faster using a simple formula
by D4rkTrick
Big picture of GAction, GActionGroup, GActionMap, GActionEntry, GSimpleAction and GSimpleActionGroup
by Arthur V. Ratz
In this article I will thoroughly discuss about the several aspects of using the revolutionary new Intel® oneAPI HPC Toolkit to deliver a modern code that implements a parallel “stable” sort

All Articles

Sort by Updated

C 

28 Apr 2009
Member 2516638
C++ wrapper class to compute moving averages
25 Apr 2012
Member 8823543
GLW is a simple, compact, <i>drop-in</i> framework for developing simple OpenGL games and demos. Its focus is ease of use, platform abstraction and small footprint.
13 Oct 2013
Member 9294701
A simple, portable yet efficient Quicksort implementation in C
18 Jan 2018
Member 10392111
This article shows you how to hook driver's dispatch routines.
17 Feb 2018
Member 10392111
This article shows you how to dig into windows kernel using IDA and Virtual Box
31 Mar 2005
@run
Registry access, to append customized menu to system's menu.
29 Oct 2018
_duDE
This tool lists all available .NET Frameworks and checks the needed/linked .NET components of installed apps by selecting a target directory.
5 Jul 2005
«_Superman_»
The article demonstrates how to implement polymorphism using the C language.
6 Sep 2013
ThatsAlok
Free component for parsing HTML, .NET version of EfTidyCom
19 Dec 2012
ThatsAlok
Article touching simple programming instrument like Property, Method, Event and invoking ATL Dialogs from ATL/COM Component
6 Jan 2013
Captain Price
Several ways of associating a class or a structure with a window and their differences
8 Jun 2014
Debabrata_Das
C program to display calendar of any given month and year (mm-yyyy)
25 Jan 2017
Saineshwar Bageri
In this article, we are going to learn how to use Grunt.js to minify & uglify (JavaScript, cascading style sheets, Images and HTML) and to configure Task Runner Explorer in ASP.NET Core MVC.
1 Oct 2009
0x3c0
C++ support code and the console.
17 Nov 2009
0x3c0
Descriptor tables and interrupts.
29 Apr 2016
23ars
This will be a simple article about Linux Device Drivers, in fact about a char driver that controls the GPIO ( General Purpose Input-Output) port of the Beaglebone Black.
12 Aug 2004
A. Riazi
Showing property sheet dialog of a specific device.
21 Aug 2004
A. Riazi, Shafiee
This article shows you a very simple way to show system dialogs like Internet Options, Add/Remove Programs, and etc.
19 May 2008
Abhi_Coder
Implementation of Shared Pointer
4 Aug 2016
Abhishek Nandy
Introducing powerful industrial Temboo Choreos to scale industrial IoT framework and ecosystem
10 Jan 2005
Abin
A DLL injection library that works on both Win9x & NT platforms.
11 Jul 2007
abn9c
An article describing how to compile Matlab 7.1-7.4 mexw32 files using Visual Studio 2005
9 Jan 2008
AccuRev
Why organizations considering moving to an Agile development methodology to increase product quality, decrease costs and respond more quickly to market needs should also consider the changing requirements that the new model places on the SCM system and which aspects are critical to success.
23 Mar 2009
Achilleas Margaritis
Dynamic message passing for C++.
26 Nov 2010
Achilleas Margaritis
C++0x Dynamic Message Passing Ala Objective-C
30 Jun 2009
Adam Roderick J
A simple approach to Hook LoadLibrary API with a sample
29 Oct 2009
Addison-Wesley
It is also possible to write debug messages to the Xcode console when you write your application. Accessing these capabilities is not limited to Objective-C applications. Your hybrid applications can do these things from within JavaScript.
22 Sep 2010
Addison-Wesley
This chapter covers only the basic parts of the C language
9 Sep 2011
Addison-Wesley
This chapter will cover some of the core concepts of object-oriented programming (OOP) and how they apply to both iPhone and Windows Phone 7 programming
23 Mar 2016
Afzaal Ahmad Zeeshan
This article describes the way many programming languages can be selected to find that one best language for your projects!
19 Dec 2015
Afzaal Ahmad Zeeshan
This post discusses the Ubuntu SDK and Qt IDE used in Ubuntu SDK for developing different types of Ubuntu applications and software services.
8 Mar 2015
Afzaal Ahmad Zeeshan
This article contains a basic overview of the complex numbers, and their creation and functions most specifically the operator overloading for arithmetic functions. Programming languages include Java, C++, C# and VB.NET at the moment.
13 May 2008
aisha.ansari
post office protocol to retrieve mails
10 Sep 2008
akiran
This article details how to create, install and use side-by-side native assemblies from C# and MC++.
16 Dec 2012
Alan Churchill
This is an alternative for "Transform between IEEE, IBM or VAX floating point number formats and bytes expressions"
12 Sep 2001
Alan Wen
This is a 3-tier application. A COM component returns SQL data in XML format, then using XSLT to transform to HTML at client side. By using XML, all the data can be sort, split into pages locally, that will give users a quick response!
23 Aug 2012
Alesiani Marco
A concept-tool to create interactive documentations for C/C++ projects
26 Oct 2009
Alex Blekhman
Name2Clip sits in the "Sent To" menu of Windows Explorer and sends selected filenames to the system clipboard.
22 Aug 2008
Alex Blekhman
The article explains relationships and dependencies between the Windows API, the CRT, and the Standard C++ Library.
13 Nov 2012
Alex Blekhman
The C++ programming language and Windows DLLs can live in peace after all.
29 Jan 2009
Alex Blekhman
Minimalistic example of scrollable dialog implemented in pure Win32 API
8 Mar 2018
Alex the Green Apple
C library defining string type and string manipulation functions
14 Oct 2008
AlexAbramov
In this article, I will talk about the theories and implementations of API hooking. API hooking is a powerful technique that allows someone to hijack a function and redirect it to a custom one. Anything can be done in these functions before passing control back to the original API.
23 Apr 2011
Alexander Böcken
A basic way to interpret joystick data received from Raw Input API
3 Jul 2017
Alexander Semjonov
Developing fastest FFT implementation based on precompile tool using data driven approach
7 Jul 2013
Alexander Stavonin
Little explanation of TrustedBSD framework usage on Mac OS X
1 May 2008
alexander suresh
NDIS 6.0 miniport driver for realtek 8168/8169/8111/8110 family of gigabit ethernet controllers
30 Jul 2003
Alexander M.,
This article shows you how to hook interrupts, and how to get device resource information from the registry
29 Feb 2016
Alexandr Surkov
My expiriance of using C++ with microcontrollers
17 Dec 2019
Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET
2 Jan 2020
Alexandre Bencz
DotNetPELib is a library which abstracts managed information such as namespaces, classes, fields, methods, and instructions. The information can then be used to generate assembly language source files, or PE executables or DLLs.
14 Dec 2019
Alexandre Bencz
With this new OrangeC/C++ compiler back-end, you can compile your C code to .NET.
29 Feb 2008
Alexandre Courpron
This article presents the implementation of a fixed-size heterogeneous container.
13 Apr 2008
Alexandre GRANVAUD
Automate your data classes initialization from an XML file.
10 May 2009
AlexShag
This is a simple text editor based on Edit control
27 Feb 2008
Ali BaderEddin
Learn OpenGL geometric primitives through this interactive program.
8 Oct 2015
Ali BaderEddin
This article describes in detail how to set up your first OpenGL FreeGLUT window and provides you with a template for your OpenGL applications
13 Oct 2015
Ali BaderEddin
This article describes in detail how to set up your first OpenGL FreeGLUT window with multiple subwindows, and provides you with a template for your OpenGL applications.
8 Oct 2015
allan175_uk
Creating customized Pebble projects
26 May 2019
altomaltes
This code allows dumping and retrieval from a single variable to a complete tree of objects using both JSON and XML, in an unintrusive way, using tentative templates.
11 Nov 2013
altomaltes
An insigth in the heap "C" memory system.
1 Apr 2009
Amit Banerjee
Task Scheduling based on event
4 Apr 2009
Amit Banerjee
A simple C program to create a 16 timers routine from a single timer interrupt for embedded systems.
8 May 2001
Amit Dey
This article shows how to handle custom events generated in a VB ActiveX component in a Visual C++ client.
13 May 2002
Amol Kakhandki
This article explains how to connect to an SQL Server and pass a string.
19 Apr 2002
Amol Kakhandki
This article shows how to perform edge detection using C,Win32 SDK and GDI+
27 Nov 2012
Amory Wong
A GLKView class that can be dropped into your project.
27 Oct 2013
AmrThabet
In this article, I’m going to teach you how to write a full functional debugger using the Security Research and Development Framework (SRDF) … how to disassemble instructions, gather Process Information and work with PE Files … and how to set breakpoints and work with your debugger
6 Feb 2012
AmrThabet
How to write a reliable shellcode on win32, how to bypass the obstacles that you will face in writing a win32 shellcode and how to implement your shellcode into Metasploit
8 Apr 2009
anand choubey
The code snippet converts MAC Address String Format into Bytes
9 Jul 2008
Ananth Nag Sastry Ganti
Simulation of Barber shop problem
14 Dec 2004
Ananth Nag Sastry Ganti
Automatic Detection of stains in a camera lens using Image Segmentation
28 Apr 2014
Andre' Gardiner
A c banking atm concept console application
22 Jan 2019
Andrea Ricchetti
Two ways to make a IEEE 754 conversion (32 bit) pack and unpack
23 May 2018
Andreas Schoenle
How to use CrashRptEx, to avoid some of the pitfalls of crash reporting in MFC apps or if you want the ability to continue your application after a crash
16 Apr 2008
Andrei C_Coder Azzopardi
Descripes a module to track heap memory allocations and to avoid memory leaks.
11 Aug 2014
Andres Cassagnes
A basic guideline to start with GUI designing with wxWidgets
4 Sep 2014
Andres Cassagnes
wxWidgets resources examples and COM port communication.
16 Nov 1999
Andrew Garbuzov
A port of my splitter ActiveX control with MFC to ATL.
4 Apr 2019
Andrew Kirillov
An open source application to acquire and process video from cameras
9 Jul 2002
Andrew Peace
An article showing the use of pointers in C and C++
30 Mar 2012
Andrew Phillips
There are quite a few fallacies kicking around about how to write good code. This article is an attempt to dispel some of them.
18 Dec 2008
Andrey Sergienko
How to configure Visual Studio 2008 for compiling drivers without using DDK's console tools.
1 Dec 2013
Android on Intel
Intel® HTML5 Tools for developing mobile applications
1 Dec 2015
Android on Intel
Intel(R) XDK is an HTML5 Cross-platform Development Tool and provides an easy and fast way to get your apps to market. Emscripten Compiler and Intel XDK now gives you another option to publish apps using C and C++ as part of the application.
14 Jun 2017
Andy Allinger
Introduces data clustering and the k-means++ algorithm
8 Nov 2017
Andy Allinger
Adds features to k-means for missing data, mixed data, and choosing the number of clusters
21 Sep 2017
Andy Bantly
Visualizing the Mandelbrot set using multiple threads of execution.
14 Apr 2018
Andy Galluzzi
Join me to create the most advanced yet most simple to use full duplex MMF based IPC for Windows
10 Nov 2012
Andy Kirkham
Part 1 - Setting up and getting started
12 Nov 2012
Andy Kirkham
Part 2 - Stepping into the C++ world
14 May 2012
anlarke
Another take on the classic, now using SSE instructions
26 Mar 2014
Anna Koneva
An article about interoperation issues in mixed C/C++/Objective-C development
12 May 2014
Anna Koneva
An article about interoperation issues in mixed C/C++/Objective-C development
25 Mar 2014
Anna Koneva
An article about interoperation issues in mixed C/C++/Objective-C development
3 Aug 2012
Anna-Jayne Metcalfe
If you are new to PC-lint, you may have wondered what message 830 ("Location cited in prior message") means, and - given that such messages can add greatly to the overall issue count in your file or project - what (if any) use are they?Quite simply, message 830 identifies a location in the codebase
1 Oct 2009
Anshul R
Solves linear equation in one variable, 2 linear equations in 2 variables, quadratic equations and cubic equations
25 Jul 2013
Apriorit Inc, Anthony Shoumikhin
This article gives a brief description of ELF libs structure and functioning and also shows how to intercept function calls from one library into another.
26 Apr 2011
Apriorit Inc, Anthony Shoumikhin
The article covers the interception and redirection of calls to the third-party dynamically linked libraries in the program under Mac OS X.
21 Apr 2004
Anton Bassov
An article on kernel-mode API spying.
18 Oct 2005
Anton Bassov
How to hook the native API and control process creation on a system-wide basis.
5 Feb 2005
AntonGogolev
Using XML to store settings.
21 Jun 2015
Anupam_Datta
Motion activated Pushbullet notification from your Arduino to your Smart Gadgets
29 Apr 2009
aovidiu
The generated DLLs base addresses assure contiguous memory spaces for each DLL in the given DLLs series.
23 Sep 2009
Apriorit Inc, Eugene Wineblat
This article is devoted to the Embedded Firebird database usage and also development of C++ wrapper of this database.
10 Jun 2015
Sergey Podobry, Apriorit Inc
This tutorial will show you how to develop a simple file system filter driver.
23 Jul 2009
Apriorit Inc
This article shows how to use FTDI API to interact with the devices, which have FTDI chip within. EEPROM programming is also discussed.
17 Mar 2010
Victor A. Milokum, Apriorit Inc
This article includes a description of a simple unhooker that restores original SST hooked by unknown rootkits, which hide some services and processes.
11 Nov 2009
Volodymyr Shamray, Apriorit Inc
In this article we'll consider some things about the Clipboard internals by showing how you can forbid access to it.
19 Mar 2012
Sergey Podobry, Apriorit Inc
This article describes an easy way to set up system-wide global API hooks.
15 Feb 2010
Apriorit Inc, Gena Marianichenko
This article is oriented to Windows-developers and considers how to create virtual disk in Windows system.
25 Jul 2013
Apriorit Inc, Anthony Shoumikhin
This article gives a brief description of ELF libs structure and functioning and also shows how to intercept function calls from one library into another.
26 Sep 2010
Apriorit Inc, Danil Ishkov
In this article, I am going to describe the process of writing and building of a simple driver-module for Linux OS
26 Apr 2011
Apriorit Inc, Anthony Shoumikhin
The article covers the interception and redirection of calls to the third-party dynamically linked libraries in the program under Mac OS X.
2 Sep 2012
Apriorit Inc, Semyon Boyko
Simple driver for Linux OS that performs hiding of the selected files from the system
12 Jul 2009
Arash Javadi
The Evaluation Engine is a opensource C-Compiler , parser and interpreter that can be used to build a Business Rules Engine. It allows for mathematical and boolean expressions, operand functions, variables, variable assignment, comments, and short-circuit evaluation. for PIC Microcontrollers
2 Jun 2009
araud
Your own transport for DCOM
25 Dec 2009
Aric Wang
Shows you how to make a simple fire effect
26 Dec 2009
Aric Wang
To show you how to create a easy animation with palette
28 Dec 2009
Aric Wang
Just a simple digital LCD class and do not use an external bitmap.You can use and change it.
22 Feb 2010
Aric Wang
The article will give you an idea on how to design a source filter.The source filter creates samples and outputs it from its output pin.
1 Jan 2010
Aric Wang
Many popular MP3 players have cool desktop lyrics, this demo uses a simple method to realize it. Happy new year!
17 Jan 2010
Aric Wang
This is a class derived from CWinThread class. It is used to record and play sound in the specific thread.
15 Sep 2016
Ariel Segal
Applying Object Oriented Programming principles when coding in C
2 Aug 2008
Arman S.
A tool that finds duplicate files in your system.
8 Jan 2009
Armen Hakobyan
An article on reading file sectors directly from disk using logical offsets
21 Sep 2014
arnavguddu
How to Embed Python interpreter in your C/C++ code and dynamically change the code path of compiled native code.
25 Mar 2009
Arsalan Malik
This article describes how a texture can be created in OpenGL from a live video stream from a web cam or a video file.
7 Aug 2018
Artem Moroz
Using ESP8266 module to remotely control high power electrical appliances
11 Apr 2015
Marc Clifton, Arthur Brock, Eric Harris-Braun
Semtrex is a semantic tree expression evaluator
14 Jul 2015
Arthur V. Ratz
This article demostrates the C++ code that implements AI binary distribution evolutionary algorithm for finding the "nearest" neighbor values of the given value of x in the array of N elements.
4 May 2016
Arthur V. Ratz
The following article demonstrates the implementation of a smart cross-platform textdiff lexicographical analyzer utility which can be used to find and locate the differences between two files.
7 May 2020
Arthur V. Ratz
In this article I will thoroughly discuss about the several aspects of using the revolutionary new Intel® oneAPI HPC Toolkit to deliver a modern code that implements a parallel “stable” sort
11 Mar 2018
Arthur V. Ratz
In this article we’ll formulate and thoroughly discuss about probabilistic Bayesian classification algorithm and its implementation in Node.JS and JavaScript that can be actively used to detect and locate messages containing potential spam and other unsolicited data.
2 May 2017
Arthur V. Ratz
This article is a practical guide on using Intel® Threading Building Blocks (TBB) and OpenMP libraries for C++ based on the example of delivering parallel scalable code that implements Burrows-Wheeler Transformation (BWT) algorithm.
1 Sep 2018
Arthur V. Ratz
In this brief article, we will demonstrate how to deploy a Node.js application and run it on Docker's Windows Server Core 2016 Containers
6 Jul 2008
arystotenes<br />Michael J.
Two simple property classes easying C++ programming
4 Jun 2007
asadbd
Conversion between Binary, Octal, Decimal, & Hexadecimal number systems. C code for download.
8 Apr 2008
asadullah ansari
Without using any tools, This program will find the memory leak in your program
16 Oct 2013
AshakiranBhatter
Reading the contents of a floppy disk using BIOS interrupts and Services.
20 Apr 2015
AshakiranBhatter
How to boot a floppy image with your own hand written code in C and Assembly
13 Mar 2014
AshakiranBhatter
Understanding FAT file system and kernel programming in C/C++
16 Feb 2017
Ashley Davis
A demo of Highstock using Data-Forge with financial data loaded from Yahoo.
9 Nov 2012
Ashley Davis
Introducing Investigo: Using a Proxy DLL and embedded HTTP server for DirectX9 Performance Analysis, Debugging and Automated Performance Testing
29 Oct 2015
Ashwin. Shetty
Scaling application Horizontally using Message queue
25 Jan 2016
Asif Bahrainwala
Basic debugger for linux
3 Aug 2014
Asif Bahrainwala
Design your own language and write a compiler/ interpreter for it
17 May 2011
Asif Bahrainwala
Basic debugger, Breakpoints, OutputDebugString
6 Aug 2018
askis
Manage the rotation degrees of your 4WD chassis
11 Oct 2013
ASP.NET Community
This is how to Dynamicly build the a links of characters from A-Z , somthing like thisA | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P
6 Nov 2008
auralius manurung
An article on how to build a simple HTTP proxy server
31 Mar 2013
Azim Zahir
This article describes how we can develop pocket PC applications using Pelles C IDE.
11 Oct 2010
b4rc0ll0
A useful launcher for JAR executable files, with Splash Image function
5 Aug 2014
Babu_Abdulsalam
A Simple Profiler for C++ apps on x64 platform
30 Dec 2014
Babu_Abdulsalam
Various features supporting Concurrency in C++11
27 Aug 2008
BadKarma
The Star Trek game reworked, using a 2D retro look
22 Apr 2014
Banjoo
Play, record and capture Audio sound. Read, write and stream Wav-Files. Send and receive Ulaw RTP-streams. Using the WaveIn WaveOut functions of the WMM API.
9 Aug 2004
bavander
Fast, powerful, useful expression evaluation library.
8 Oct 2007
bcmarkey
Display alternating row colours in a ListView (Report style) control
7 May 2005
Beau Skinner
Automatic build version awareness, incrementing, and archiving.
9 Mar 2008
Ben Aldhouse
Using time and file functions
27 Oct 2013
Bernhard Häussermann
A set of source files that extends the UITableView so that it has sections that can be collapsed and expanded.
20 Jan 2013
Bernhard Häussermann
An Objective-C class that sub-classes UIViewController to enable easily implementing split views in iPad applications.
2 Apr 2013
Bernhard Häussermann
Shows how to programmatically enable full-keyboard-access tabbing behaviour in your Mac OS X application.
16 Jul 2004
bhaskar_gupta
Motion control of the most widely used Stepper Motor through PC's Parallel Port.
3 Jun 2003
BhaskarBora
This Software is to show what C and DOS can offer wrt Windows. It's a classic software!
1 Feb 2007
BhaskarBora
This article describes object based programming in traditional C language.
10 Dec 2007
Bibeka
An introduction to dynamic 2D arrays in C++.
12 Oct 2005
Bidhan Chandra
It simulates a battle tank based on vehicle dynamics.
9 Jun 2014
Bilel Msekni
How to properly replace base classes with sub classes in WCF contracts ?
21 Feb 2019
Bill_Hallahan
The following program is a code generator that generates a C program or a C++ program that has auto-generated parsing code.
20 Oct 2013
Bill_Hallahan
C code generator uses program make_cpp_class.py input file
22 Oct 2013
Bill_Hallahan
Program to change the bracketing style of auto-generated code.
18 Oct 2013
Bill_Hallahan
Argument parsing function identifies both optional and positional arguments.
6 Jun 2005
Birender Singh
CreateDir function creates folders and subfolders thereby completing the whole path. This function overcomes the limitations of CreateDirectory Win32 API.
7 Apr 2014
bkelly13
Use of Windows class CAsynSocket in TCP/IP application
2 Dec 2008
Brad Kremer
A CRecordSet like interface for a SQLite database table.
11 Oct 2013
BrainlessLabs.com
In this article, we will discuss implementing conditional statements, loops and blocks.
20 Apr 2019
BrainlessLabs.com, sibani.p
Creating a simple ORM for C++ on-top of SQL database
5 Sep 2017
Brian Aberle
XMLFoundation is the fastest XML Parser available. It is also a framework foundation for an application that uses XML to enable Object-XML mappings and Application Layer binding to XML Data objects.
11 Aug 2000
Brian C Hart
Brian's detailed answers to your most frequently asked questions about his DCOM tutorial.
8 Sep 2010
brochpirate
An iPhone media player designed specifically for listening to audiobooks
7 Aug 2007
Bruno Challier
Use icons to draw buttons with owner-draw style.
20 Apr 2006
Bruno van Dooren
An article about developing a driver for the WDF Kernel Mode Driver Foundation.
30 Mar 2006
Bruno van Dooren
This article describes the process of developing a USB Kernel mode device driver using the WDF Kernel Mode Driver Foundation.
13 Aug 2009
carl morey
How to write a program that allows a simple game to run on Linux and Windows
27 Sep 2009
Carlos Jiménez de Parga
An introduction to the Visual C++ CORBA development
4 Dec 2016
Carsten Breum
Showing an architecture for a service to handle multiple clients on their own thread using the DispatcherObject.
4 May 2011
cfrost
How to use a modeless WinForm from an unmanaged application including callback functionality
12 Aug 2010
Chad Z. Hower aka Kudzu
Develop your own operating system using C# (or VB.NET, etc.) and Visual Studio!
23 Jul 2014
Chad Z. Hower aka Kudzu
What if objects could move from machine to machine? Not just automated downloads, or remotely controlling objects as in remoting, but a system in which the object actually moves about. Mobile software agents do exactly that. In this article I will provide an introduction to this fascinating concept.
1 Sep 2009
ChaoJui
Image processing with a burst of performance from CUDA
10 Sep 2009
ChaoJui
High performance and good quality of image blurring
13 Apr 2008
Chesnokov Yuriy
SVM classification class with SSE optimization support
20 May 2008
Chesnokov Yuriy
The article describes C++ coding styles and practices to be followed to develop robust and reliable code that is easily comprehended and maintained by other developers.
1 Jun 2008
Chesnokov Yuriy
The article describes the optimization of an image convolution operation with the application of linear rank deficient filters in computer vision problems.
17 Jun 2008
Chesnokov Yuriy
The article presents C++ code for estimation of approximate and sample entropies suitable for biological signals analysis