OpenLLM-France/wikimedia huggingface dataset:
# Pathologie/Pathologie générale/Notions de base/Signe
## Signe

Une anomalie qui possède une signification, un sens, est appelée un signe. L'étude des signes constitue la sémiologie. L'étude des signes cliniques constitue la sémiologie cliniques.
L'étude des signes morphologiques constituent la sémiologie morphologique. Ces signes peuvent être macroscopiques, lorsqu'ils sont visibles à l’œil nu, ou microscopiques, lorsqu’ils sont visibles seulement au microscope.
Un groupement non aléatoire et reproductible de signes est appelé un syndrome. Un groupement de signes morphologiques est appelé un syndrome morphologique.
# Pathologie/Pathologie générale/Pathologie métabolique

Les anomalies métaboliques peuvent être acquises ou génétiques.
# Pathologie/Pathologie générale/Pathologie tumorale/Méthodes diagnostiques

Comment fait-on le diagnostic d'une tumeur ?
# Pathologie/Pathologie générale/Pathologie tumorale

Pathologie tumorale

## Table des matières

* Notions de base
* Méthodes d'études
* Méthodes diagnostiques
* Initiation tumorale
* Extension tumorale
* Tumeurs épithéliales
* Tumeurs non-épithéliales
* Tumeurs hématopoïétiques
L'homme est un organisme multicellulaire regroupant plus de 10 à la 14 (10 puissance 14) cellules organisées en tissus, en organes et en systèmes. Le développement et la croissance sont conditionnés par des processus complexes qui permettent le régulation de différents étapes de la vie d’une cellule : la prolifération, la différenciation, la senescence et la mort cellulaire programmée (l’apoptose).
Ces phénomènes sont également mis en jeu au cours du renouvellement des cellules à durée de vie limitée, de la régénération des cellules parenchymateuses détruites et de la cicatrisation des plaies et des lésions inflammatoires. La bonne régulation de ces processus est à l'origine de l'homéostasie tissulaire.
Des anomalies moléculaires, de cette régulation sont à l'origine de proliférations mal contrôlées de groupes de cellules dont l'accumulation aboutit à la formation d'une "tumeur", macroscopiquement observable ou palpable. (wiki)
Actuellement, le terme de "tumeur" tend à être employé au sens de "néoplasme" ou de "néoplasie", c'est-à-dire "toute nouvelle formation tissulaire (plus ou moins volumineuse) ressemblant (plus ou moins) au tissu normal homologue (adulte ou embryonnaire) aux dépens duquel elle s'est développée, qui a tendance à persister et à s'accroître et qui échappe aux règles biologiques de la croissance et de la différenciation cellulaire".
Cette définition permet de rendre compte de plusieurs des caractères d'une tumeur : - il s'agit de la prolifération qualitativement et quantitativement anormale des éléments cellulaires d'un tissu organisé - il existe un accroissement excessif et incoordonné de la tumeur par rapport aux tissus voisins - la prolifération tumorale se poursuit après arrêt du "stimulus" qui lui a donné naissance - la prolifération tumorale est biologiquement autonome
# Programmation C-C++/Les commentaires

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/cpp/cours/online/book1.html qui le fournit sous licence GFDL.
Cours de C/C++ :
| Première approche ||
| | Les commentaires |
| | Les types prédéfinis |
| | Notation des valeurs |
| | La définition des variables |
| | Instructions et opérations |
| | Les fonctions |
| | La fonction main |
| | Entrée / sortie de base |
| | Exemple de programme |
| Livre original de C. Casteyde ||

## Les commentaires en C et C++

Les commentaires sont nécessaires et très simples à faire. Attention cependant, trop de commentaires tue le commentaire, parce que les choses importantes sont noyées dans les banalités.
Il existe deux types de commentaires :
Le premier type de commentaire commence avec la séquence barre oblique - étoile et se termine avec la séquence inverse : une étoile suivie d'une barre oblique. Mais, un commentaire ne peut pas commencer dans un autre commentaire.
Ces commentaires peuvent s'étendre sur plusieurs lignes.

### Exemple - 1

Le second type de commentaire s'opère en fin de ligne. En revanche, ils s'arrêtent à la fin de la ligne courante, et pas après. Ils permettent de commenter plus facilement les actions effectuées sur la ligne courante, avant le commentaire. Les commentaires de fin de ligne commencent par la séquence constituée de deux barres obliques (ils n'ont pas de séquence de terminaison, puisqu'ils ne se terminent qu'à la fin de la ligne courante). Par exemple :
# Programmation C-C++/La structure if

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/online/cours_cpp/ qui le fournit sous licence GFDL.
Cours de C/C++ :
| Les structures de contrôle ||
| | La structure if |
| | La boucle for |
| | Le while |
| | Le do |
| | Branchement conditionnel |
| | Le saut |
| | Rupture de séquence |
| Livre original de C. Casteyde ||

## La structure conditionnelle if

La structure conditionnelle if permet de réaliser un test et d'exécuter une instruction ou non selon le résultat de ce test. Sa syntaxe est la suivante :
où test est une expression dont la valeur est booléenne ou entière. Toute valeur non nulle est considérée comme vraie. Si le test est vrai, opération est exécuté. Ce peut être une instruction ou un bloc d'instructions. Une variante permet de spécifier l'action à exécuter en cas de test faux :
Note : Attention ! Les parenthèses autour du test sont nécessaires !
Les opérateurs de comparaison sont les suivants :
Opérateurs de comparaison :
| == | égalité |
| != | inégalité |
| < | infériorité |
| > | supériorité |
| <= | infériorité ou égalité |
| >= | supériorité ou égalité |
Les opérateurs logiques applicables aux expressions booléennes sont les suivants :
Opérateurs logiques :
| && | et logique |
| || | ou logique |
| ! | négation logique |
Il n'y a pas d'opérateur ou exclusif logique.
# Programmation C-C++/Le préprocesseur

Cette page est considérée comme une ébauche à compléter . Si vous possédez quelques connaissances sur le sujet, vous pouvez les partager en éditant dès à présent cette page (en cliquant sur le lien « »).
Ressources suggérées : Aucune (vous pouvez indiquer les ressources que vous suggérez qui pourraient aider d'autres personnes à compléter cette page dans le paramètre « ressources » du modèle engendrant ce cadre)

## Inclusion d'un fichier

Permet d'inclure des déclarations de classes, variables et autres depuis un autre fichier.
Les fichiers inclus avec C90 :
| <assert.h> <ctype.h> <errno.h> <float.h> <limits.h> | <locale.h> <math.h> <setjmp.h> <signal.h> <stdarg.h> | <stddef.h> <stdio.h> <stdlib.h> <string.h> <time.h> |
Fichiers ajoute après C90 :
| <complex.h> <fenv.h> <inttypes.h> | <iso646.h> <stdbool.h> <stdint.h> | <tgmath.h> <wchar.h> <wctype.h> |
# Programmation C-C++/Le do

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/online/cours_cpp/ qui le fournit sous licence GFDL.
Cours de C/C++ :
| Les structures de contrôle ||
| | La structure if |
| | La boucle for |
| | Le while |
| | Le do |
| | Branchement conditionnel |
| | Le saut |
| | Rupture de séquence |
| Livre original de C. Casteyde ||

## Le do

La structure de contrôle do permet, tout comme le while, de réaliser des boucles en attente d'une condition. Cependant, contrairement à celui-ci, le do effectue le test sur la condition après l'exécution des instructions. Cela signifie que les instructions sont toujours exécutées au moins une fois, que le test soit vérifié ou non. Sa syntaxe est la suivante :
opération est effectuée jusqu'à ce que test ne soit plus vérifié.
L'ordre d'exécution est :
# Programmation C-C++/Les chaînes de caractères : pointeurs et tableaux à la fois !

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/online/cours_cpp/ qui le fournit sous licence GFDL.
Cours de C/C++ :
| Pointeurs et références ||
| | Notion d'adresse |
| | Notion de pointeur |
| | Référencement, indirection |
| | Notion de référence |
| | Lien entre les pointeurs et les références |
| | Passage de paramètres par variable ou par valeur |
| | Références et pointeurs constants et volatiles |
| | Arithmétique des pointeurs |
| | Utilisation des pointeurs avec les tableaux |
| | Les chaînes de caractères : pointeurs et tableaux à la fois ! |
| | Allocation dynamique de mémoire |
| | Pointeurs et références de fonctions |
| | Paramètres de la fonction main - ligne de commande |
| | DANGER |
| Livre original de C. Casteyde ||
On a vu dans le premier chapitre que les chaînes de caractères n'existaient pas en C/C++. Ce sont en réalité des tableaux de caractères dont le dernier caractère est le caractère nul.
Cela a plusieurs conséquences. La première, c'est que les chaînes de caractères sont aussi des pointeurs sur des caractères, ce qui se traduit dans la syntaxe de la déclaration d'une chaîne de caractères constante :
identificateur est déclaré ici comme étant un pointeur de caractère, puis il est initialisé avec l'adresse de la chaîne de caractères constante "chaîne".
La deuxième est le fait qu'on ne peut pas faire, comme en Pascal, des affectations de chaînes de caractères, ni des comparaisons. Par exemple, si « nom1 » et « nom2 » sont des chaînes de caractères, l'opération :
n'est pas l'affectation du contenu de nom2 à nom1. C'est une affectation de pointeur : le pointeur nom1 est égal au pointeur nom2 et pointent sur la même chaîne ! Une modification de la chaîne pointée par nom1 entraîne donc la modification de la chaîne pointée par nom2...
De même, le test nom1==nom2 est un test entre pointeurs, pas entre chaînes de caractères. Même si deux chaînes sont égales, le test sera faux si elles ne sont pas au même emplacement mémoire.
Il existe dans la bibliothèque C de nombreuses fonctions permettant de manipuler les chaînes de caractères. Par exemple, la copie d'une chaîne de caractères dans une autre se fera avec les fonctions strcpy et strncpy, la comparaison de deux chaînes de caractères pourra être réalisée à l'aide des fonctions strcmp et strncmp, et la détermination de la longueur d'une chaîne de caractères à l'aide de la fonction strlen. Je vous invite à consulter la documentation de votre environnement de développement ou la bibliographie pour découvrir toutes les fonctions de manipulation des chaînes de caractères. Nous en verrons un exemple d'utilisation dans la section suivante.
# Programmation C-C++/Les espaces de nommage

Cours de C/C++ :
| C++ : Les espaces de nommage ||
| | Définition des espaces de nommage |
| | Déclaration using |
| | Directive using |
| Livre original de C. Casteyde ||
Les espaces de nommage sont des zones de déclaration qui permettent de délimiter la recherche des noms des identificateurs par le compilateur. Leur but est essentiellement de regrouper les identificateurs logiquement et d'éviter les conflits de noms entre plusieurs parties d'un même projet. Par exemple, si deux programmeurs définissent différemment une même structure dans deux fichiers différents, un conflit entre ces deux structures aura lieu au mieux à l'édition de liens, et au pire lors de l'utilisation commune des sources de ces deux programmeurs. Ce type de conflit provient du fait que le C++ ne fournit qu'un seul espace de nommage de portée globale, dans lequel il ne doit y avoir aucun conflit de nom. Grâce aux espaces de nommage non globaux, ce type de problème peut être plus facilement évité, parce que l'on peut éviter de définir les objets globaux dans la portée globale.
# Programmation C-C++/Le saut

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/online/cours_cpp/ qui le fournit sous licence GFDL.
Cours de C/C++ :
| Les structures de contrôle ||
| | La structure if |
| | La boucle for |
| | Le while |
| | Le do |
| | Branchement conditionnel |
| | Le saut |
| | Rupture de séquence |
| Livre original de C. Casteyde ||

## Le saut

Le C/C++ dispose d'une instruction de saut permettant de poursuivre l'exécution du programme en un autre point. Bien qu'il soit fortement déconseillé de l'utiliser, cette instruction est nécessaire et peut parfois être très utile, notamment dans les traitements d'erreurs. Sa syntaxe est la suivante :
où étiquette est une étiquette marquant la ligne destination dans la fonction. Les étiquettes sont simplement déclarées avec la syntaxe suivante :
Les étiquettes peuvent avoir n'importe quel nom d'identificateur.
Il n'est pas possible d'effectuer des sauts en dehors d'une fonction. En revanche, il est possible d'effectuer des sauts en dehors et à l'intérieur des blocs d'instructions sous certaines conditions. Si la destination du saut se trouve après une déclaration, cette déclaration ne doit pas comporter d'initialisations. De plus, ce doit être la déclaration d'un type simple (c'est-à-dire une déclaration qui ne demande pas l'exécution de code) comme les variables, les structures ou les tableaux. Enfin, si, au cours d'un saut, le contrôle d'exécution sort de la portée d'une variable, celle-ci est détruite.
Note : Ces dernières règles sont particulièrement importantes en C++ si la variable est un objet dont la classe a un constructeur ou un destructeur non trivial. Voir le chapitre sur la couche objet pour plus de détails à ce sujet.
Autre règle spécifique au C++ : il est impossible d'effectuer un saut à l'intérieur d'un bloc de code en exécution protégée try. Voir aussi le chapitre sur les exeptions.
# Programmation C-C++/Le while

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/online/cours_cpp/ qui le fournit sous licence GFDL.
Cours de C/C++ :
| Les structures de contrôle ||
| | La structure if |
| | La boucle for |
| | Le while |
| | Le do |
| | Branchement conditionnel |
| | Le saut |
| | Rupture de séquence |
| Livre original de C. Casteyde ||

## Le while

Le while permet d'exécuter des instructions en boucle tant qu'une condition est vraie. Sa syntaxe est la suivante :
où opération est effectuée tant que test est vérifié. Comme pour le if, les parenthèses autour du test sont nécessaires. L'ordre d'exécution est :
# Programmation GTK2 en Pascal/GtkItem

* Programmation GTK2 en Pascal
* Introduction
* Pré-requis
* Logiciels nécessaires
* Installation sous Linux
* Installation sous Windows
* Installation sous Mac/OS
* Une application minimale
* Les bases
* La notion d'objet
* La gestion des évènements
* Le placement des contrôles
* Les contrôles (widgets) Gtk
* Les fenêtres
* Les conteneurs
* Les visuels
* Les boutons
* La saisie de données
* Les listes déroulantes
* Les menus
* Les décorations
* La barre d'outils
* Les sélections
* Les zones de texte
* Les listes et arbres
* La Glib : objets et fonctions
* Dessiner avec le Gdk
* Conclusion
* Bibliographie

## Présentation

GtkItem est une classe abstraite qui sert de base aux contrôles GtkMenuItem, GtkListItem et GtkTreeItem.
Elle n'est pas utilisée directement.

### Hiérarchie

* Hiérarchie
* GObject
* └─GtkObject
* └─GtkWidget
* └─GtkContainer
* └─GtkBin
* └─GtkItem
* ├─GtkMenuItem
* ├─GtkListItem
* └─GtkTreeItem
# Programmation GTK2 en Pascal/GtkMenuBar

* Programmation GTK2 en Pascal
* Introduction
* Pré-requis
* Logiciels nécessaires
* Installation sous Linux
* Installation sous Windows
* Installation sous Mac/OS
* Une application minimale
* Les bases
* La notion d'objet
* La gestion des évènements
* Le placement des contrôles
* Les contrôles (widgets) Gtk
* Les fenêtres
* Les conteneurs
* Les visuels
* Les boutons
* La saisie de données
* Les listes déroulantes
* Les menus
* Les décorations
* La barre d'outils
* Les sélections
* Les zones de texte
* Les listes et arbres
* La Glib : objets et fonctions
* Dessiner avec le Gdk
* Conclusion
* Bibliographie

## Présentation

Le contrôle GtkMenuBar permet de gérer une barre de menu dans une fenêtre.

### Hiérarchie

* Hiérarchie
* GObject
* └─GtkObject
* └─GtkWidget
* └─GtkContainer
* └─GtkMenuShell
* └─GtkMenuBar

## Utilisation de base
### Création

La fonction de création d'une barre de menu est simple :

### Ajout d'élément

Pour ajouter des éléments dans une GtkMenuBar, il faut utiliser les fonctions du contrôle GtkMenuShell :
La première fonction ajoute les éléments de gauche à droite alors que la seconde les ajoute de droite à gauche. Le paramètre menu_shell est le GtkMenuBar dans laquelle nous voulons ajouter l'élément et le paramètre child est l'élément à ajouter. Pour le premier paramètre, il faudra utiliser la fonction de conversion GTK_MENU_SHELL.

## Programme exemple

Nous allons créer dans une fenêtre une barre de menu dans laquelle nous allons ajouter un item de menu qui permettra de quitter l'application.
Voilà le fichier gtk032.pas :
Voilà ce que donne l'exécution du programme gtk032 :
* Menu :
* GtkMenuBar ~
* GtkMenu ~
* GtkMenuShell —
* GtkMenuItem ~
* GtkImageMenuItem ~
* GtkCheckMenuItem ~
* GtkRadioMenuItem ~
* GtkSeparatorMenuItem ~
* GtkTearoffMenuItem
# Programmation GTK2 en Pascal/GtkHBox

* Programmation GTK2 en Pascal
* Introduction
* Pré-requis
* Logiciels nécessaires
* Installation sous Linux
* Installation sous Windows
* Installation sous Mac/OS
* Une application minimale
* Les bases
* La notion d'objet
* La gestion des évènements
* Le placement des contrôles
* Les contrôles (widgets) Gtk
* Les fenêtres
* Les conteneurs
* Les visuels
* Les boutons
* La saisie de données
* Les listes déroulantes
* Les menus
* Les décorations
* La barre d'outils
* Les sélections
* Les zones de texte
* Les listes et arbres
* La Glib : objets et fonctions
* Dessiner avec le Gdk
* Conclusion
* Bibliographie

## Présentation

Le contrôle GtkHBox est tout simplement une GtkBox qui va nous permettre d'empiler les contrôles horizontalement.

### Hiérarchie

* Hiérarchie
* GObject
* └─GtkObject
* └─GtkWidget
* └─GtkContainer
* └─GtkBox
* └─GtkHBox

## Utilisation de base
### Création d'une GtkHBox

La création d'une GtkHBox se fait tout simplement à l'aide de l'unique fonction disponible pour ce contrôle :
Le paramètre homogeneous définit si tous les contrôles contenus dans la GtkHBox utilisent un espace équivalent. C'est à dire que si ce paramètre est à TRUE, la zone d'affichage de la GtkHBox sera divisée en x colonnes de taille égale (x étant le nombre de contrôles contenus).
Le paramètre spacing permet de définir l'espacement entre chacun des contrôles contenus.

### Ajout d'un contrôle

Pour ajouter un contrôle dans une GtkHBox, il faut utiliser les fonctions disponibles pour le contrôle GtkBox. Cependant, il est nécessaire de savoir que le début d'une GtkHBox est à gauche et que sa fin est à droite.

## Programme exemple

Nous allons simplement insérer quatre boutons dans une GtkHBox.
Voilà le fichier gtk006.pas :
Voilà ce que donne l'exécution du programme gtk006 :
Récapitulatif des paramètres de gtk_box_pack_start pour chaque bouton (La boîte n'est pas homogène) :
| Bouton | expand | fill |
| n° 1 | True | True |
| n° 2 | True | False |
| n° 3 | False | False |
| n° 4 | False | True |
Rappel : Quand expand n'est pas positionné, fill n'a aucun effet.
La même fenêtre après redimensionnement « à la main » :
* Conteneurs :
* GtkContainer ~
* GtkBox ~
* GtkBin —
* GtkHBox ~
* GtkVBox ~
* GtkTable ~
* GtkNotebook
# Programmation GTK2 en Pascal/GtkMenu

* Programmation GTK2 en Pascal
* Introduction
* Pré-requis
* Logiciels nécessaires
* Installation sous Linux
* Installation sous Windows
* Installation sous Mac/OS
* Une application minimale
* Les bases
* La notion d'objet
* La gestion des évènements
* Le placement des contrôles
* Les contrôles (widgets) Gtk
* Les fenêtres
* Les conteneurs
* Les visuels
* Les boutons
* La saisie de données
* Les listes déroulantes
* Les menus
* Les décorations
* La barre d'outils
* Les sélections
* Les zones de texte
* Les listes et arbres
* La Glib : objets et fonctions
* Dessiner avec le Gdk
* Conclusion
* Bibliographie

## Présentation

Le contrôle GtkMenu est celui qui s'ouvre quand on clique sur un item de menu dans la barre de menu.

### Hiérarchie

* Hiérarchie
* GObject
* └─GtkObject
* └─GtkWidget
* └─GtkContainer
* └─GtkMenuShell
* └─GtkMenu

## Utilisation de base
### Création

La fonction de création d'une barre de menu est simple :

### Ajout d'élément

Pour ajouter des éléments dans un GtkMenu, il faut comme dans une GtkMenuBar utiliser les fonctions du contrôle GtkMenuShell :
La première fonction ajoute les éléments de gauche à droite alors que la seconde les ajoute de droite à gauche. Le paramètre menu_shell est le GtkMenu dans laquelle nous voulons ajouter l'élément et le paramètre child est l'élément à ajouter. Pour le premier paramètre, il faudra utiliser la fonction de conversion GTK_MENU_SHELL.

### Ajout du menu

Pour ajouter un menu à une barre de menu, ou pour créer un sous-menu, il faut associer le menu avec un élément (de la barre de menu ou du menu parent) avec une fonction du contrôle GtkMenuItem :
Cette fonction est étudié plus en détail dans le chapitre sur le contrôle GtkMenuItem.

## Programme exemple

Nous allons créer un menu « Fichier » qui contiendra un élément « Ouvrir » et un élément « Quitter ». L'élément « Quitter » ouvrira un autre menu qui proposera les options « OUI » et « NON ». Ce qui n'est pas très réaliste mais permet de voir un menu et un sous-menu.
Voilà le fichier gtk033.pas :
Voilà ce que donne l'exécution du programme gtk033 après avoir cliquer sur le menu « Fichier » puis « Quitter » :
* Menu :
* GtkMenuBar ~
* GtkMenu ~
* GtkMenuShell —
* GtkMenuItem ~
* GtkImageMenuItem ~
* GtkCheckMenuItem ~
* GtkRadioMenuItem ~
* GtkSeparatorMenuItem ~
* GtkTearoffMenuItem
# Programmation GTK2 en Pascal/GtkHSeparator

* Programmation GTK2 en Pascal
* Introduction
* Pré-requis
* Logiciels nécessaires
* Installation sous Linux
* Installation sous Windows
* Installation sous Mac/OS
* Une application minimale
* Les bases
* La notion d'objet
* La gestion des évènements
* Le placement des contrôles
* Les contrôles (widgets) Gtk
* Les fenêtres
* Les conteneurs
* Les visuels
* Les boutons
* La saisie de données
* Les listes déroulantes
* Les menus
* Les décorations
* La barre d'outils
* Les sélections
* Les zones de texte
* Les listes et arbres
* La Glib : objets et fonctions
* Dessiner avec le Gdk
* Conclusion
* Bibliographie

## Présentation

Le contrôle GtkHSeparator permet de dessiner une ligne horizontale entre des contrôles.

### Hiérarchie

* Hiérarchie
* GObject
* └─GtkObject
* └─GtkWidget
* └─GtkSeparator
* └─GtkHSeparator

## Utilisation de base
### Création

Ce contrôle n'a qu'une seule fonction : sa fonction de création :
Il n'y a rien de plus à dire à propos de ce contrôle.

## Programme exemple

Voilà le fichier gtk040.pas :
Voilà ce que donne l'exécution du programme gtk040 :
* Décorations :
* GtkFrame ~
* GtkHSeparator ~
* GtkVSeparator