Wersja do testow
2
.idea/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
# Default ignored files
|
||||
/workspace.xml
|
10
.idea/SI_Projekt.iml
Normal file
@ -0,0 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="PYTHON_MODULE" version="4">
|
||||
<component name="NewModuleRootManager">
|
||||
<content url="file://$MODULE_DIR$">
|
||||
<excludeFolder url="file://$MODULE_DIR$/venv" />
|
||||
</content>
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
6
.idea/inspectionProfiles/profiles_settings.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<component name="InspectionProjectProfileManager">
|
||||
<settings>
|
||||
<option name="USE_PROJECT_PROFILE" value="false" />
|
||||
<version value="1.0" />
|
||||
</settings>
|
||||
</component>
|
7
.idea/misc.xml
Normal file
@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="JavaScriptSettings">
|
||||
<option name="languageLevel" value="ES6" />
|
||||
</component>
|
||||
<component name="ProjectRootManager" version="2" project-jdk-name="Python 3.7 (SI_Projekt)" project-jdk-type="Python SDK" />
|
||||
</project>
|
8
.idea/modules.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/SI_Projekt.iml" filepath="$PROJECT_DIR$/.idea/SI_Projekt.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
6
.idea/vcs.xml
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
BIN
__pycache__/config.cpython-37.pyc
Normal file
BIN
__pycache__/functions.cpython-37.pyc
Normal file
BIN
__pycache__/main.cpython-37.pyc
Normal file
54
config.py
Normal file
@ -0,0 +1,54 @@
|
||||
import random
|
||||
import numpy
|
||||
import os
|
||||
import pygame
|
||||
############Dane początkowe#############
|
||||
#Szerokość i wysokość okna gry
|
||||
ILE_RUCHOW = 0
|
||||
SZER = 850
|
||||
WYS = 1000
|
||||
#Kolor okna
|
||||
COL = (0,255,0)
|
||||
|
||||
#Nasze pole
|
||||
POLE_SZER = 700
|
||||
POLE_WYS = 700
|
||||
POLE_COL = (128,128,0)
|
||||
POLE_POZ = (75, 75)
|
||||
TRAKTOR_POZ = [POLE_POZ[1], POLE_POZ[0]]
|
||||
text_rect = [POLE_POZ[0], POLE_WYS + POLE_POZ[1] + 100]
|
||||
|
||||
#Nazwa okna
|
||||
WINDOW_NAME = "SI Projekt"
|
||||
POLE_STAN = numpy.random.randint(0,9,(10,10))
|
||||
print("Reprezentacja pola jako macierz:")
|
||||
print("###################")
|
||||
for i in POLE_STAN:
|
||||
for j in i:
|
||||
print(j, end=" ")
|
||||
print("")
|
||||
print("###################")
|
||||
images_names = ['gleba_pix.png','gleba_chwasty_pix.png','sadzonka_suchi_pix.png','sadzonka_chwasty_pix.png','gleba_mokra_pix.png','gleba_mokra_chwasty.png','sadzonka_mokra_pix.png','sadzonka_mokra_chwasty_pix.png','gotowy_burak_pix.png']
|
||||
images = []
|
||||
for i in images_names:
|
||||
images.append(pygame.image.load('images/'+i))
|
||||
traktor_img = pygame.image.load('images/traktor.png')
|
||||
##########################################
|
||||
##########Początkowe ustawienia###########
|
||||
|
||||
def mat_val(traktor_poz,value):
|
||||
POLE_STAN[traktor_poz[0],traktor_poz[1]]+=value
|
||||
|
||||
|
||||
class activities:
|
||||
modes = ["Nawadnianie", "Odchwaszczanie", "Sadzenie", "Zbiory"]
|
||||
mode = 0
|
||||
|
||||
def activity_val(self,value):
|
||||
self.mode = value
|
||||
print(self.mode)
|
||||
|
||||
def activity_get_value(self):
|
||||
return self.mode
|
||||
|
||||
activity = activities()
|
96
functions.py
Normal file
@ -0,0 +1,96 @@
|
||||
import pygame
|
||||
import sys
|
||||
from pygame.locals import *
|
||||
import config
|
||||
|
||||
|
||||
def quit():
|
||||
print("Zamykanie...")
|
||||
pygame.quit()
|
||||
sys.exit()
|
||||
|
||||
|
||||
def pressed(key, traktor_poz):
|
||||
if key[K_d]:
|
||||
return(move_right())
|
||||
if key[K_s]:
|
||||
return(move_down())
|
||||
if key[K_a]:
|
||||
return(move_left())
|
||||
if key[K_w]:
|
||||
return(move_up())
|
||||
if key[K_SPACE]:
|
||||
work(traktor_poz)
|
||||
if key[K_1]:
|
||||
config.activity.activity_val(0)
|
||||
print("123")
|
||||
print(config.activity.activity_get_value())
|
||||
if key[K_2]:
|
||||
config.activity.activity_val(1)
|
||||
print("123")
|
||||
print(config.activity.activity_get_value())
|
||||
if key[K_3]:
|
||||
config.activity.activity_val(2)
|
||||
if key[K_4]:
|
||||
config.activity.activity_val(3)
|
||||
|
||||
|
||||
def move_left():
|
||||
if config.TRAKTOR_POZ[0]==config.POLE_POZ[1]:
|
||||
pass
|
||||
else:
|
||||
config.TRAKTOR_POZ[0]-=70
|
||||
config.ILE_RUCHOW = 21
|
||||
return 1
|
||||
|
||||
|
||||
def move_up():
|
||||
if config.TRAKTOR_POZ[1]==config.POLE_POZ[0]:
|
||||
pass
|
||||
else:
|
||||
config.TRAKTOR_POZ[1]-=70
|
||||
return 1
|
||||
|
||||
|
||||
|
||||
def move_right():
|
||||
if config.TRAKTOR_POZ[0]==705:
|
||||
pass
|
||||
else:
|
||||
config.TRAKTOR_POZ[0]+=70
|
||||
return 1
|
||||
def move_down():
|
||||
if config.TRAKTOR_POZ[1]==705:
|
||||
pass
|
||||
else:
|
||||
config.TRAKTOR_POZ[1]+=70
|
||||
return 1
|
||||
|
||||
|
||||
def work(traktor_poz):
|
||||
if config.activity.activity_get_value()==0:
|
||||
water(traktor_poz)
|
||||
|
||||
if config.activity.activity_get_value()==1:
|
||||
weeds(traktor_poz)
|
||||
|
||||
if config.activity.activity_get_value()==2:
|
||||
plant(traktor_poz)
|
||||
|
||||
if config.activity.activity_get_value()==3:
|
||||
harvest(traktor_poz)
|
||||
|
||||
|
||||
def water(position):
|
||||
if config.POLE_STAN[position[0],position[1]] in [0,1,2,3]:
|
||||
config.mat_val([position[0],position[1]],4)
|
||||
|
||||
def weeds(position):
|
||||
if config.POLE_STAN[position[0], position[1]] in [0,2,4,6]:
|
||||
config.mat_val([position[0], position[1]], 1)
|
||||
def plant(position):
|
||||
if config.POLE_STAN[position[0], position[1]] in [0,1,4,5]:
|
||||
config.mat_val([position[0], position[1]], 2)
|
||||
def harvest(position):
|
||||
if config.POLE_STAN[position[0], position[1]] == 8:
|
||||
config.mat_val([position[0], position[1]], -8)
|
BIN
images/gleba_chwasty_pix.png
Normal file
After Width: | Height: | Size: 8.9 KiB |
BIN
images/gleba_mokra_chwasty.png
Normal file
After Width: | Height: | Size: 9.3 KiB |
BIN
images/gleba_mokra_pix.png
Normal file
After Width: | Height: | Size: 8.8 KiB |
BIN
images/gleba_pix.png
Normal file
After Width: | Height: | Size: 8.5 KiB |
BIN
images/gotowy_burak_chwasty_pix.png
Normal file
After Width: | Height: | Size: 9.0 KiB |
BIN
images/gotowy_burak_pix.png
Normal file
After Width: | Height: | Size: 8.8 KiB |
BIN
images/sadzonka_chwasty_pix.png
Normal file
After Width: | Height: | Size: 7.1 KiB |
BIN
images/sadzonka_mokra_chwasty_pix.png
Normal file
After Width: | Height: | Size: 7.4 KiB |
BIN
images/sadzonka_mokra_pix.png
Normal file
After Width: | Height: | Size: 7.0 KiB |
BIN
images/sadzonka_suchi_pix.png
Normal file
After Width: | Height: | Size: 6.8 KiB |
BIN
images/traktor.png
Normal file
After Width: | Height: | Size: 1015 B |
69
main.py
Normal file
@ -0,0 +1,69 @@
|
||||
from typing import List
|
||||
|
||||
import pygame
|
||||
import sys
|
||||
from pygame.locals import *
|
||||
import functions
|
||||
import os
|
||||
from config import *
|
||||
|
||||
pygame.init()
|
||||
#Załadowanie zdjęć
|
||||
|
||||
|
||||
#Pole tekstowe
|
||||
ILE_RUCHOW = 0
|
||||
|
||||
#Init pola gry
|
||||
okno = pygame.display.set_mode((SZER, WYS), 0, 32)
|
||||
|
||||
#Tytuł okna
|
||||
pygame.display.set_caption(WINDOW_NAME)
|
||||
|
||||
#Tworzenie powierzchni pola
|
||||
pole_surf = pygame.Surface([POLE_SZER,POLE_WYS])
|
||||
pole_surf.fill(POLE_COL)
|
||||
pole_surf_rect = pole_surf.get_rect()
|
||||
pole_surf_rect.x = POLE_POZ[0]
|
||||
pole_surf_rect.y = POLE_POZ[1]
|
||||
|
||||
pole1_surf = pygame.Surface([POLE_SZER+150,POLE_WYS+150])
|
||||
pole1_surf.fill((0,0,0))
|
||||
pole1_surf_rect = pole_surf.get_rect()
|
||||
pole1_surf_rect.x = POLE_POZ[0] - 75
|
||||
pole1_surf_rect.y = POLE_POZ[1] - 75
|
||||
#Tworzenie pól pola(w sensie właściwe pola do obróbki)
|
||||
|
||||
|
||||
#Zezwalamy na przechwytywanie klawiszy
|
||||
pygame.event.pump()
|
||||
|
||||
##########################################
|
||||
#główna pętla
|
||||
while True:
|
||||
for event in pygame.event.get():
|
||||
#zamknięcie okna
|
||||
# print(event)
|
||||
if event.type == QUIT:
|
||||
quit()
|
||||
elif event.type == KEYDOWN:
|
||||
TRAKTOR_POZ_POLA = [int(((TRAKTOR_POZ[1]-5)/70)-1), int(((TRAKTOR_POZ[0]-5)/70)-1)]
|
||||
if functions.pressed(pygame.key.get_pressed(),TRAKTOR_POZ_POLA) == 1:
|
||||
ILE_RUCHOW+=1
|
||||
#kolor okna
|
||||
okno.fill(COL)
|
||||
#wstawienie pola
|
||||
okno.blit(pole1_surf,pole1_surf_rect)
|
||||
okno.blit(pole_surf,pole_surf_rect)
|
||||
text_value = "Ile ruchów: " + str(ILE_RUCHOW) + " Tryb: " + activity.modes[activity.activity_get_value()]
|
||||
font = pygame.font.Font('freesansbold.ttf', 24)
|
||||
text = font.render(text_value, True, (0, 0, 0), COL)
|
||||
okno.blit(text, text_rect)
|
||||
|
||||
# pole_surf.blit(images[4], (0,0))
|
||||
for i in range(0,700,70):
|
||||
for j in range(0,700,70):
|
||||
pole_surf.blit(images[POLE_STAN[int(i/70),int(j/70)]],(j,i))
|
||||
okno.blit(traktor_img, TRAKTOR_POZ)
|
||||
#aktualizacja okna i wyświetlenie
|
||||
pygame.display.update()
|
76
venv/bin/activate
Normal file
@ -0,0 +1,76 @@
|
||||
# This file must be used with "source bin/activate" *from bash*
|
||||
# you cannot run it directly
|
||||
|
||||
deactivate () {
|
||||
# reset old environment variables
|
||||
if [ -n "${_OLD_VIRTUAL_PATH:-}" ] ; then
|
||||
PATH="${_OLD_VIRTUAL_PATH:-}"
|
||||
export PATH
|
||||
unset _OLD_VIRTUAL_PATH
|
||||
fi
|
||||
if [ -n "${_OLD_VIRTUAL_PYTHONHOME:-}" ] ; then
|
||||
PYTHONHOME="${_OLD_VIRTUAL_PYTHONHOME:-}"
|
||||
export PYTHONHOME
|
||||
unset _OLD_VIRTUAL_PYTHONHOME
|
||||
fi
|
||||
|
||||
# This should detect bash and zsh, which have a hash command that must
|
||||
# be called to get it to forget past commands. Without forgetting
|
||||
# past commands the $PATH changes we made may not be respected
|
||||
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
|
||||
hash -r
|
||||
fi
|
||||
|
||||
if [ -n "${_OLD_VIRTUAL_PS1:-}" ] ; then
|
||||
PS1="${_OLD_VIRTUAL_PS1:-}"
|
||||
export PS1
|
||||
unset _OLD_VIRTUAL_PS1
|
||||
fi
|
||||
|
||||
unset VIRTUAL_ENV
|
||||
if [ ! "$1" = "nondestructive" ] ; then
|
||||
# Self destruct!
|
||||
unset -f deactivate
|
||||
fi
|
||||
}
|
||||
|
||||
# unset irrelevant variables
|
||||
deactivate nondestructive
|
||||
|
||||
VIRTUAL_ENV="/home/marcin/PycharmProjects/SI_Projekt/venv"
|
||||
export VIRTUAL_ENV
|
||||
|
||||
_OLD_VIRTUAL_PATH="$PATH"
|
||||
PATH="$VIRTUAL_ENV/bin:$PATH"
|
||||
export PATH
|
||||
|
||||
# unset PYTHONHOME if set
|
||||
# this will fail if PYTHONHOME is set to the empty string (which is bad anyway)
|
||||
# could use `if (set -u; : $PYTHONHOME) ;` in bash
|
||||
if [ -n "${PYTHONHOME:-}" ] ; then
|
||||
_OLD_VIRTUAL_PYTHONHOME="${PYTHONHOME:-}"
|
||||
unset PYTHONHOME
|
||||
fi
|
||||
|
||||
if [ -z "${VIRTUAL_ENV_DISABLE_PROMPT:-}" ] ; then
|
||||
_OLD_VIRTUAL_PS1="${PS1:-}"
|
||||
if [ "x(venv) " != x ] ; then
|
||||
PS1="(venv) ${PS1:-}"
|
||||
else
|
||||
if [ "`basename \"$VIRTUAL_ENV\"`" = "__" ] ; then
|
||||
# special case for Aspen magic directories
|
||||
# see http://www.zetadev.com/software/aspen/
|
||||
PS1="[`basename \`dirname \"$VIRTUAL_ENV\"\``] $PS1"
|
||||
else
|
||||
PS1="(`basename \"$VIRTUAL_ENV\"`)$PS1"
|
||||
fi
|
||||
fi
|
||||
export PS1
|
||||
fi
|
||||
|
||||
# This should detect bash and zsh, which have a hash command that must
|
||||
# be called to get it to forget past commands. Without forgetting
|
||||
# past commands the $PATH changes we made may not be respected
|
||||
if [ -n "${BASH:-}" -o -n "${ZSH_VERSION:-}" ] ; then
|
||||
hash -r
|
||||
fi
|
37
venv/bin/activate.csh
Normal file
@ -0,0 +1,37 @@
|
||||
# This file must be used with "source bin/activate.csh" *from csh*.
|
||||
# You cannot run it directly.
|
||||
# Created by Davide Di Blasi <davidedb@gmail.com>.
|
||||
# Ported to Python 3.3 venv by Andrew Svetlov <andrew.svetlov@gmail.com>
|
||||
|
||||
alias deactivate 'test $?_OLD_VIRTUAL_PATH != 0 && setenv PATH "$_OLD_VIRTUAL_PATH" && unset _OLD_VIRTUAL_PATH; rehash; test $?_OLD_VIRTUAL_PROMPT != 0 && set prompt="$_OLD_VIRTUAL_PROMPT" && unset _OLD_VIRTUAL_PROMPT; unsetenv VIRTUAL_ENV; test "\!:*" != "nondestructive" && unalias deactivate'
|
||||
|
||||
# Unset irrelevant variables.
|
||||
deactivate nondestructive
|
||||
|
||||
setenv VIRTUAL_ENV "/home/marcin/PycharmProjects/SI_Projekt/venv"
|
||||
|
||||
set _OLD_VIRTUAL_PATH="$PATH"
|
||||
setenv PATH "$VIRTUAL_ENV/bin:$PATH"
|
||||
|
||||
|
||||
set _OLD_VIRTUAL_PROMPT="$prompt"
|
||||
|
||||
if (! "$?VIRTUAL_ENV_DISABLE_PROMPT") then
|
||||
if ("venv" != "") then
|
||||
set env_name = "venv"
|
||||
else
|
||||
if (`basename "VIRTUAL_ENV"` == "__") then
|
||||
# special case for Aspen magic directories
|
||||
# see http://www.zetadev.com/software/aspen/
|
||||
set env_name = `basename \`dirname "$VIRTUAL_ENV"\``
|
||||
else
|
||||
set env_name = `basename "$VIRTUAL_ENV"`
|
||||
endif
|
||||
endif
|
||||
set prompt = "[$env_name] $prompt"
|
||||
unset env_name
|
||||
endif
|
||||
|
||||
alias pydoc python -m pydoc
|
||||
|
||||
rehash
|
75
venv/bin/activate.fish
Normal file
@ -0,0 +1,75 @@
|
||||
# This file must be used with ". bin/activate.fish" *from fish* (http://fishshell.org)
|
||||
# you cannot run it directly
|
||||
|
||||
function deactivate -d "Exit virtualenv and return to normal shell environment"
|
||||
# reset old environment variables
|
||||
if test -n "$_OLD_VIRTUAL_PATH"
|
||||
set -gx PATH $_OLD_VIRTUAL_PATH
|
||||
set -e _OLD_VIRTUAL_PATH
|
||||
end
|
||||
if test -n "$_OLD_VIRTUAL_PYTHONHOME"
|
||||
set -gx PYTHONHOME $_OLD_VIRTUAL_PYTHONHOME
|
||||
set -e _OLD_VIRTUAL_PYTHONHOME
|
||||
end
|
||||
|
||||
if test -n "$_OLD_FISH_PROMPT_OVERRIDE"
|
||||
functions -e fish_prompt
|
||||
set -e _OLD_FISH_PROMPT_OVERRIDE
|
||||
functions -c _old_fish_prompt fish_prompt
|
||||
functions -e _old_fish_prompt
|
||||
end
|
||||
|
||||
set -e VIRTUAL_ENV
|
||||
if test "$argv[1]" != "nondestructive"
|
||||
# Self destruct!
|
||||
functions -e deactivate
|
||||
end
|
||||
end
|
||||
|
||||
# unset irrelevant variables
|
||||
deactivate nondestructive
|
||||
|
||||
set -gx VIRTUAL_ENV "/home/marcin/PycharmProjects/SI_Projekt/venv"
|
||||
|
||||
set -gx _OLD_VIRTUAL_PATH $PATH
|
||||
set -gx PATH "$VIRTUAL_ENV/bin" $PATH
|
||||
|
||||
# unset PYTHONHOME if set
|
||||
if set -q PYTHONHOME
|
||||
set -gx _OLD_VIRTUAL_PYTHONHOME $PYTHONHOME
|
||||
set -e PYTHONHOME
|
||||
end
|
||||
|
||||
if test -z "$VIRTUAL_ENV_DISABLE_PROMPT"
|
||||
# fish uses a function instead of an env var to generate the prompt.
|
||||
|
||||
# save the current fish_prompt function as the function _old_fish_prompt
|
||||
functions -c fish_prompt _old_fish_prompt
|
||||
|
||||
# with the original prompt function renamed, we can override with our own.
|
||||
function fish_prompt
|
||||
# Save the return status of the last command
|
||||
set -l old_status $status
|
||||
|
||||
# Prompt override?
|
||||
if test -n "(venv) "
|
||||
printf "%s%s" "(venv) " (set_color normal)
|
||||
else
|
||||
# ...Otherwise, prepend env
|
||||
set -l _checkbase (basename "$VIRTUAL_ENV")
|
||||
if test $_checkbase = "__"
|
||||
# special case for Aspen magic directories
|
||||
# see http://www.zetadev.com/software/aspen/
|
||||
printf "%s[%s]%s " (set_color -b blue white) (basename (dirname "$VIRTUAL_ENV")) (set_color normal)
|
||||
else
|
||||
printf "%s(%s)%s" (set_color -b blue white) (basename "$VIRTUAL_ENV") (set_color normal)
|
||||
end
|
||||
end
|
||||
|
||||
# Restore the return status of the previous command.
|
||||
echo "exit $old_status" | .
|
||||
_old_fish_prompt
|
||||
end
|
||||
|
||||
set -gx _OLD_FISH_PROMPT_OVERRIDE "$VIRTUAL_ENV"
|
||||
end
|
12
venv/bin/easy_install
Executable file
@ -0,0 +1,12 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==40.8.0','console_scripts','easy_install'
|
||||
__requires__ = 'setuptools==40.8.0'
|
||||
import re
|
||||
import sys
|
||||
from pkg_resources import load_entry_point
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(
|
||||
load_entry_point('setuptools==40.8.0', 'console_scripts', 'easy_install')()
|
||||
)
|
12
venv/bin/easy_install-3.7
Executable file
@ -0,0 +1,12 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: 'setuptools==40.8.0','console_scripts','easy_install-3.7'
|
||||
__requires__ = 'setuptools==40.8.0'
|
||||
import re
|
||||
import sys
|
||||
from pkg_resources import load_entry_point
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(
|
||||
load_entry_point('setuptools==40.8.0', 'console_scripts', 'easy_install-3.7')()
|
||||
)
|
10
venv/bin/f2py
Executable file
@ -0,0 +1,10 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from numpy.f2py.f2py2e import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
10
venv/bin/f2py3
Executable file
@ -0,0 +1,10 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from numpy.f2py.f2py2e import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
10
venv/bin/f2py3.7
Executable file
@ -0,0 +1,10 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# -*- coding: utf-8 -*-
|
||||
import re
|
||||
import sys
|
||||
|
||||
from numpy.f2py.f2py2e import main
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(main())
|
12
venv/bin/pip
Executable file
@ -0,0 +1,12 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==19.0.3','console_scripts','pip'
|
||||
__requires__ = 'pip==19.0.3'
|
||||
import re
|
||||
import sys
|
||||
from pkg_resources import load_entry_point
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(
|
||||
load_entry_point('pip==19.0.3', 'console_scripts', 'pip')()
|
||||
)
|
12
venv/bin/pip3
Executable file
@ -0,0 +1,12 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==19.0.3','console_scripts','pip3'
|
||||
__requires__ = 'pip==19.0.3'
|
||||
import re
|
||||
import sys
|
||||
from pkg_resources import load_entry_point
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(
|
||||
load_entry_point('pip==19.0.3', 'console_scripts', 'pip3')()
|
||||
)
|
12
venv/bin/pip3.7
Executable file
@ -0,0 +1,12 @@
|
||||
#!/home/marcin/PycharmProjects/SI_Projekt/venv/bin/python
|
||||
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==19.0.3','console_scripts','pip3.7'
|
||||
__requires__ = 'pip==19.0.3'
|
||||
import re
|
||||
import sys
|
||||
from pkg_resources import load_entry_point
|
||||
|
||||
if __name__ == '__main__':
|
||||
sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0])
|
||||
sys.exit(
|
||||
load_entry_point('pip==19.0.3', 'console_scripts', 'pip3.7')()
|
||||
)
|
1
venv/bin/python
Symbolic link
@ -0,0 +1 @@
|
||||
python3.7
|
1
venv/bin/python3
Symbolic link
@ -0,0 +1 @@
|
||||
python3.7
|
1
venv/bin/python3.7
Symbolic link
@ -0,0 +1 @@
|
||||
/usr/bin/python3.7
|
27
venv/include/site/python3.7/pygame/_camera.h
Normal file
@ -0,0 +1,27 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
*/
|
||||
|
||||
#ifndef _CAMERA_H
|
||||
#define _CAMERA_H
|
||||
|
||||
#include "_pygame.h"
|
||||
#include "camera.h"
|
||||
|
||||
#endif
|
||||
|
864
venv/include/site/python3.7/pygame/_pygame.h
Normal file
@ -0,0 +1,864 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#ifndef _PYGAME_H
|
||||
#define _PYGAME_H
|
||||
|
||||
/** This header file includes all the definitions for the
|
||||
** base pygame extensions. This header only requires
|
||||
** SDL and Python includes. The reason for functions
|
||||
** prototyped with #define's is to allow for maximum
|
||||
** python portability. It also uses python as the
|
||||
** runtime linker, which allows for late binding. For more
|
||||
** information on this style of development, read the Python
|
||||
** docs on this subject.
|
||||
** http://www.python.org/doc/current/ext/using-cobjects.html
|
||||
**
|
||||
** If using this to build your own derived extensions,
|
||||
** you'll see that the functions available here are mainly
|
||||
** used to help convert between python objects and SDL objects.
|
||||
** Since this library doesn't add a lot of functionality to
|
||||
** the SDL libarary, it doesn't need to offer a lot either.
|
||||
**
|
||||
** When initializing your extension module, you must manually
|
||||
** import the modules you want to use. (this is the part about
|
||||
** using python as the runtime linker). Each module has its
|
||||
** own import_xxx() routine. You need to perform this import
|
||||
** after you have initialized your own module, and before
|
||||
** you call any routines from that module. Since every module
|
||||
** in pygame does this, there are plenty of examples.
|
||||
**
|
||||
** The base module does include some useful conversion routines
|
||||
** that you are free to use in your own extension.
|
||||
**
|
||||
** When making changes, it is very important to keep the
|
||||
** FIRSTSLOT and NUMSLOT constants up to date for each
|
||||
** section. Also be sure not to overlap any of the slots.
|
||||
** When you do make a mistake with this, it will result
|
||||
** is a dereferenced NULL pointer that is easier to diagnose
|
||||
** than it could be :]
|
||||
**/
|
||||
#if defined(HAVE_SNPRINTF) /* defined in python.h (pyerrors.h) and SDL.h \
|
||||
(SDL_config.h) */
|
||||
#undef HAVE_SNPRINTF /* remove GCC redefine warning */
|
||||
#endif
|
||||
|
||||
// This must be before all else
|
||||
#if defined(__SYMBIAN32__) && defined(OPENC)
|
||||
#include <sys/types.h>
|
||||
|
||||
#if defined(__WINS__)
|
||||
void *
|
||||
_alloca(size_t size);
|
||||
#define alloca _alloca
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define PG_STRINGIZE_HELPER(x) #x
|
||||
#define PG_STRINGIZE(x) PG_STRINGIZE_HELPER(x)
|
||||
#define PG_WARN(desc) message(__FILE__ "(" PG_STRINGIZE(__LINE__) "): WARNING: " #desc)
|
||||
|
||||
/* This is unconditionally defined in Python.h */
|
||||
#if defined(_POSIX_C_SOURCE)
|
||||
#undef _POSIX_C_SOURCE
|
||||
#endif
|
||||
|
||||
#include <Python.h>
|
||||
|
||||
/* the version macros are defined since version 1.9.5 */
|
||||
#define PG_MAJOR_VERSION 1
|
||||
#define PG_MINOR_VERSION 9
|
||||
#define PG_PATCH_VERSION 6
|
||||
#define PG_VERSIONNUM(MAJOR, MINOR, PATCH) (1000*(MAJOR) + 100*(MINOR) + (PATCH))
|
||||
#define PG_VERSION_ATLEAST(MAJOR, MINOR, PATCH) \
|
||||
(PG_VERSIONNUM(PG_MAJOR_VERSION, PG_MINOR_VERSION, PG_PATCH_VERSION) >= \
|
||||
PG_VERSIONNUM(MAJOR, MINOR, PATCH))
|
||||
|
||||
/* Cobjects vanish in Python 3.2; so we will code as though we use capsules */
|
||||
#if defined(Py_CAPSULE_H)
|
||||
#define PG_HAVE_CAPSULE 1
|
||||
#else
|
||||
#define PG_HAVE_CAPSULE 0
|
||||
#endif
|
||||
#if defined(Py_COBJECT_H)
|
||||
#define PG_HAVE_COBJECT 1
|
||||
#else
|
||||
#define PG_HAVE_COBJECT 0
|
||||
#endif
|
||||
#if !PG_HAVE_CAPSULE
|
||||
#define PyCapsule_New(ptr, n, dfn) PyCObject_FromVoidPtr(ptr, dfn)
|
||||
#define PyCapsule_GetPointer(obj, n) PyCObject_AsVoidPtr(obj)
|
||||
#define PyCapsule_CheckExact(obj) PyCObject_Check(obj)
|
||||
#endif
|
||||
|
||||
/* Pygame uses Py_buffer (PEP 3118) to exchange array information internally;
|
||||
* define here as needed.
|
||||
*/
|
||||
#if !defined(PyBUF_SIMPLE)
|
||||
typedef struct bufferinfo {
|
||||
void *buf;
|
||||
PyObject *obj;
|
||||
Py_ssize_t len;
|
||||
Py_ssize_t itemsize;
|
||||
int readonly;
|
||||
int ndim;
|
||||
char *format;
|
||||
Py_ssize_t *shape;
|
||||
Py_ssize_t *strides;
|
||||
Py_ssize_t *suboffsets;
|
||||
void *internal;
|
||||
} Py_buffer;
|
||||
|
||||
/* Flags for getting buffers */
|
||||
#define PyBUF_SIMPLE 0
|
||||
#define PyBUF_WRITABLE 0x0001
|
||||
/* we used to include an E, backwards compatible alias */
|
||||
#define PyBUF_WRITEABLE PyBUF_WRITABLE
|
||||
#define PyBUF_FORMAT 0x0004
|
||||
#define PyBUF_ND 0x0008
|
||||
#define PyBUF_STRIDES (0x0010 | PyBUF_ND)
|
||||
#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES)
|
||||
#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES)
|
||||
#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES)
|
||||
#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES)
|
||||
|
||||
#define PyBUF_CONTIG (PyBUF_ND | PyBUF_WRITABLE)
|
||||
#define PyBUF_CONTIG_RO (PyBUF_ND)
|
||||
|
||||
#define PyBUF_STRIDED (PyBUF_STRIDES | PyBUF_WRITABLE)
|
||||
#define PyBUF_STRIDED_RO (PyBUF_STRIDES)
|
||||
|
||||
#define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_WRITABLE | PyBUF_FORMAT)
|
||||
#define PyBUF_RECORDS_RO (PyBUF_STRIDES | PyBUF_FORMAT)
|
||||
|
||||
#define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_WRITABLE | PyBUF_FORMAT)
|
||||
#define PyBUF_FULL_RO (PyBUF_INDIRECT | PyBUF_FORMAT)
|
||||
|
||||
#define PyBUF_READ 0x100
|
||||
#define PyBUF_WRITE 0x200
|
||||
#define PyBUF_SHADOW 0x400
|
||||
|
||||
typedef int (*getbufferproc)(PyObject *, Py_buffer *, int);
|
||||
typedef void (*releasebufferproc)(Py_buffer *);
|
||||
#endif /* #if !defined(PyBUF_SIMPLE) */
|
||||
|
||||
/* Flag indicating a pg_buffer; used for assertions within callbacks */
|
||||
#ifndef NDEBUG
|
||||
#define PyBUF_PYGAME 0x4000
|
||||
#endif
|
||||
|
||||
#define PyBUF_HAS_FLAG(f, F) (((f) & (F)) == (F))
|
||||
|
||||
/* Array information exchange struct C type; inherits from Py_buffer
|
||||
*
|
||||
* Pygame uses its own Py_buffer derived C struct as an internal representation
|
||||
* of an imported array buffer. The extended Py_buffer allows for a
|
||||
* per-instance release callback,
|
||||
*/
|
||||
typedef void (*pybuffer_releaseproc)(Py_buffer *);
|
||||
|
||||
typedef struct pg_bufferinfo_s {
|
||||
Py_buffer view;
|
||||
PyObject *consumer; /* Input: Borrowed reference */
|
||||
pybuffer_releaseproc release_buffer;
|
||||
} pg_buffer;
|
||||
|
||||
/* Operating system specific adjustments
|
||||
*/
|
||||
// No signal()
|
||||
#if defined(__SYMBIAN32__) && defined(HAVE_SIGNAL_H)
|
||||
#undef HAVE_SIGNAL_H
|
||||
#endif
|
||||
|
||||
#if defined(HAVE_SNPRINTF)
|
||||
#undef HAVE_SNPRINTF
|
||||
#endif
|
||||
|
||||
#ifdef MS_WIN32 /*Python gives us MS_WIN32, SDL needs just WIN32*/
|
||||
#ifndef WIN32
|
||||
#define WIN32
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/// Prefix when initializing module
|
||||
#define MODPREFIX ""
|
||||
/// Prefix when importing module
|
||||
#define IMPPREFIX "pygame."
|
||||
|
||||
#ifdef __SYMBIAN32__
|
||||
#undef MODPREFIX
|
||||
#undef IMPPREFIX
|
||||
// On Symbian there is no pygame package. The extensions are built-in or in
|
||||
// sys\bin.
|
||||
#define MODPREFIX "pygame_"
|
||||
#define IMPPREFIX "pygame_"
|
||||
#endif
|
||||
|
||||
#include <SDL.h>
|
||||
|
||||
/* Pygame's SDL version macros:
|
||||
* IS_SDLv1 is 1 if SDL 1.x.x, 0 otherwise
|
||||
* IS_SDLv2 is 1 if at least SDL 2.0.0, 0 otherwise
|
||||
*/
|
||||
#if (SDL_VERSION_ATLEAST(2, 0, 0))
|
||||
#define IS_SDLv1 0
|
||||
#define IS_SDLv2 1
|
||||
#else
|
||||
#define IS_SDLv1 1
|
||||
#define IS_SDLv2 0
|
||||
#endif
|
||||
|
||||
/*#if IS_SDLv1 && PG_MAJOR_VERSION >= 2
|
||||
#error pygame 2 requires SDL 2
|
||||
#endif*/
|
||||
|
||||
#if IS_SDLv2
|
||||
/* SDL 1.2 constants removed from SDL 2 */
|
||||
typedef enum {
|
||||
SDL_HWSURFACE = 0,
|
||||
SDL_RESIZABLE = SDL_WINDOW_RESIZABLE,
|
||||
SDL_ASYNCBLIT = 0,
|
||||
SDL_OPENGL = SDL_WINDOW_OPENGL,
|
||||
SDL_OPENGLBLIT = 0,
|
||||
SDL_ANYFORMAT = 0,
|
||||
SDL_HWPALETTE = 0,
|
||||
SDL_DOUBLEBUF = 0,
|
||||
SDL_FULLSCREEN = SDL_WINDOW_FULLSCREEN,
|
||||
SDL_HWACCEL = 0,
|
||||
SDL_SRCCOLORKEY = 0,
|
||||
SDL_RLEACCELOK = 0,
|
||||
SDL_SRCALPHA = 0,
|
||||
SDL_NOFRAME = SDL_WINDOW_BORDERLESS,
|
||||
SDL_GL_SWAP_CONTROL = 0,
|
||||
TIMER_RESOLUTION = 0
|
||||
} PygameVideoFlags;
|
||||
|
||||
/* the wheel button constants were removed from SDL 2 */
|
||||
typedef enum {
|
||||
PGM_BUTTON_LEFT = SDL_BUTTON_LEFT,
|
||||
PGM_BUTTON_RIGHT = SDL_BUTTON_RIGHT,
|
||||
PGM_BUTTON_MIDDLE = SDL_BUTTON_MIDDLE,
|
||||
PGM_BUTTON_WHEELUP = 4,
|
||||
PGM_BUTTON_WHEELDOWN = 5,
|
||||
PGM_BUTTON_X1 = SDL_BUTTON_X1 + 2,
|
||||
PGM_BUTTON_X2 = SDL_BUTTON_X2 + 2,
|
||||
PGM_BUTTON_KEEP = 0x80
|
||||
} PygameMouseFlags;
|
||||
|
||||
typedef enum {
|
||||
SDL_NOEVENT = 0,
|
||||
/* SDL 1.2 allowed for 8 user defined events. */
|
||||
SDL_NUMEVENTS = SDL_USEREVENT + 8,
|
||||
SDL_ACTIVEEVENT = SDL_NUMEVENTS,
|
||||
PGE_EVENTBEGIN = SDL_NUMEVENTS,
|
||||
SDL_VIDEORESIZE,
|
||||
SDL_VIDEOEXPOSE,
|
||||
PGE_KEYREPEAT,
|
||||
PGE_EVENTEND
|
||||
} PygameEventCode;
|
||||
|
||||
#define PGE_NUMEVENTS (PGE_EVENTEND - PGE_EVENTBEGIN)
|
||||
|
||||
typedef enum {
|
||||
SDL_APPFOCUSMOUSE,
|
||||
SDL_APPINPUTFOCUS,
|
||||
SDL_APPACTIVE
|
||||
} PygameAppCode;
|
||||
|
||||
/* Surface flags: based on SDL 1.2 flags */
|
||||
typedef enum {
|
||||
PGS_SWSURFACE = 0x00000000,
|
||||
PGS_HWSURFACE = 0x00000001,
|
||||
PGS_ASYNCBLIT = 0x00000004,
|
||||
|
||||
PGS_ANYFORMAT = 0x10000000,
|
||||
PGS_HWPALETTE = 0x20000000,
|
||||
PGS_DOUBLEBUF = 0x40000000,
|
||||
PGS_FULLSCREEN = 0x80000000,
|
||||
PGS_OPENGL = 0x00000002,
|
||||
PGS_OPENGLBLIT = 0x0000000A,
|
||||
PGS_RESIZABLE = 0x00000010,
|
||||
PGS_NOFRAME = 0x00000020,
|
||||
PGS_SHOWN = 0x00000040, /* Added from SDL 2 */
|
||||
PGS_HIDDEN = 0x00000080, /* Added from SDL 2 */
|
||||
|
||||
PGS_HWACCEL = 0x00000100,
|
||||
PGS_SRCCOLORKEY = 0x00001000,
|
||||
PGS_RLEACCELOK = 0x00002000,
|
||||
PGS_RLEACCEL = 0x00004000,
|
||||
PGS_SRCALPHA = 0x00010000,
|
||||
PGS_PREALLOC = 0x01000000
|
||||
} PygameSurfaceFlags;
|
||||
|
||||
typedef struct {
|
||||
Uint32 hw_available:1;
|
||||
Uint32 wm_available:1;
|
||||
Uint32 blit_hw:1;
|
||||
Uint32 blit_hw_CC:1;
|
||||
Uint32 blit_hw_A:1;
|
||||
Uint32 blit_sw:1;
|
||||
Uint32 blit_sw_CC:1;
|
||||
Uint32 blit_sw_A:1;
|
||||
Uint32 blit_fill:1;
|
||||
Uint32 video_mem;
|
||||
SDL_PixelFormat *vfmt;
|
||||
SDL_PixelFormat vfmt_data;
|
||||
int current_w;
|
||||
int current_h;
|
||||
} pg_VideoInfo;
|
||||
|
||||
#endif /* IS_SDLv2 */
|
||||
/* macros used throughout the source */
|
||||
#define RAISE(x, y) (PyErr_SetString((x), (y)), (PyObject *)NULL)
|
||||
|
||||
#ifdef WITH_THREAD
|
||||
#define PG_CHECK_THREADS() (1)
|
||||
#else /* ~WITH_THREAD */
|
||||
#define PG_CHECK_THREADS() \
|
||||
(RAISE(PyExc_NotImplementedError, \
|
||||
"Python built without thread support"))
|
||||
#endif /* ~WITH_THREAD */
|
||||
|
||||
#define PyType_Init(x) (((x).ob_type) = &PyType_Type)
|
||||
#define PYGAMEAPI_LOCAL_ENTRY "_PYGAME_C_API"
|
||||
|
||||
#ifndef MIN
|
||||
#define MIN(a, b) ((a) < (b) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
#ifndef MAX
|
||||
#define MAX(a, b) ((a) > (b) ? (a) : (b))
|
||||
#endif
|
||||
|
||||
#ifndef ABS
|
||||
#define ABS(a) (((a) < 0) ? -(a) : (a))
|
||||
#endif
|
||||
|
||||
/* test sdl initializations */
|
||||
#define VIDEO_INIT_CHECK() \
|
||||
if (!SDL_WasInit(SDL_INIT_VIDEO)) \
|
||||
return RAISE(pgExc_SDLError, "video system not initialized")
|
||||
|
||||
#define CDROM_INIT_CHECK() \
|
||||
if (!SDL_WasInit(SDL_INIT_CDROM)) \
|
||||
return RAISE(pgExc_SDLError, "cdrom system not initialized")
|
||||
|
||||
#define JOYSTICK_INIT_CHECK() \
|
||||
if (!SDL_WasInit(SDL_INIT_JOYSTICK)) \
|
||||
return RAISE(pgExc_SDLError, "joystick system not initialized")
|
||||
|
||||
/* BASE */
|
||||
#define VIEW_CONTIGUOUS 1
|
||||
#define VIEW_C_ORDER 2
|
||||
#define VIEW_F_ORDER 4
|
||||
|
||||
#define PYGAMEAPI_BASE_FIRSTSLOT 0
|
||||
#if IS_SDLv1
|
||||
#define PYGAMEAPI_BASE_NUMSLOTS 19
|
||||
#else /* IS_SDLv2 */
|
||||
#define PYGAMEAPI_BASE_NUMSLOTS 23
|
||||
#endif /* IS_SDLv2 */
|
||||
#ifndef PYGAMEAPI_BASE_INTERNAL
|
||||
#define pgExc_SDLError ((PyObject *)PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT])
|
||||
|
||||
#define pg_RegisterQuit \
|
||||
(*(void (*)(void (*)(void)))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 1])
|
||||
|
||||
#define pg_IntFromObj \
|
||||
(*(int (*)(PyObject *, int *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 2])
|
||||
|
||||
#define pg_IntFromObjIndex \
|
||||
(*(int (*)(PyObject *, int, \
|
||||
int *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 3])
|
||||
|
||||
#define pg_TwoIntsFromObj \
|
||||
(*(int (*)(PyObject *, int *, \
|
||||
int *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 4])
|
||||
|
||||
#define pg_FloatFromObj \
|
||||
(*(int (*)(PyObject *, float *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 5])
|
||||
|
||||
#define pg_FloatFromObjIndex \
|
||||
(*(int (*)(PyObject *, int, \
|
||||
float *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 6])
|
||||
|
||||
#define pg_TwoFloatsFromObj \
|
||||
(*(int (*)(PyObject *, float *, \
|
||||
float *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 7])
|
||||
|
||||
#define pg_UintFromObj \
|
||||
(*(int (*)(PyObject *, \
|
||||
Uint32 *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 8])
|
||||
|
||||
#define pg_UintFromObjIndex \
|
||||
(*(int (*)(PyObject *, int, \
|
||||
Uint32 *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 9])
|
||||
|
||||
#define pgVideo_AutoQuit \
|
||||
(*(void (*)(void))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 10])
|
||||
|
||||
#define pgVideo_AutoInit \
|
||||
(*(int (*)(void))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 11])
|
||||
|
||||
#define pg_RGBAFromObj \
|
||||
(*(int (*)(PyObject *, \
|
||||
Uint8 *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 12])
|
||||
|
||||
#define pgBuffer_AsArrayInterface \
|
||||
(*(PyObject * (*)(Py_buffer *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 13])
|
||||
|
||||
#define pgBuffer_AsArrayStruct \
|
||||
(*(PyObject * (*)(Py_buffer *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 14])
|
||||
|
||||
#define pgObject_GetBuffer \
|
||||
(*(int (*)(PyObject *, pg_buffer *, \
|
||||
int))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 15])
|
||||
|
||||
#define pgBuffer_Release \
|
||||
(*(void (*)(pg_buffer *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 16])
|
||||
|
||||
#define pgDict_AsBuffer \
|
||||
(*(int (*)(pg_buffer *, PyObject *, \
|
||||
int))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 17])
|
||||
|
||||
#define pgExc_BufferError \
|
||||
((PyObject *)PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 18])
|
||||
|
||||
#if IS_SDLv2
|
||||
#define pg_GetDefaultWindow \
|
||||
(*(SDL_Window * (*)(void)) PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 19])
|
||||
|
||||
#define pg_SetDefaultWindow \
|
||||
(*(void (*)(SDL_Window *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 20])
|
||||
|
||||
#define pg_GetDefaultWindowSurface \
|
||||
(*(PyObject * (*)(void)) PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 21])
|
||||
|
||||
#define pg_SetDefaultWindowSurface \
|
||||
(*(void (*)(PyObject *))PyGAME_C_API[PYGAMEAPI_BASE_FIRSTSLOT + 22])
|
||||
|
||||
#endif /* IS_SDLv2 */
|
||||
|
||||
#define import_pygame_base() IMPORT_PYGAME_MODULE(base, BASE)
|
||||
#endif
|
||||
|
||||
/* RECT */
|
||||
#define PYGAMEAPI_RECT_FIRSTSLOT \
|
||||
(PYGAMEAPI_BASE_FIRSTSLOT + PYGAMEAPI_BASE_NUMSLOTS)
|
||||
#define PYGAMEAPI_RECT_NUMSLOTS 4
|
||||
|
||||
#if IS_SDLv1
|
||||
typedef struct {
|
||||
int x, y;
|
||||
int w, h;
|
||||
} GAME_Rect;
|
||||
#else
|
||||
typedef SDL_Rect GAME_Rect;
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD GAME_Rect r;
|
||||
PyObject *weakreflist;
|
||||
} pgRectObject;
|
||||
|
||||
#define pgRect_AsRect(x) (((pgRectObject *)x)->r)
|
||||
#ifndef PYGAMEAPI_RECT_INTERNAL
|
||||
#define pgRect_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_RECT_FIRSTSLOT + 0])
|
||||
#define pgRect_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_RECT_FIRSTSLOT + 0])
|
||||
#define pgRect_New \
|
||||
(*(PyObject * (*)(SDL_Rect *)) PyGAME_C_API[PYGAMEAPI_RECT_FIRSTSLOT + 1])
|
||||
#define pgRect_New4 \
|
||||
(*(PyObject * (*)(int, int, int, int)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RECT_FIRSTSLOT + 2])
|
||||
#define pgRect_FromObject \
|
||||
(*(GAME_Rect * (*)(PyObject *, GAME_Rect *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RECT_FIRSTSLOT + 3])
|
||||
|
||||
#define import_pygame_rect() IMPORT_PYGAME_MODULE(rect, RECT)
|
||||
#endif
|
||||
|
||||
/* CDROM */
|
||||
#define PYGAMEAPI_CDROM_FIRSTSLOT \
|
||||
(PYGAMEAPI_RECT_FIRSTSLOT + PYGAMEAPI_RECT_NUMSLOTS)
|
||||
#define PYGAMEAPI_CDROM_NUMSLOTS 2
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD int id;
|
||||
} pgCDObject;
|
||||
|
||||
#define pgCD_AsID(x) (((pgCDObject *)x)->id)
|
||||
#ifndef PYGAMEAPI_CDROM_INTERNAL
|
||||
#define pgCD_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_CDROM_FIRSTSLOT + 0])
|
||||
#define pgCD_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_CDROM_FIRSTSLOT + 0])
|
||||
#define pgCD_New \
|
||||
(*(PyObject * (*)(int)) PyGAME_C_API[PYGAMEAPI_CDROM_FIRSTSLOT + 1])
|
||||
|
||||
#define import_pygame_cd() IMPORT_PYGAME_MODULE(cdrom, CDROM)
|
||||
#endif
|
||||
|
||||
/* JOYSTICK */
|
||||
#define PYGAMEAPI_JOYSTICK_FIRSTSLOT \
|
||||
(PYGAMEAPI_CDROM_FIRSTSLOT + PYGAMEAPI_CDROM_NUMSLOTS)
|
||||
#define PYGAMEAPI_JOYSTICK_NUMSLOTS 2
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD int id;
|
||||
} pgJoystickObject;
|
||||
|
||||
#define pgJoystick_AsID(x) (((pgJoystickObject *)x)->id)
|
||||
|
||||
#ifndef PYGAMEAPI_JOYSTICK_INTERNAL
|
||||
#define pgJoystick_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_JOYSTICK_FIRSTSLOT + 0])
|
||||
|
||||
#define pgJoystick_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_JOYSTICK_FIRSTSLOT + 0])
|
||||
#define pgJoystick_New \
|
||||
(*(PyObject * (*)(int)) PyGAME_C_API[PYGAMEAPI_JOYSTICK_FIRSTSLOT + 1])
|
||||
|
||||
#define import_pygame_joystick() IMPORT_PYGAME_MODULE(joystick, JOYSTICK)
|
||||
#endif
|
||||
|
||||
/* DISPLAY */
|
||||
#define PYGAMEAPI_DISPLAY_FIRSTSLOT \
|
||||
(PYGAMEAPI_JOYSTICK_FIRSTSLOT + PYGAMEAPI_JOYSTICK_NUMSLOTS)
|
||||
#define PYGAMEAPI_DISPLAY_NUMSLOTS 2
|
||||
|
||||
typedef struct {
|
||||
#if IS_SDLv1
|
||||
PyObject_HEAD SDL_VideoInfo info;
|
||||
#else
|
||||
PyObject_HEAD pg_VideoInfo info;
|
||||
#endif
|
||||
} pgVidInfoObject;
|
||||
|
||||
#define pgVidInfo_AsVidInfo(x) (((pgVidInfoObject *)x)->info)
|
||||
#ifndef PYGAMEAPI_DISPLAY_INTERNAL
|
||||
#define pgVidInfo_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_DISPLAY_FIRSTSLOT + 0])
|
||||
|
||||
#define pgVidInfo_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_DISPLAY_FIRSTSLOT + 0])
|
||||
|
||||
#if IS_SDLv1
|
||||
#define pgVidInfo_New \
|
||||
(*(PyObject * (*)(SDL_VideoInfo *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_DISPLAY_FIRSTSLOT + 1])
|
||||
#else
|
||||
#define pgVidInfo_New \
|
||||
(*(PyObject * (*)(pg_VideoInfo *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_DISPLAY_FIRSTSLOT + 1])
|
||||
#endif
|
||||
|
||||
#define import_pygame_display() IMPORT_PYGAME_MODULE(display, DISPLAY)
|
||||
#endif
|
||||
|
||||
/* SURFACE */
|
||||
#define PYGAMEAPI_SURFACE_FIRSTSLOT \
|
||||
(PYGAMEAPI_DISPLAY_FIRSTSLOT + PYGAMEAPI_DISPLAY_NUMSLOTS)
|
||||
#define PYGAMEAPI_SURFACE_NUMSLOTS 3
|
||||
typedef struct {
|
||||
PyObject_HEAD SDL_Surface *surf;
|
||||
#if IS_SDLv2
|
||||
int owner;
|
||||
#endif /* IS_SDLv2 */
|
||||
struct pgSubSurface_Data *subsurface; /*ptr to subsurface data (if a
|
||||
* subsurface)*/
|
||||
PyObject *weakreflist;
|
||||
PyObject *locklist;
|
||||
PyObject *dependency;
|
||||
} pgSurfaceObject;
|
||||
#define pgSurface_AsSurface(x) (((pgSurfaceObject *)x)->surf)
|
||||
#ifndef PYGAMEAPI_SURFACE_INTERNAL
|
||||
#define pgSurface_Check(x) \
|
||||
(PyObject_IsInstance((x), \
|
||||
(PyObject *)PyGAME_C_API[PYGAMEAPI_SURFACE_FIRSTSLOT + 0]))
|
||||
#define pgSurface_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_SURFACE_FIRSTSLOT + 0])
|
||||
#if IS_SDLv1
|
||||
#define pgSurface_New \
|
||||
(*(PyObject * (*)(SDL_Surface *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_SURFACE_FIRSTSLOT + 1])
|
||||
#else /* IS_SDLv2 */
|
||||
#define pgSurface_New2 \
|
||||
(*(PyObject * (*)(SDL_Surface *, int)) \
|
||||
PyGAME_C_API[PYGAMEAPI_SURFACE_FIRSTSLOT + 1])
|
||||
#endif /* IS_SDLv2 */
|
||||
#define pgSurface_Blit \
|
||||
(*(int (*)(PyObject *, PyObject *, SDL_Rect *, SDL_Rect *, \
|
||||
int))PyGAME_C_API[PYGAMEAPI_SURFACE_FIRSTSLOT + 2])
|
||||
|
||||
#define import_pygame_surface() \
|
||||
do { \
|
||||
IMPORT_PYGAME_MODULE(surface, SURFACE); \
|
||||
if (PyErr_Occurred() != NULL) \
|
||||
break; \
|
||||
IMPORT_PYGAME_MODULE(surflock, SURFLOCK); \
|
||||
} while (0)
|
||||
|
||||
#if IS_SDLv2
|
||||
#define pgSurface_New(surface) pgSurface_New2((surface), 1)
|
||||
#define pgSurface_NewNoOwn(surface) pgSurface_New2((surface), 0)
|
||||
#endif /* IS_SDLv2 */
|
||||
|
||||
#endif
|
||||
|
||||
/* SURFLOCK */ /*auto import/init by surface*/
|
||||
#define PYGAMEAPI_SURFLOCK_FIRSTSLOT \
|
||||
(PYGAMEAPI_SURFACE_FIRSTSLOT + PYGAMEAPI_SURFACE_NUMSLOTS)
|
||||
#define PYGAMEAPI_SURFLOCK_NUMSLOTS 8
|
||||
struct pgSubSurface_Data {
|
||||
PyObject *owner;
|
||||
int pixeloffset;
|
||||
int offsetx, offsety;
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD PyObject *surface;
|
||||
PyObject *lockobj;
|
||||
PyObject *weakrefs;
|
||||
} pgLifetimeLockObject;
|
||||
|
||||
#ifndef PYGAMEAPI_SURFLOCK_INTERNAL
|
||||
#define pgLifetimeLock_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 0])
|
||||
#define pgSurface_Prep(x) \
|
||||
if (((pgSurfaceObject *)x)->subsurface) \
|
||||
(*(*(void (*)( \
|
||||
PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 1]))(x)
|
||||
|
||||
#define pgSurface_Unprep(x) \
|
||||
if (((pgSurfaceObject *)x)->subsurface) \
|
||||
(*(*(void (*)( \
|
||||
PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 2]))(x)
|
||||
|
||||
#define pgSurface_Lock \
|
||||
(*(int (*)(PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 3])
|
||||
#define pgSurface_Unlock \
|
||||
(*(int (*)(PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 4])
|
||||
#define pgSurface_LockBy \
|
||||
(*(int (*)(PyObject *, \
|
||||
PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 5])
|
||||
#define pgSurface_UnlockBy \
|
||||
(*(int (*)(PyObject *, \
|
||||
PyObject *))PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 6])
|
||||
#define pgSurface_LockLifetime \
|
||||
(*(PyObject * (*)(PyObject *, PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_SURFLOCK_FIRSTSLOT + 7])
|
||||
#endif
|
||||
|
||||
/* EVENT */
|
||||
#define PYGAMEAPI_EVENT_FIRSTSLOT \
|
||||
(PYGAMEAPI_SURFLOCK_FIRSTSLOT + PYGAMEAPI_SURFLOCK_NUMSLOTS)
|
||||
#if IS_SDLv1
|
||||
#define PYGAMEAPI_EVENT_NUMSLOTS 4
|
||||
#else /* IS_SDLv2 */
|
||||
#define PYGAMEAPI_EVENT_NUMSLOTS 6
|
||||
#endif /* IS_SDLv2 */
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD int type;
|
||||
PyObject *dict;
|
||||
} pgEventObject;
|
||||
|
||||
#ifndef PYGAMEAPI_EVENT_INTERNAL
|
||||
#define pgEvent_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 0])
|
||||
#define pgEvent_Type \
|
||||
(*(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 0])
|
||||
#define pgEvent_New \
|
||||
(*(PyObject * (*)(SDL_Event *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 1])
|
||||
#define pgEvent_New2 \
|
||||
(*(PyObject * (*)(int, PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 2])
|
||||
#define pgEvent_FillUserEvent \
|
||||
(*(int (*)(pgEventObject *, \
|
||||
SDL_Event *))PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 3])
|
||||
#if IS_SDLv2
|
||||
#define pg_EnableKeyRepeat \
|
||||
(*(int (*)(int, int))PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 4])
|
||||
#define pg_GetKeyRepeat \
|
||||
(*(void (*)(int *, int *))PyGAME_C_API[PYGAMEAPI_EVENT_FIRSTSLOT + 5])
|
||||
#endif /* IS_SDLv2 */
|
||||
#define import_pygame_event() IMPORT_PYGAME_MODULE(event, EVENT)
|
||||
#endif
|
||||
|
||||
/* RWOBJECT */
|
||||
/*the rwobject are only needed for C side work, not accessable from python*/
|
||||
#define PYGAMEAPI_RWOBJECT_FIRSTSLOT \
|
||||
(PYGAMEAPI_EVENT_FIRSTSLOT + PYGAMEAPI_EVENT_NUMSLOTS)
|
||||
#define PYGAMEAPI_RWOBJECT_NUMSLOTS 6
|
||||
#ifndef PYGAMEAPI_RWOBJECT_INTERNAL
|
||||
#define pgRWops_FromObject \
|
||||
(*(SDL_RWops * (*)(PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 0])
|
||||
#define pgRWops_IsFileObject \
|
||||
(*(int (*)(SDL_RWops *))PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 1])
|
||||
#define pg_EncodeFilePath \
|
||||
(*(PyObject * (*)(PyObject *, PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 2])
|
||||
#define pg_EncodeString \
|
||||
(*(PyObject * (*)(PyObject *, const char *, const char *, PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 3])
|
||||
#define pgRWops_FromFileObject \
|
||||
(*(SDL_RWops * (*)(PyObject *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 4])
|
||||
#define pgRWops_ReleaseObject \
|
||||
(*(int (*)(SDL_RWops *)) \
|
||||
PyGAME_C_API[PYGAMEAPI_RWOBJECT_FIRSTSLOT + 5])
|
||||
#define import_pygame_rwobject() IMPORT_PYGAME_MODULE(rwobject, RWOBJECT)
|
||||
|
||||
#endif
|
||||
|
||||
/* PixelArray */
|
||||
#define PYGAMEAPI_PIXELARRAY_FIRSTSLOT \
|
||||
(PYGAMEAPI_RWOBJECT_FIRSTSLOT + PYGAMEAPI_RWOBJECT_NUMSLOTS)
|
||||
#define PYGAMEAPI_PIXELARRAY_NUMSLOTS 2
|
||||
#ifndef PYGAMEAPI_PIXELARRAY_INTERNAL
|
||||
#define PyPixelArray_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_PIXELARRAY_FIRSTSLOT + 0])
|
||||
#define PyPixelArray_New \
|
||||
(*(PyObject * (*)) PyGAME_C_API[PYGAMEAPI_PIXELARRAY_FIRSTSLOT + 1])
|
||||
#define import_pygame_pixelarray() IMPORT_PYGAME_MODULE(pixelarray, PIXELARRAY)
|
||||
#endif /* PYGAMEAPI_PIXELARRAY_INTERNAL */
|
||||
|
||||
/* Color */
|
||||
#define PYGAMEAPI_COLOR_FIRSTSLOT \
|
||||
(PYGAMEAPI_PIXELARRAY_FIRSTSLOT + PYGAMEAPI_PIXELARRAY_NUMSLOTS)
|
||||
#define PYGAMEAPI_COLOR_NUMSLOTS 4
|
||||
#ifndef PYGAMEAPI_COLOR_INTERNAL
|
||||
#define pgColor_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_COLOR_FIRSTSLOT + 0])
|
||||
#define pgColor_Type (*(PyObject *)PyGAME_C_API[PYGAMEAPI_COLOR_FIRSTSLOT])
|
||||
#define pgColor_New \
|
||||
(*(PyObject * (*)(Uint8 *)) PyGAME_C_API[PYGAMEAPI_COLOR_FIRSTSLOT + 1])
|
||||
#define pgColor_NewLength \
|
||||
(*(PyObject * (*)(Uint8 *, Uint8)) \
|
||||
PyGAME_C_API[PYGAMEAPI_COLOR_FIRSTSLOT + 3])
|
||||
|
||||
#define pg_RGBAFromColorObj \
|
||||
(*(int (*)(PyObject *, \
|
||||
Uint8 *))PyGAME_C_API[PYGAMEAPI_COLOR_FIRSTSLOT + 2])
|
||||
#define import_pygame_color() IMPORT_PYGAME_MODULE(color, COLOR)
|
||||
#endif /* PYGAMEAPI_COLOR_INTERNAL */
|
||||
|
||||
/* Math */
|
||||
#define PYGAMEAPI_MATH_FIRSTSLOT \
|
||||
(PYGAMEAPI_COLOR_FIRSTSLOT + PYGAMEAPI_COLOR_NUMSLOTS)
|
||||
#define PYGAMEAPI_MATH_NUMSLOTS 2
|
||||
#ifndef PYGAMEAPI_MATH_INTERNAL
|
||||
#define pgVector2_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_MATH_FIRSTSLOT + 0])
|
||||
#define pgVector3_Check(x) \
|
||||
((x)->ob_type == \
|
||||
(PyTypeObject *)PyGAME_C_API[PYGAMEAPI_MATH_FIRSTSLOT + 1])
|
||||
/*
|
||||
#define pgVector2_New \
|
||||
(*(PyObject*(*)) PyGAME_C_API[PYGAMEAPI_MATH_FIRSTSLOT + 1])
|
||||
*/
|
||||
#define import_pygame_math() IMPORT_PYGAME_MODULE(math, MATH)
|
||||
#endif /* PYGAMEAPI_MATH_INTERNAL */
|
||||
|
||||
#define PG_CAPSULE_NAME(m) (IMPPREFIX m "." PYGAMEAPI_LOCAL_ENTRY)
|
||||
|
||||
#define _IMPORT_PYGAME_MODULE(module, MODULE, api_root) \
|
||||
{ \
|
||||
PyObject *_module = PyImport_ImportModule(IMPPREFIX #module); \
|
||||
\
|
||||
if (_module != NULL) { \
|
||||
PyObject *_c_api = \
|
||||
PyObject_GetAttrString(_module, PYGAMEAPI_LOCAL_ENTRY); \
|
||||
\
|
||||
Py_DECREF(_module); \
|
||||
if (_c_api != NULL && PyCapsule_CheckExact(_c_api)) { \
|
||||
void **localptr = (void **)PyCapsule_GetPointer( \
|
||||
_c_api, PG_CAPSULE_NAME(#module)); \
|
||||
\
|
||||
if (localptr != NULL) { \
|
||||
memcpy(api_root + PYGAMEAPI_##MODULE##_FIRSTSLOT, \
|
||||
localptr, \
|
||||
sizeof(void **) * PYGAMEAPI_##MODULE##_NUMSLOTS); \
|
||||
} \
|
||||
} \
|
||||
Py_XDECREF(_c_api); \
|
||||
} \
|
||||
}
|
||||
|
||||
#ifndef NO_PYGAME_C_API
|
||||
#define IMPORT_PYGAME_MODULE(module, MODULE) \
|
||||
_IMPORT_PYGAME_MODULE(module, MODULE, PyGAME_C_API)
|
||||
#define PYGAMEAPI_TOTALSLOTS \
|
||||
(PYGAMEAPI_MATH_FIRSTSLOT + PYGAMEAPI_MATH_NUMSLOTS)
|
||||
|
||||
#ifdef PYGAME_H
|
||||
void *PyGAME_C_API[PYGAMEAPI_TOTALSLOTS] = {NULL};
|
||||
#else
|
||||
extern void *PyGAME_C_API[PYGAMEAPI_TOTALSLOTS];
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if PG_HAVE_CAPSULE
|
||||
#define encapsulate_api(ptr, module) \
|
||||
PyCapsule_New(ptr, PG_CAPSULE_NAME(module), NULL)
|
||||
#else
|
||||
#define encapsulate_api(ptr, module) PyCObject_FromVoidPtr(ptr, NULL)
|
||||
#endif
|
||||
|
||||
#ifndef PG_INLINE
|
||||
#if defined(__clang__)
|
||||
#define PG_INLINE __inline__ __attribute__((__unused__))
|
||||
#elif defined(__GNUC__)
|
||||
#define PG_INLINE __inline__
|
||||
#elif defined(_MSC_VER)
|
||||
#define PG_INLINE __inline
|
||||
#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
|
||||
#define PG_INLINE inline
|
||||
#else
|
||||
#define PG_INLINE
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*last platform compiler stuff*/
|
||||
#if defined(macintosh) && defined(__MWERKS__) || defined(__SYMBIAN32__)
|
||||
#define PYGAME_EXPORT __declspec(export)
|
||||
#else
|
||||
#define PYGAME_EXPORT
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* PYGAME_H */
|
31
venv/include/site/python3.7/pygame/_surface.h
Normal file
@ -0,0 +1,31 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
Copyright (C) 2007 Marcus von Appen
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#ifndef _SURFACE_H
|
||||
#define _SURFACE_H
|
||||
|
||||
#include "_pygame.h"
|
||||
#include "surface.h"
|
||||
|
||||
#endif
|
||||
|
146
venv/include/site/python3.7/pygame/bitmask.h
Normal file
@ -0,0 +1,146 @@
|
||||
/*
|
||||
Bitmask 1.7 - A pixel-perfect collision detection library.
|
||||
|
||||
Copyright (C) 2002-2005 Ulf Ekstrom except for the bitcount
|
||||
function which is copyright (C) Donald W. Gillies, 1992.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
#ifndef BITMASK_H
|
||||
#define BITMASK_H
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include <limits.h>
|
||||
/* Define INLINE for different compilers. If your compiler does not
|
||||
support inlining then there might be a performance hit in
|
||||
bitmask_overlap_area().
|
||||
*/
|
||||
#ifndef INLINE
|
||||
# ifdef __GNUC__
|
||||
# define INLINE inline
|
||||
# else
|
||||
# ifdef _MSC_VER
|
||||
# define INLINE __inline
|
||||
# else
|
||||
# define INLINE
|
||||
# endif
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#define BITMASK_W unsigned long int
|
||||
#define BITMASK_W_LEN (sizeof(BITMASK_W)*CHAR_BIT)
|
||||
#define BITMASK_W_MASK (BITMASK_W_LEN - 1)
|
||||
#define BITMASK_N(n) ((BITMASK_W)1 << (n))
|
||||
|
||||
typedef struct bitmask
|
||||
{
|
||||
int w,h;
|
||||
BITMASK_W bits[1];
|
||||
} bitmask_t;
|
||||
|
||||
/* Creates a bitmask of width w and height h, where
|
||||
w and h must both be greater than or equal to 0.
|
||||
The mask is automatically cleared when created.
|
||||
*/
|
||||
bitmask_t *bitmask_create(int w, int h);
|
||||
|
||||
/* Frees all the memory allocated by bitmask_create for m. */
|
||||
void bitmask_free(bitmask_t *m);
|
||||
|
||||
/* Clears all bits in the mask */
|
||||
void bitmask_clear(bitmask_t *m);
|
||||
|
||||
/* Sets all bits in the mask */
|
||||
void bitmask_fill(bitmask_t *m);
|
||||
|
||||
/* Flips all bits in the mask */
|
||||
void bitmask_invert(bitmask_t *m);
|
||||
|
||||
/* Counts the bits in the mask */
|
||||
unsigned int bitmask_count(bitmask_t *m);
|
||||
|
||||
/* Returns nonzero if the bit at (x,y) is set. Coordinates start at
|
||||
(0,0) */
|
||||
static INLINE int bitmask_getbit(const bitmask_t *m, int x, int y)
|
||||
{
|
||||
return (m->bits[x/BITMASK_W_LEN*m->h + y] & BITMASK_N(x & BITMASK_W_MASK)) != 0;
|
||||
}
|
||||
|
||||
/* Sets the bit at (x,y) */
|
||||
static INLINE void bitmask_setbit(bitmask_t *m, int x, int y)
|
||||
{
|
||||
m->bits[x/BITMASK_W_LEN*m->h + y] |= BITMASK_N(x & BITMASK_W_MASK);
|
||||
}
|
||||
|
||||
/* Clears the bit at (x,y) */
|
||||
static INLINE void bitmask_clearbit(bitmask_t *m, int x, int y)
|
||||
{
|
||||
m->bits[x/BITMASK_W_LEN*m->h + y] &= ~BITMASK_N(x & BITMASK_W_MASK);
|
||||
}
|
||||
|
||||
/* Returns nonzero if the masks overlap with the given offset.
|
||||
The overlap tests uses the following offsets (which may be negative):
|
||||
|
||||
+----+----------..
|
||||
|A | yoffset
|
||||
| +-+----------..
|
||||
+--|B
|
||||
|xoffset
|
||||
| |
|
||||
: :
|
||||
*/
|
||||
int bitmask_overlap(const bitmask_t *a, const bitmask_t *b, int xoffset, int yoffset);
|
||||
|
||||
/* Like bitmask_overlap(), but will also give a point of intersection.
|
||||
x and y are given in the coordinates of mask a, and are untouched
|
||||
if there is no overlap. */
|
||||
int bitmask_overlap_pos(const bitmask_t *a, const bitmask_t *b,
|
||||
int xoffset, int yoffset, int *x, int *y);
|
||||
|
||||
/* Returns the number of overlapping 'pixels' */
|
||||
int bitmask_overlap_area(const bitmask_t *a, const bitmask_t *b, int xoffset, int yoffset);
|
||||
|
||||
/* Fills a mask with the overlap of two other masks. A bitwise AND. */
|
||||
void bitmask_overlap_mask (const bitmask_t *a, const bitmask_t *b, bitmask_t *c, int xoffset, int yoffset);
|
||||
|
||||
/* Draws mask b onto mask a (bitwise OR). Can be used to compose large
|
||||
(game background?) mask from several submasks, which may speed up
|
||||
the testing. */
|
||||
|
||||
void bitmask_draw(bitmask_t *a, const bitmask_t *b, int xoffset, int yoffset);
|
||||
|
||||
void bitmask_erase(bitmask_t *a, const bitmask_t *b, int xoffset, int yoffset);
|
||||
|
||||
/* Return a new scaled bitmask, with dimensions w*h. The quality of the
|
||||
scaling may not be perfect for all circumstances, but it should
|
||||
be reasonable. If either w or h is 0 a clear 1x1 mask is returned. */
|
||||
bitmask_t *bitmask_scale(const bitmask_t *m, int w, int h);
|
||||
|
||||
/* Convolve b into a, drawing the output into o, shifted by offset. If offset
|
||||
* is 0, then the (x,y) bit will be set if and only if
|
||||
* bitmask_overlap(a, b, x - b->w - 1, y - b->h - 1) returns true.
|
||||
*
|
||||
* Modifies bits o[xoffset ... xoffset + a->w + b->w - 1)
|
||||
* [yoffset ... yoffset + a->h + b->h - 1). */
|
||||
void bitmask_convolve(const bitmask_t *a, const bitmask_t *b, bitmask_t *o, int xoffset, int yoffset);
|
||||
|
||||
#ifdef __cplusplus
|
||||
} /* End of extern "C" { */
|
||||
#endif
|
||||
|
||||
#endif
|
201
venv/include/site/python3.7/pygame/camera.h
Normal file
@ -0,0 +1,201 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
*/
|
||||
|
||||
#include "pygame.h"
|
||||
#include "doc/camera_doc.h"
|
||||
|
||||
#if defined(__unix__)
|
||||
#include <structmember.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <assert.h>
|
||||
|
||||
#include <fcntl.h> /* low-level i/o */
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/mman.h>
|
||||
#include <sys/ioctl.h>
|
||||
|
||||
/* on freebsd there is no asm/types */
|
||||
#ifdef linux
|
||||
#include <asm/types.h> /* for videodev2.h */
|
||||
#endif
|
||||
|
||||
#include <linux/videodev2.h>
|
||||
#elif defined(__APPLE__)
|
||||
#include <AvailabilityMacros.h>
|
||||
/* We support OSX 10.6 and below. */
|
||||
#if __MAC_OS_X_VERSION_MAX_ALLOWED <= 1060
|
||||
#define PYGAME_MAC_CAMERA_OLD 1
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#if defined(PYGAME_MAC_CAMERA_OLD)
|
||||
#include <QuickTime/QuickTime.h>
|
||||
#include <QuickTime/Movies.h>
|
||||
#include <QuickTime/ImageCompression.h>
|
||||
#endif
|
||||
|
||||
/* some constants used which are not defined on non-v4l machines. */
|
||||
#ifndef V4L2_PIX_FMT_RGB24
|
||||
#define V4L2_PIX_FMT_RGB24 'RGB3'
|
||||
#endif
|
||||
#ifndef V4L2_PIX_FMT_RGB444
|
||||
#define V4L2_PIX_FMT_RGB444 'R444'
|
||||
#endif
|
||||
#ifndef V4L2_PIX_FMT_YUYV
|
||||
#define V4L2_PIX_FMT_YUYV 'YUYV'
|
||||
#endif
|
||||
|
||||
#define CLEAR(x) memset (&(x), 0, sizeof (x))
|
||||
#define SAT(c) if (c & (~255)) { if (c < 0) c = 0; else c = 255; }
|
||||
#define SAT2(c) ((c) & (~255) ? ((c) < 0 ? 0 : 255) : (c))
|
||||
#define DEFAULT_WIDTH 640
|
||||
#define DEFAULT_HEIGHT 480
|
||||
#define RGB_OUT 1
|
||||
#define YUV_OUT 2
|
||||
#define HSV_OUT 4
|
||||
#define CAM_V4L 1 /* deprecated. the incomplete support in pygame was removed */
|
||||
#define CAM_V4L2 2
|
||||
|
||||
struct buffer {
|
||||
void * start;
|
||||
size_t length;
|
||||
};
|
||||
|
||||
#if defined(__unix__)
|
||||
typedef struct pgCameraObject {
|
||||
PyObject_HEAD
|
||||
char* device_name;
|
||||
int camera_type;
|
||||
unsigned long pixelformat;
|
||||
unsigned int color_out;
|
||||
struct buffer* buffers;
|
||||
unsigned int n_buffers;
|
||||
int width;
|
||||
int height;
|
||||
int size;
|
||||
int hflip;
|
||||
int vflip;
|
||||
int brightness;
|
||||
int fd;
|
||||
} pgCameraObject;
|
||||
#elif defined(PYGAME_MAC_CAMERA_OLD)
|
||||
typedef struct pgCameraObject {
|
||||
PyObject_HEAD
|
||||
char* device_name; /* unieke name of the device */
|
||||
OSType pixelformat;
|
||||
unsigned int color_out;
|
||||
SeqGrabComponent component; /* A type used by the Sequence Grabber API */
|
||||
SGChannel channel; /* Channel of the Sequence Grabber */
|
||||
GWorldPtr gworld; /* Pointer to the struct that holds the data of the captured image */
|
||||
Rect boundsRect; /* bounds of the image frame */
|
||||
long size; /* size of the image in our buffer to draw */
|
||||
int hflip;
|
||||
int vflip;
|
||||
short depth;
|
||||
struct buffer pixels;
|
||||
//struct buffer tmp_pixels /* place where the flipped image in temporarly stored if hflip or vflip is true.*/
|
||||
} pgCameraObject;
|
||||
|
||||
#else
|
||||
/* generic definition.
|
||||
*/
|
||||
|
||||
typedef struct pgCameraObject {
|
||||
PyObject_HEAD
|
||||
char* device_name;
|
||||
int camera_type;
|
||||
unsigned long pixelformat;
|
||||
unsigned int color_out;
|
||||
struct buffer* buffers;
|
||||
unsigned int n_buffers;
|
||||
int width;
|
||||
int height;
|
||||
int size;
|
||||
int hflip;
|
||||
int vflip;
|
||||
int brightness;
|
||||
int fd;
|
||||
} pgCameraObject;
|
||||
#endif
|
||||
|
||||
/* internal functions for colorspace conversion */
|
||||
void colorspace (SDL_Surface *src, SDL_Surface *dst, int cspace);
|
||||
void rgb24_to_rgb (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void rgb444_to_rgb (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void rgb_to_yuv (const void* src, void* dst, int length,
|
||||
unsigned long source, SDL_PixelFormat* format);
|
||||
void rgb_to_hsv (const void* src, void* dst, int length,
|
||||
unsigned long source, SDL_PixelFormat* format);
|
||||
void yuyv_to_rgb (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void yuyv_to_yuv (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void uyvy_to_rgb (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void uyvy_to_yuv (const void* src, void* dst, int length, SDL_PixelFormat* format);
|
||||
void sbggr8_to_rgb (const void* src, void* dst, int width, int height,
|
||||
SDL_PixelFormat* format);
|
||||
void yuv420_to_rgb (const void* src, void* dst, int width, int height,
|
||||
SDL_PixelFormat* format);
|
||||
void yuv420_to_yuv (const void* src, void* dst, int width, int height,
|
||||
SDL_PixelFormat* format);
|
||||
|
||||
#if defined(__unix__)
|
||||
/* internal functions specific to v4l2 */
|
||||
char** v4l2_list_cameras (int* num_devices);
|
||||
int v4l2_get_control (int fd, int id, int *value);
|
||||
int v4l2_set_control (int fd, int id, int value);
|
||||
PyObject* v4l2_read_raw (pgCameraObject* self);
|
||||
int v4l2_xioctl (int fd, int request, void *arg);
|
||||
int v4l2_process_image (pgCameraObject* self, const void *image,
|
||||
unsigned int buffer_size, SDL_Surface* surf);
|
||||
int v4l2_query_buffer (pgCameraObject* self);
|
||||
int v4l2_read_frame (pgCameraObject* self, SDL_Surface* surf);
|
||||
int v4l2_stop_capturing (pgCameraObject* self);
|
||||
int v4l2_start_capturing (pgCameraObject* self);
|
||||
int v4l2_uninit_device (pgCameraObject* self);
|
||||
int v4l2_init_mmap (pgCameraObject* self);
|
||||
int v4l2_init_device (pgCameraObject* self);
|
||||
int v4l2_close_device (pgCameraObject* self);
|
||||
int v4l2_open_device (pgCameraObject* self);
|
||||
|
||||
#elif defined(PYGAME_MAC_CAMERA_OLD)
|
||||
/* internal functions specific to mac */
|
||||
char** mac_list_cameras(int* num_devices);
|
||||
int mac_open_device (pgCameraObject* self);
|
||||
int mac_init_device(pgCameraObject* self);
|
||||
int mac_close_device (pgCameraObject* self);
|
||||
int mac_start_capturing(pgCameraObject* self);
|
||||
int mac_stop_capturing (pgCameraObject* self);
|
||||
|
||||
int mac_get_control(pgCameraObject* self, int id, int* value);
|
||||
int mac_set_control(pgCameraObject* self, int id, int value);
|
||||
|
||||
PyObject* mac_read_raw(pgCameraObject *self);
|
||||
int mac_read_frame(pgCameraObject* self, SDL_Surface* surf);
|
||||
int mac_camera_idle(pgCameraObject* self);
|
||||
int mac_copy_gworld_to_surface(pgCameraObject* self, SDL_Surface* surf);
|
||||
|
||||
void flip_image(const void* image, void* flipped_image, int width, int height,
|
||||
short depth, int hflip, int vflip);
|
||||
|
||||
#endif
|
48
venv/include/site/python3.7/pygame/fastevents.h
Normal file
@ -0,0 +1,48 @@
|
||||
#ifndef _FASTEVENTS_H_
|
||||
#define _FASTEVENTS_H_
|
||||
/*
|
||||
NET2 is a threaded, event based, network IO library for SDL.
|
||||
Copyright (C) 2002 Bob Pendleton
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Lesser General Public License
|
||||
as published by the Free Software Foundation; either version 2.1
|
||||
of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Lesser General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Lesser General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
|
||||
02111-1307 USA
|
||||
|
||||
If you do not wish to comply with the terms of the LGPL please
|
||||
contact the author as other terms are available for a fee.
|
||||
|
||||
Bob Pendleton
|
||||
Bob@Pendleton.com
|
||||
*/
|
||||
|
||||
#include "SDL.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
int FE_Init(void); // Initialize FE
|
||||
void FE_Quit(void); // shutdown FE
|
||||
|
||||
void FE_PumpEvents(void); // replacement for SDL_PumpEvents
|
||||
int FE_PollEvent(SDL_Event *event); // replacement for SDL_PollEvent
|
||||
int FE_WaitEvent(SDL_Event *event); // replacement for SDL_WaitEvent
|
||||
int FE_PushEvent(SDL_Event *event); // replacement for SDL_PushEvent
|
||||
|
||||
char *FE_GetError(void); // get the last error
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
57
venv/include/site/python3.7/pygame/font.h
Normal file
@ -0,0 +1,57 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#include <Python.h>
|
||||
#if defined(HAVE_SNPRINTF) /* also defined in SDL_ttf (SDL.h) */
|
||||
#undef HAVE_SNPRINTF /* remove GCC macro redefine warning */
|
||||
#endif
|
||||
#include <SDL_ttf.h>
|
||||
|
||||
|
||||
/* test font initialization */
|
||||
#define FONT_INIT_CHECK() \
|
||||
if(!(*(int*)PyFONT_C_API[2])) \
|
||||
return RAISE(pgExc_SDLError, "font system not initialized")
|
||||
|
||||
|
||||
|
||||
#define PYGAMEAPI_FONT_FIRSTSLOT 0
|
||||
#define PYGAMEAPI_FONT_NUMSLOTS 3
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
TTF_Font* font;
|
||||
PyObject* weakreflist;
|
||||
} PyFontObject;
|
||||
#define PyFont_AsFont(x) (((PyFontObject*)x)->font)
|
||||
|
||||
#ifndef PYGAMEAPI_FONT_INTERNAL
|
||||
#define PyFont_Check(x) ((x)->ob_type == (PyTypeObject*)PyFONT_C_API[0])
|
||||
#define PyFont_Type (*(PyTypeObject*)PyFONT_C_API[0])
|
||||
#define PyFont_New (*(PyObject*(*)(TTF_Font*))PyFONT_C_API[1])
|
||||
/*slot 2 taken by FONT_INIT_CHECK*/
|
||||
|
||||
#define import_pygame_font() \
|
||||
_IMPORT_PYGAME_MODULE(font, FONT, PyFONT_C_API)
|
||||
|
||||
static void* PyFONT_C_API[PYGAMEAPI_FONT_NUMSLOTS] = {NULL};
|
||||
#endif
|
||||
|
137
venv/include/site/python3.7/pygame/freetype.h
Normal file
@ -0,0 +1,137 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2009 Vicent Marti
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
*/
|
||||
#ifndef _PYGAME_FREETYPE_H_
|
||||
#define _PYGAME_FREETYPE_H_
|
||||
|
||||
#define PGFT_PYGAME1_COMPAT
|
||||
#define HAVE_PYGAME_SDL_VIDEO
|
||||
#define HAVE_PYGAME_SDL_RWOPS
|
||||
|
||||
#include "pygame.h"
|
||||
#include "pgcompat.h"
|
||||
|
||||
#if PY3
|
||||
# define IS_PYTHON_3
|
||||
#endif
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_CACHE_H
|
||||
#include FT_XFREE86_H
|
||||
#include FT_TRIGONOMETRY_H
|
||||
|
||||
/**********************************************************
|
||||
* Global module constants
|
||||
**********************************************************/
|
||||
|
||||
/* Render styles */
|
||||
#define FT_STYLE_NORMAL 0x00
|
||||
#define FT_STYLE_STRONG 0x01
|
||||
#define FT_STYLE_OBLIQUE 0x02
|
||||
#define FT_STYLE_UNDERLINE 0x04
|
||||
#define FT_STYLE_WIDE 0x08
|
||||
#define FT_STYLE_DEFAULT 0xFF
|
||||
|
||||
/* Bounding box modes */
|
||||
#define FT_BBOX_EXACT FT_GLYPH_BBOX_SUBPIXELS
|
||||
#define FT_BBOX_EXACT_GRIDFIT FT_GLYPH_BBOX_GRIDFIT
|
||||
#define FT_BBOX_PIXEL FT_GLYPH_BBOX_TRUNCATE
|
||||
#define FT_BBOX_PIXEL_GRIDFIT FT_GLYPH_BBOX_PIXELS
|
||||
|
||||
/* Rendering flags */
|
||||
#define FT_RFLAG_NONE (0)
|
||||
#define FT_RFLAG_ANTIALIAS (1 << 0)
|
||||
#define FT_RFLAG_AUTOHINT (1 << 1)
|
||||
#define FT_RFLAG_VERTICAL (1 << 2)
|
||||
#define FT_RFLAG_HINTED (1 << 3)
|
||||
#define FT_RFLAG_KERNING (1 << 4)
|
||||
#define FT_RFLAG_TRANSFORM (1 << 5)
|
||||
#define FT_RFLAG_PAD (1 << 6)
|
||||
#define FT_RFLAG_ORIGIN (1 << 7)
|
||||
#define FT_RFLAG_UCS4 (1 << 8)
|
||||
#define FT_RFLAG_USE_BITMAP_STRIKES (1 << 9)
|
||||
#define FT_RFLAG_DEFAULTS (FT_RFLAG_HINTED | \
|
||||
FT_RFLAG_USE_BITMAP_STRIKES | \
|
||||
FT_RFLAG_ANTIALIAS)
|
||||
|
||||
|
||||
#define FT_RENDER_NEWBYTEARRAY 0x0
|
||||
#define FT_RENDER_NEWSURFACE 0x1
|
||||
#define FT_RENDER_EXISTINGSURFACE 0x2
|
||||
|
||||
/**********************************************************
|
||||
* Global module types
|
||||
**********************************************************/
|
||||
|
||||
typedef struct _scale_s {
|
||||
FT_UInt x, y;
|
||||
} Scale_t;
|
||||
typedef FT_Angle Angle_t;
|
||||
|
||||
struct fontinternals_;
|
||||
struct freetypeinstance_;
|
||||
|
||||
typedef struct {
|
||||
FT_Long font_index;
|
||||
FT_Open_Args open_args;
|
||||
} pgFontId;
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
pgFontId id;
|
||||
PyObject *path;
|
||||
int is_scalable;
|
||||
|
||||
Scale_t face_size;
|
||||
FT_Int16 style;
|
||||
FT_Int16 render_flags;
|
||||
double strength;
|
||||
double underline_adjustment;
|
||||
FT_UInt resolution;
|
||||
Angle_t rotation;
|
||||
FT_Matrix transform;
|
||||
FT_Byte fgcolor[4];
|
||||
|
||||
struct freetypeinstance_ *freetype; /* Personal reference */
|
||||
struct fontinternals_ *_internals;
|
||||
} pgFontObject;
|
||||
|
||||
#define pgFont_IS_ALIVE(o) \
|
||||
(((pgFontObject *)(o))->_internals != 0)
|
||||
|
||||
/**********************************************************
|
||||
* Module declaration
|
||||
**********************************************************/
|
||||
#define PYGAMEAPI_FREETYPE_FIRSTSLOT 0
|
||||
#define PYGAMEAPI_FREETYPE_NUMSLOTS 2
|
||||
|
||||
#ifndef PYGAME_FREETYPE_INTERNAL
|
||||
|
||||
#define pgFont_Check(x) ((x)->ob_type == (PyTypeObject*)PgFREETYPE_C_API[0])
|
||||
#define pgFont_Type (*(PyTypeObject*)PgFREETYPE_C_API[1])
|
||||
#define pgFont_New (*(PyObject*(*)(const char*, long))PgFREETYPE_C_API[1])
|
||||
|
||||
#define import_pygame_freetype() \
|
||||
_IMPORT_PYGAME_MODULE(freetype, FREETYPE, PgFREETYPE_C_API)
|
||||
|
||||
static void *PgFREETYPE_C_API[PYGAMEAPI_FREETYPE_NUMSLOTS] = {0};
|
||||
#endif /* PYGAME_FREETYPE_INTERNAL */
|
||||
|
||||
#endif /* _PYGAME_FREETYPE_H_ */
|
25
venv/include/site/python3.7/pygame/mask.h
Normal file
@ -0,0 +1,25 @@
|
||||
#include <Python.h>
|
||||
#include "bitmask.h"
|
||||
|
||||
#define PYGAMEAPI_MASK_FIRSTSLOT 0
|
||||
#define PYGAMEAPI_MASK_NUMSLOTS 1
|
||||
#define PYGAMEAPI_LOCAL_ENTRY "_PYGAME_C_API"
|
||||
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
bitmask_t *mask;
|
||||
} pgMaskObject;
|
||||
|
||||
#define pgMask_AsBitmap(x) (((pgMaskObject*)x)->mask)
|
||||
|
||||
#ifndef PYGAMEAPI_MASK_INTERNAL
|
||||
|
||||
#define pgMask_Type (*(PyTypeObject*)PyMASK_C_API[0])
|
||||
#define pgMask_Check(x) ((x)->ob_type == &pgMask_Type)
|
||||
|
||||
#define import_pygame_mask() \
|
||||
_IMPORT_PYGAME_MODULE(mask, MASK, PyMASK_C_API)
|
||||
|
||||
static void* PyMASK_C_API[PYGAMEAPI_MASK_NUMSLOTS] = {NULL};
|
||||
#endif /* #ifndef PYGAMEAPI_MASK_INTERNAL */
|
||||
|
65
venv/include/site/python3.7/pygame/mixer.h
Normal file
@ -0,0 +1,65 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#include <Python.h>
|
||||
#include <SDL_mixer.h>
|
||||
#include <structmember.h>
|
||||
|
||||
|
||||
/* test mixer initializations */
|
||||
#define MIXER_INIT_CHECK() \
|
||||
if(!SDL_WasInit(SDL_INIT_AUDIO)) \
|
||||
return RAISE(pgExc_SDLError, "mixer not initialized")
|
||||
|
||||
|
||||
#define PYGAMEAPI_MIXER_FIRSTSLOT 0
|
||||
#define PYGAMEAPI_MIXER_NUMSLOTS 7
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
Mix_Chunk *chunk;
|
||||
Uint8 *mem;
|
||||
PyObject *weakreflist;
|
||||
} pgSoundObject;
|
||||
typedef struct {
|
||||
PyObject_HEAD
|
||||
int chan;
|
||||
} pgChannelObject;
|
||||
#define pgSound_AsChunk(x) (((pgSoundObject*)x)->chunk)
|
||||
#define pgChannel_AsInt(x) (((pgChannelObject*)x)->chan)
|
||||
|
||||
#ifndef PYGAMEAPI_MIXER_INTERNAL
|
||||
#define pgSound_Check(x) ((x)->ob_type == (PyTypeObject*)pgMIXER_C_API[0])
|
||||
#define pgSound_Type (*(PyTypeObject*)pgMIXER_C_API[0])
|
||||
#define pgSound_New (*(PyObject*(*)(Mix_Chunk*))pgMIXER_C_API[1])
|
||||
#define pgSound_Play (*(PyObject*(*)(PyObject*, PyObject*))pgMIXER_C_API[2])
|
||||
#define pgChannel_Check(x) ((x)->ob_type == (PyTypeObject*)pgMIXER_C_API[3])
|
||||
#define pgChannel_Type (*(PyTypeObject*)pgMIXER_C_API[3])
|
||||
#define pgChannel_New (*(PyObject*(*)(int))pgMIXER_C_API[4])
|
||||
#define pgMixer_AutoInit (*(PyObject*(*)(PyObject*, PyObject*))pgMIXER_C_API[5])
|
||||
#define pgMixer_AutoQuit (*(void(*)(void))pgMIXER_C_API[6])
|
||||
|
||||
#define import_pygame_mixer() \
|
||||
_IMPORT_PYGAME_MODULE(mixer, MIXER, pgMIXER_C_API)
|
||||
|
||||
static void* pgMIXER_C_API[PYGAMEAPI_MIXER_NUMSLOTS] = {NULL};
|
||||
#endif
|
||||
|
123
venv/include/site/python3.7/pygame/palette.h
Normal file
@ -0,0 +1,123 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#ifndef PALETTE_H
|
||||
#define PALETTE_H
|
||||
|
||||
#include <SDL.h>
|
||||
|
||||
/* SDL 2 does not assign a default palette color scheme to a new 8 bit
|
||||
* surface. Instead, the palette is set all white. This defines the SDL 1.2
|
||||
* default palette.
|
||||
*/
|
||||
static const SDL_Color default_palette_colors[] = {
|
||||
{0, 0, 0, 255}, {0, 0, 85, 255}, {0, 0, 170, 255},
|
||||
{0, 0, 255, 255}, {0, 36, 0, 255}, {0, 36, 85, 255},
|
||||
{0, 36, 170, 255}, {0, 36, 255, 255}, {0, 73, 0, 255},
|
||||
{0, 73, 85, 255}, {0, 73, 170, 255}, {0, 73, 255, 255},
|
||||
{0, 109, 0, 255}, {0, 109, 85, 255}, {0, 109, 170, 255},
|
||||
{0, 109, 255, 255}, {0, 146, 0, 255}, {0, 146, 85, 255},
|
||||
{0, 146, 170, 255}, {0, 146, 255, 255}, {0, 182, 0, 255},
|
||||
{0, 182, 85, 255}, {0, 182, 170, 255}, {0, 182, 255, 255},
|
||||
{0, 219, 0, 255}, {0, 219, 85, 255}, {0, 219, 170, 255},
|
||||
{0, 219, 255, 255}, {0, 255, 0, 255}, {0, 255, 85, 255},
|
||||
{0, 255, 170, 255}, {0, 255, 255, 255}, {85, 0, 0, 255},
|
||||
{85, 0, 85, 255}, {85, 0, 170, 255}, {85, 0, 255, 255},
|
||||
{85, 36, 0, 255}, {85, 36, 85, 255}, {85, 36, 170, 255},
|
||||
{85, 36, 255, 255}, {85, 73, 0, 255}, {85, 73, 85, 255},
|
||||
{85, 73, 170, 255}, {85, 73, 255, 255}, {85, 109, 0, 255},
|
||||
{85, 109, 85, 255}, {85, 109, 170, 255}, {85, 109, 255, 255},
|
||||
{85, 146, 0, 255}, {85, 146, 85, 255}, {85, 146, 170, 255},
|
||||
{85, 146, 255, 255}, {85, 182, 0, 255}, {85, 182, 85, 255},
|
||||
{85, 182, 170, 255}, {85, 182, 255, 255}, {85, 219, 0, 255},
|
||||
{85, 219, 85, 255}, {85, 219, 170, 255}, {85, 219, 255, 255},
|
||||
{85, 255, 0, 255}, {85, 255, 85, 255}, {85, 255, 170, 255},
|
||||
{85, 255, 255, 255}, {170, 0, 0, 255}, {170, 0, 85, 255},
|
||||
{170, 0, 170, 255}, {170, 0, 255, 255}, {170, 36, 0, 255},
|
||||
{170, 36, 85, 255}, {170, 36, 170, 255}, {170, 36, 255, 255},
|
||||
{170, 73, 0, 255}, {170, 73, 85, 255}, {170, 73, 170, 255},
|
||||
{170, 73, 255, 255}, {170, 109, 0, 255}, {170, 109, 85, 255},
|
||||
{170, 109, 170, 255}, {170, 109, 255, 255}, {170, 146, 0, 255},
|
||||
{170, 146, 85, 255}, {170, 146, 170, 255}, {170, 146, 255, 255},
|
||||
{170, 182, 0, 255}, {170, 182, 85, 255}, {170, 182, 170, 255},
|
||||
{170, 182, 255, 255}, {170, 219, 0, 255}, {170, 219, 85, 255},
|
||||
{170, 219, 170, 255}, {170, 219, 255, 255}, {170, 255, 0, 255},
|
||||
{170, 255, 85, 255}, {170, 255, 170, 255}, {170, 255, 255, 255},
|
||||
{255, 0, 0, 255}, {255, 0, 85, 255}, {255, 0, 170, 255},
|
||||
{255, 0, 255, 255}, {255, 36, 0, 255}, {255, 36, 85, 255},
|
||||
{255, 36, 170, 255}, {255, 36, 255, 255}, {255, 73, 0, 255},
|
||||
{255, 73, 85, 255}, {255, 73, 170, 255}, {255, 73, 255, 255},
|
||||
{255, 109, 0, 255}, {255, 109, 85, 255}, {255, 109, 170, 255},
|
||||
{255, 109, 255, 255}, {255, 146, 0, 255}, {255, 146, 85, 255},
|
||||
{255, 146, 170, 255}, {255, 146, 255, 255}, {255, 182, 0, 255},
|
||||
{255, 182, 85, 255}, {255, 182, 170, 255}, {255, 182, 255, 255},
|
||||
{255, 219, 0, 255}, {255, 219, 85, 255}, {255, 219, 170, 255},
|
||||
{255, 219, 255, 255}, {255, 255, 0, 255}, {255, 255, 85, 255},
|
||||
{255, 255, 170, 255}, {255, 255, 255, 255}, {0, 0, 0, 255},
|
||||
{0, 0, 85, 255}, {0, 0, 170, 255}, {0, 0, 255, 255},
|
||||
{0, 36, 0, 255}, {0, 36, 85, 255}, {0, 36, 170, 255},
|
||||
{0, 36, 255, 255}, {0, 73, 0, 255}, {0, 73, 85, 255},
|
||||
{0, 73, 170, 255}, {0, 73, 255, 255}, {0, 109, 0, 255},
|
||||
{0, 109, 85, 255}, {0, 109, 170, 255}, {0, 109, 255, 255},
|
||||
{0, 146, 0, 255}, {0, 146, 85, 255}, {0, 146, 170, 255},
|
||||
{0, 146, 255, 255}, {0, 182, 0, 255}, {0, 182, 85, 255},
|
||||
{0, 182, 170, 255}, {0, 182, 255, 255}, {0, 219, 0, 255},
|
||||
{0, 219, 85, 255}, {0, 219, 170, 255}, {0, 219, 255, 255},
|
||||
{0, 255, 0, 255}, {0, 255, 85, 255}, {0, 255, 170, 255},
|
||||
{0, 255, 255, 255}, {85, 0, 0, 255}, {85, 0, 85, 255},
|
||||
{85, 0, 170, 255}, {85, 0, 255, 255}, {85, 36, 0, 255},
|
||||
{85, 36, 85, 255}, {85, 36, 170, 255}, {85, 36, 255, 255},
|
||||
{85, 73, 0, 255}, {85, 73, 85, 255}, {85, 73, 170, 255},
|
||||
{85, 73, 255, 255}, {85, 109, 0, 255}, {85, 109, 85, 255},
|
||||
{85, 109, 170, 255}, {85, 109, 255, 255}, {85, 146, 0, 255},
|
||||
{85, 146, 85, 255}, {85, 146, 170, 255}, {85, 146, 255, 255},
|
||||
{85, 182, 0, 255}, {85, 182, 85, 255}, {85, 182, 170, 255},
|
||||
{85, 182, 255, 255}, {85, 219, 0, 255}, {85, 219, 85, 255},
|
||||
{85, 219, 170, 255}, {85, 219, 255, 255}, {85, 255, 0, 255},
|
||||
{85, 255, 85, 255}, {85, 255, 170, 255}, {85, 255, 255, 255},
|
||||
{170, 0, 0, 255}, {170, 0, 85, 255}, {170, 0, 170, 255},
|
||||
{170, 0, 255, 255}, {170, 36, 0, 255}, {170, 36, 85, 255},
|
||||
{170, 36, 170, 255}, {170, 36, 255, 255}, {170, 73, 0, 255},
|
||||
{170, 73, 85, 255}, {170, 73, 170, 255}, {170, 73, 255, 255},
|
||||
{170, 109, 0, 255}, {170, 109, 85, 255}, {170, 109, 170, 255},
|
||||
{170, 109, 255, 255}, {170, 146, 0, 255}, {170, 146, 85, 255},
|
||||
{170, 146, 170, 255}, {170, 146, 255, 255}, {170, 182, 0, 255},
|
||||
{170, 182, 85, 255}, {170, 182, 170, 255}, {170, 182, 255, 255},
|
||||
{170, 219, 0, 255}, {170, 219, 85, 255}, {170, 219, 170, 255},
|
||||
{170, 219, 255, 255}, {170, 255, 0, 255}, {170, 255, 85, 255},
|
||||
{170, 255, 170, 255}, {170, 255, 255, 255}, {255, 0, 0, 255},
|
||||
{255, 0, 85, 255}, {255, 0, 170, 255}, {255, 0, 255, 255},
|
||||
{255, 36, 0, 255}, {255, 36, 85, 255}, {255, 36, 170, 255},
|
||||
{255, 36, 255, 255}, {255, 73, 0, 255}, {255, 73, 85, 255},
|
||||
{255, 73, 170, 255}, {255, 73, 255, 255}, {255, 109, 0, 255},
|
||||
{255, 109, 85, 255}, {255, 109, 170, 255}, {255, 109, 255, 255},
|
||||
{255, 146, 0, 255}, {255, 146, 85, 255}, {255, 146, 170, 255},
|
||||
{255, 146, 255, 255}, {255, 182, 0, 255}, {255, 182, 85, 255},
|
||||
{255, 182, 170, 255}, {255, 182, 255, 255}, {255, 219, 0, 255},
|
||||
{255, 219, 85, 255}, {255, 219, 170, 255}, {255, 219, 255, 255},
|
||||
{255, 255, 0, 255}, {255, 255, 85, 255}, {255, 255, 170, 255},
|
||||
{255, 255, 255, 255}};
|
||||
|
||||
static const int default_palette_size =
|
||||
(int)(sizeof(default_palette_colors) / sizeof(SDL_Color));
|
||||
|
||||
#endif
|
26
venv/include/site/python3.7/pygame/pgarrinter.h
Normal file
@ -0,0 +1,26 @@
|
||||
/* array structure interface version 3 declarations */
|
||||
|
||||
#if !defined(PG_ARRAYINTER_HEADER)
|
||||
#define PG_ARRAYINTER_HEADER
|
||||
|
||||
static const int PAI_CONTIGUOUS = 0x01;
|
||||
static const int PAI_FORTRAN = 0x02;
|
||||
static const int PAI_ALIGNED = 0x100;
|
||||
static const int PAI_NOTSWAPPED = 0x200;
|
||||
static const int PAI_WRITEABLE = 0x400;
|
||||
static const int PAI_ARR_HAS_DESCR = 0x800;
|
||||
|
||||
typedef struct {
|
||||
int two; /* contains the integer 2 -- simple sanity check */
|
||||
int nd; /* number of dimensions */
|
||||
char typekind; /* kind in array -- character code of typestr */
|
||||
int itemsize; /* size of each element */
|
||||
int flags; /* flags indicating how the data should be */
|
||||
/* interpreted */
|
||||
Py_intptr_t *shape; /* A length-nd array of shape information */
|
||||
Py_intptr_t *strides; /* A length-nd array of stride information */
|
||||
void *data; /* A pointer to the first element of the array */
|
||||
PyObject *descr; /* NULL or a data-description */
|
||||
} PyArrayInterface;
|
||||
|
||||
#endif
|
52
venv/include/site/python3.7/pygame/pgbufferproxy.h
Normal file
@ -0,0 +1,52 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
Copyright (C) 2007 Rene Dudfield, Richard Goedeken
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
/* Bufferproxy module C api.
|
||||
Depends on pygame.h being included first.
|
||||
*/
|
||||
#if !defined(PG_BUFPROXY_HEADER)
|
||||
|
||||
#define PYGAMEAPI_BUFPROXY_NUMSLOTS 4
|
||||
#define PYGAMEAPI_BUFPROXY_FIRSTSLOT 0
|
||||
|
||||
#if !(defined(PYGAMEAPI_BUFPROXY_INTERNAL) || defined(NO_PYGAME_C_API))
|
||||
static void *PgBUFPROXY_C_API[PYGAMEAPI_BUFPROXY_NUMSLOTS];
|
||||
|
||||
typedef PyObject *(*_pgbufproxy_new_t)(PyObject *, getbufferproc);
|
||||
typedef PyObject *(*_pgbufproxy_get_obj_t)(PyObject *);
|
||||
typedef int (*_pgbufproxy_trip_t)(PyObject *);
|
||||
|
||||
#define pgBufproxy_Type (*(PyTypeObject*)PgBUFPROXY_C_API[0])
|
||||
#define pgBufproxy_New (*(_pgbufproxy_new_t)PgBUFPROXY_C_API[1])
|
||||
#define pgBufproxy_GetParent \
|
||||
(*(_pgbufproxy_get_obj_t)PgBUFPROXY_C_API[2])
|
||||
#define pgBufproxy_Trip (*(_pgbufproxy_trip_t)PgBUFPROXY_C_API[3])
|
||||
#define pgBufproxy_Check(x) ((x)->ob_type == (pgBufproxy_Type))
|
||||
#define import_pygame_bufferproxy() \
|
||||
_IMPORT_PYGAME_MODULE(bufferproxy, BUFPROXY, PgBUFPROXY_C_API)
|
||||
|
||||
#endif /* #if !(defined(PYGAMEAPI_BUFPROXY_INTERNAL) || ... */
|
||||
|
||||
#define PG_BUFPROXY_HEADER
|
||||
|
||||
#endif /* #if !defined(PG_BUFPROXY_HEADER) */
|
195
venv/include/site/python3.7/pygame/pgcompat.h
Normal file
@ -0,0 +1,195 @@
|
||||
/* Python 2.x/3.x compitibility tools
|
||||
*/
|
||||
|
||||
#if !defined(PGCOMPAT_H)
|
||||
#define PGCOMPAT_H
|
||||
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
|
||||
#define PY3 1
|
||||
|
||||
/* Define some aliases for the removed PyInt_* functions */
|
||||
#define PyInt_Check(op) PyLong_Check(op)
|
||||
#define PyInt_FromString PyLong_FromString
|
||||
#define PyInt_FromUnicode PyLong_FromUnicode
|
||||
#define PyInt_FromLong PyLong_FromLong
|
||||
#define PyInt_FromSize_t PyLong_FromSize_t
|
||||
#define PyInt_FromSsize_t PyLong_FromSsize_t
|
||||
#define PyInt_AsLong PyLong_AsLong
|
||||
#define PyInt_AsSsize_t PyLong_AsSsize_t
|
||||
#define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
|
||||
#define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
|
||||
#define PyInt_AS_LONG PyLong_AS_LONG
|
||||
#define PyNumber_Int PyNumber_Long
|
||||
|
||||
/* Weakrefs flags changed in 3.x */
|
||||
#define Py_TPFLAGS_HAVE_WEAKREFS 0
|
||||
|
||||
/* Module init function returns new module instance. */
|
||||
#define MODINIT_RETURN(x) return x
|
||||
#define MODINIT_DEFINE(mod_name) PyMODINIT_FUNC PyInit_##mod_name (void)
|
||||
#define DECREF_MOD(mod) Py_DECREF (mod)
|
||||
|
||||
/* Type header differs. */
|
||||
#define TYPE_HEAD(x,y) PyVarObject_HEAD_INIT(x,y)
|
||||
|
||||
/* Text interface. Use unicode strings. */
|
||||
#define Text_Type PyUnicode_Type
|
||||
#define Text_Check PyUnicode_Check
|
||||
|
||||
#ifndef PYPY_VERSION
|
||||
#define Text_FromLocale(s) PyUnicode_DecodeLocale((s), "strict")
|
||||
#else /* PYPY_VERSION */
|
||||
/* workaround: missing function for pypy */
|
||||
#define Text_FromLocale PyUnicode_FromString
|
||||
#endif /* PYPY_VERSION */
|
||||
|
||||
#define Text_FromUTF8 PyUnicode_FromString
|
||||
#define Text_FromUTF8AndSize PyUnicode_FromStringAndSize
|
||||
#define Text_FromFormat PyUnicode_FromFormat
|
||||
#define Text_GetSize PyUnicode_GetSize
|
||||
#define Text_GET_SIZE PyUnicode_GET_SIZE
|
||||
|
||||
/* Binary interface. Use bytes. */
|
||||
#define Bytes_Type PyBytes_Type
|
||||
#define Bytes_Check PyBytes_Check
|
||||
#define Bytes_Size PyBytes_Size
|
||||
#define Bytes_AsString PyBytes_AsString
|
||||
#define Bytes_AsStringAndSize PyBytes_AsStringAndSize
|
||||
#define Bytes_FromStringAndSize PyBytes_FromStringAndSize
|
||||
#define Bytes_FromFormat PyBytes_FromFormat
|
||||
#define Bytes_AS_STRING PyBytes_AS_STRING
|
||||
#define Bytes_GET_SIZE PyBytes_GET_SIZE
|
||||
#define Bytes_AsDecodeObject PyBytes_AsDecodedObject
|
||||
|
||||
#define Object_Unicode PyObject_Str
|
||||
|
||||
#define IsTextObj(x) (PyUnicode_Check(x) || PyBytes_Check(x))
|
||||
|
||||
/* Renamed builtins */
|
||||
#define BUILTINS_MODULE "builtins"
|
||||
#define BUILTINS_UNICODE "str"
|
||||
#define BUILTINS_UNICHR "chr"
|
||||
|
||||
/* Defaults for unicode file path encoding */
|
||||
#define UNICODE_DEF_FS_CODEC Py_FileSystemDefaultEncoding
|
||||
#if defined(MS_WIN32)
|
||||
#define UNICODE_DEF_FS_ERROR "replace"
|
||||
#else
|
||||
#define UNICODE_DEF_FS_ERROR "surrogateescape"
|
||||
#endif
|
||||
|
||||
#else /* #if PY_MAJOR_VERSION >= 3 */
|
||||
|
||||
#define PY3 0
|
||||
|
||||
/* Module init function returns nothing. */
|
||||
#define MODINIT_RETURN(x) return
|
||||
#define MODINIT_DEFINE(mod_name) PyMODINIT_FUNC init##mod_name (void)
|
||||
#define DECREF_MOD(mod)
|
||||
|
||||
/* Type header differs. */
|
||||
#define TYPE_HEAD(x,y) \
|
||||
PyObject_HEAD_INIT(x) \
|
||||
0,
|
||||
|
||||
/* Text interface. Use ascii strings. */
|
||||
#define Text_Type PyString_Type
|
||||
#define Text_Check PyString_Check
|
||||
#define Text_FromLocale PyString_FromString
|
||||
#define Text_FromUTF8 PyString_FromString
|
||||
#define Text_FromUTF8AndSize PyString_FromStringAndSize
|
||||
#define Text_FromFormat PyString_FromFormat
|
||||
#define Text_GetSize PyString_GetSize
|
||||
#define Text_GET_SIZE PyString_GET_SIZE
|
||||
|
||||
/* Binary interface. Use ascii strings. */
|
||||
#define Bytes_Type PyString_Type
|
||||
#define Bytes_Check PyString_Check
|
||||
#define Bytes_Size PyString_Size
|
||||
#define Bytes_AsString PyString_AsString
|
||||
#define Bytes_AsStringAndSize PyString_AsStringAndSize
|
||||
#define Bytes_FromStringAndSize PyString_FromStringAndSize
|
||||
#define Bytes_FromFormat PyString_FromFormat
|
||||
#define Bytes_AS_STRING PyString_AS_STRING
|
||||
#define Bytes_GET_SIZE PyString_GET_SIZE
|
||||
#define Bytes_AsDecodedObject PyString_AsDecodedObject
|
||||
|
||||
#define Object_Unicode PyObject_Unicode
|
||||
|
||||
/* Renamed builtins */
|
||||
#define BUILTINS_MODULE "__builtin__"
|
||||
#define BUILTINS_UNICODE "unicode"
|
||||
#define BUILTINS_UNICHR "unichr"
|
||||
|
||||
/* Defaults for unicode file path encoding */
|
||||
#define UNICODE_DEF_FS_CODEC Py_FileSystemDefaultEncoding
|
||||
#define UNICODE_DEF_FS_ERROR "strict"
|
||||
|
||||
#endif /* #if PY_MAJOR_VERSION >= 3 */
|
||||
|
||||
#define PY2 (!PY3)
|
||||
|
||||
#define MODINIT_ERROR MODINIT_RETURN (NULL)
|
||||
|
||||
/* Module state. These macros are used to define per-module macros.
|
||||
* v - global state variable (Python 2.x)
|
||||
* s - global state structure (Python 3.x)
|
||||
*/
|
||||
#define PY2_GETSTATE(v) (&(v))
|
||||
#define PY3_GETSTATE(s, m) ((struct s *) PyModule_GetState (m))
|
||||
|
||||
/* Pep 3123: Making PyObject_HEAD conform to standard C */
|
||||
#if !defined(Py_TYPE)
|
||||
#define Py_TYPE(o) (((PyObject *)(o))->ob_type)
|
||||
#define Py_REFCNT(o) (((PyObject *)(o))->ob_refcnt)
|
||||
#define Py_SIZE(o) (((PyVarObject *)(o))->ob_size)
|
||||
#endif
|
||||
|
||||
/* Encode a unicode file path */
|
||||
#define Unicode_AsEncodedPath(u) \
|
||||
PyUnicode_AsEncodedString ((u), UNICODE_DEF_FS_CODEC, UNICODE_DEF_FS_ERROR)
|
||||
|
||||
#define RELATIVE_MODULE(m) ("." m)
|
||||
|
||||
#define HAVE_OLD_BUFPROTO PY2
|
||||
|
||||
#if !defined(PG_ENABLE_OLDBUF) /* allow for command line override */
|
||||
#if HAVE_OLD_BUFPROTO
|
||||
#define PG_ENABLE_OLDBUF 1
|
||||
#else
|
||||
#define PG_ENABLE_OLDBUF 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
|
||||
#define Py_TPFLAGS_HAVE_NEWBUFFER 0
|
||||
#endif
|
||||
|
||||
#ifndef Py_TPFLAGS_HAVE_CLASS
|
||||
#define Py_TPFLAGS_HAVE_CLASS 0
|
||||
#endif
|
||||
|
||||
#ifndef Py_TPFLAGS_CHECKTYPES
|
||||
#define Py_TPFLAGS_CHECKTYPES 0
|
||||
#endif
|
||||
|
||||
#if PY_VERSION_HEX >= 0x03020000
|
||||
#define Slice_GET_INDICES_EX(slice, length, start, stop, step, slicelength) \
|
||||
PySlice_GetIndicesEx(slice, length, start, stop, step, slicelength)
|
||||
#else
|
||||
#define Slice_GET_INDICES_EX(slice, length, start, stop, step, slicelength) \
|
||||
PySlice_GetIndicesEx((PySliceObject *)(slice), length, \
|
||||
start, stop, step, slicelength)
|
||||
#endif
|
||||
|
||||
/* Support new buffer protocol? */
|
||||
#if !defined(PG_ENABLE_NEWBUF) /* allow for command line override */
|
||||
#if !defined(PYPY_VERSION)
|
||||
#define PG_ENABLE_NEWBUF 1
|
||||
#else
|
||||
#define PG_ENABLE_NEWBUF 0
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#endif /* #if !defined(PGCOMPAT_H) */
|
16
venv/include/site/python3.7/pygame/pgopengl.h
Normal file
@ -0,0 +1,16 @@
|
||||
#if !defined(PGOPENGL_H)
|
||||
#define PGOPENGL_H
|
||||
|
||||
/** This header includes definitions of Opengl functions as pointer types for
|
||||
** use with the SDL function SDL_GL_GetProcAddress.
|
||||
**/
|
||||
|
||||
#if defined(_WIN32)
|
||||
#define GL_APIENTRY __stdcall
|
||||
#else
|
||||
#define GL_APIENTRY
|
||||
#endif
|
||||
|
||||
typedef void (GL_APIENTRY *GL_glReadPixels_Func)(int, int, int, int, unsigned int, unsigned int, void*);
|
||||
|
||||
#endif
|
34
venv/include/site/python3.7/pygame/pygame.h
Normal file
@ -0,0 +1,34 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
/* To allow the Pygame C api to be globally shared by all code within an
|
||||
* extension module built from multiple C files, only include the pygame.h
|
||||
* header within the top level C file, the one which calls the
|
||||
* 'import_pygame_*' macros. All other C source files of the module should
|
||||
* include _pygame.h instead.
|
||||
*/
|
||||
#ifndef PYGAME_H
|
||||
#define PYGAME_H
|
||||
|
||||
#include "_pygame.h"
|
||||
|
||||
#endif
|
143
venv/include/site/python3.7/pygame/scrap.h
Normal file
@ -0,0 +1,143 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2006, 2007 Rene Dudfield, Marcus von Appen
|
||||
|
||||
Originally put in the public domain by Sam Lantinga.
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
/* This is unconditionally defined in Python.h */
|
||||
#if defined(_POSIX_C_SOURCE)
|
||||
#undef _POSIX_C_SOURCE
|
||||
#endif
|
||||
|
||||
#include <Python.h>
|
||||
|
||||
/* Handle clipboard text and data in arbitrary formats */
|
||||
|
||||
/**
|
||||
* Predefined supported pygame scrap types.
|
||||
*/
|
||||
#define PYGAME_SCRAP_TEXT "text/plain"
|
||||
#define PYGAME_SCRAP_BMP "image/bmp"
|
||||
#define PYGAME_SCRAP_PPM "image/ppm"
|
||||
#define PYGAME_SCRAP_PBM "image/pbm"
|
||||
|
||||
/**
|
||||
* The supported scrap clipboard types.
|
||||
*
|
||||
* This is only relevant in a X11 environment, which supports mouse
|
||||
* selections as well. For Win32 and MacOS environments the default
|
||||
* clipboard is used, no matter what value is passed.
|
||||
*/
|
||||
typedef enum
|
||||
{
|
||||
SCRAP_CLIPBOARD,
|
||||
SCRAP_SELECTION /* only supported in X11 environments. */
|
||||
} ScrapClipType;
|
||||
|
||||
/**
|
||||
* Macro for initialization checks.
|
||||
*/
|
||||
#define PYGAME_SCRAP_INIT_CHECK() \
|
||||
if(!pygame_scrap_initialized()) \
|
||||
return (PyErr_SetString (pgExc_SDLError, \
|
||||
"scrap system not initialized."), NULL)
|
||||
|
||||
/**
|
||||
* \brief Checks, whether the pygame scrap module was initialized.
|
||||
*
|
||||
* \return 1 if the modules was initialized, 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
pygame_scrap_initialized (void);
|
||||
|
||||
/**
|
||||
* \brief Initializes the pygame scrap module internals. Call this before any
|
||||
* other method.
|
||||
*
|
||||
* \return 1 on successful initialization, 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
pygame_scrap_init (void);
|
||||
|
||||
/**
|
||||
* \brief Checks, whether the pygame window lost the clipboard focus or not.
|
||||
*
|
||||
* \return 1 if the window lost the focus, 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
pygame_scrap_lost (void);
|
||||
|
||||
/**
|
||||
* \brief Places content of a specific type into the clipboard.
|
||||
*
|
||||
* \note For X11 the following notes are important: The following types
|
||||
* are reserved for internal usage and thus will throw an error on
|
||||
* setting them: "TIMESTAMP", "TARGETS", "SDL_SELECTION".
|
||||
* Setting PYGAME_SCRAP_TEXT ("text/plain") will also automatically
|
||||
* set the X11 types "STRING" (XA_STRING), "TEXT" and "UTF8_STRING".
|
||||
*
|
||||
* For Win32 the following notes are important: Setting
|
||||
* PYGAME_SCRAP_TEXT ("text/plain") will also automatically set
|
||||
* the Win32 type "TEXT" (CF_TEXT).
|
||||
*
|
||||
* For QNX the following notes are important: Setting
|
||||
* PYGAME_SCRAP_TEXT ("text/plain") will also automatically set
|
||||
* the QNX type "TEXT" (Ph_CL_TEXT).
|
||||
*
|
||||
* \param type The type of the content.
|
||||
* \param srclen The length of the content.
|
||||
* \param src The NULL terminated content.
|
||||
* \return 1, if the content could be successfully pasted into the clipboard,
|
||||
* 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
pygame_scrap_put (char *type, int srclen, char *src);
|
||||
|
||||
/**
|
||||
* \brief Gets the current content from the clipboard.
|
||||
*
|
||||
* \note The received content does not need to be the content previously
|
||||
* placed in the clipboard using pygame_put_scrap(). See the
|
||||
* pygame_put_scrap() notes for more details.
|
||||
*
|
||||
* \param type The type of the content to receive.
|
||||
* \param count The size of the returned content.
|
||||
* \return The content or NULL in case of an error or if no content of the
|
||||
* specified type was available.
|
||||
*/
|
||||
extern char*
|
||||
pygame_scrap_get (char *type, unsigned long *count);
|
||||
|
||||
/**
|
||||
* \brief Gets the currently available content types from the clipboard.
|
||||
*
|
||||
* \return The different available content types or NULL in case of an
|
||||
* error or if no content type is available.
|
||||
*/
|
||||
extern char**
|
||||
pygame_scrap_get_types (void);
|
||||
|
||||
/**
|
||||
* \brief Checks whether content for the specified scrap type is currently
|
||||
* available in the clipboard.
|
||||
*
|
||||
* \param type The type to check for.
|
||||
* \return 1, if there is content and 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
pygame_scrap_contains (char *type);
|
383
venv/include/site/python3.7/pygame/surface.h
Normal file
@ -0,0 +1,383 @@
|
||||
/*
|
||||
pygame - Python Game Library
|
||||
Copyright (C) 2000-2001 Pete Shinners
|
||||
Copyright (C) 2007 Marcus von Appen
|
||||
|
||||
This library is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either
|
||||
version 2 of the License, or (at your option) any later version.
|
||||
|
||||
This library 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
|
||||
Library General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU Library General Public
|
||||
License along with this library; if not, write to the Free
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
Pete Shinners
|
||||
pete@shinners.org
|
||||
*/
|
||||
|
||||
#ifndef SURFACE_H
|
||||
#define SURFACE_H
|
||||
|
||||
/* This is defined in SDL.h */
|
||||
#if defined(_POSIX_C_SOURCE)
|
||||
#undef _POSIX_C_SOURCE
|
||||
#endif
|
||||
|
||||
#include <SDL.h>
|
||||
#include "pygame.h"
|
||||
|
||||
/* Blend modes */
|
||||
#define PYGAME_BLEND_ADD 0x1
|
||||
#define PYGAME_BLEND_SUB 0x2
|
||||
#define PYGAME_BLEND_MULT 0x3
|
||||
#define PYGAME_BLEND_MIN 0x4
|
||||
#define PYGAME_BLEND_MAX 0x5
|
||||
|
||||
#define PYGAME_BLEND_RGB_ADD 0x1
|
||||
#define PYGAME_BLEND_RGB_SUB 0x2
|
||||
#define PYGAME_BLEND_RGB_MULT 0x3
|
||||
#define PYGAME_BLEND_RGB_MIN 0x4
|
||||
#define PYGAME_BLEND_RGB_MAX 0x5
|
||||
|
||||
#define PYGAME_BLEND_RGBA_ADD 0x6
|
||||
#define PYGAME_BLEND_RGBA_SUB 0x7
|
||||
#define PYGAME_BLEND_RGBA_MULT 0x8
|
||||
#define PYGAME_BLEND_RGBA_MIN 0x9
|
||||
#define PYGAME_BLEND_RGBA_MAX 0x10
|
||||
#define PYGAME_BLEND_PREMULTIPLIED 0x11
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
|
||||
#define GET_PIXEL_24(b) (b[0] + (b[1] << 8) + (b[2] << 16))
|
||||
#else
|
||||
#define GET_PIXEL_24(b) (b[2] + (b[1] << 8) + (b[0] << 16))
|
||||
#endif
|
||||
|
||||
#define GET_PIXEL(pxl, bpp, source) \
|
||||
switch (bpp) \
|
||||
{ \
|
||||
case 2: \
|
||||
pxl = *((Uint16 *) (source)); \
|
||||
break; \
|
||||
case 4: \
|
||||
pxl = *((Uint32 *) (source)); \
|
||||
break; \
|
||||
default: \
|
||||
{ \
|
||||
Uint8 *b = (Uint8 *) source; \
|
||||
pxl = GET_PIXEL_24(b); \
|
||||
} \
|
||||
break; \
|
||||
}
|
||||
|
||||
#if IS_SDLv1
|
||||
#define GET_PIXELVALS(_sR, _sG, _sB, _sA, px, fmt, ppa) \
|
||||
_sR = ((px & fmt->Rmask) >> fmt->Rshift); \
|
||||
_sR = (_sR << fmt->Rloss) + (_sR >> (8 - (fmt->Rloss << 1))); \
|
||||
_sG = ((px & fmt->Gmask) >> fmt->Gshift); \
|
||||
_sG = (_sG << fmt->Gloss) + (_sG >> (8 - (fmt->Gloss << 1))); \
|
||||
_sB = ((px & fmt->Bmask) >> fmt->Bshift); \
|
||||
_sB = (_sB << fmt->Bloss) + (_sB >> (8 - (fmt->Bloss << 1))); \
|
||||
if (ppa) \
|
||||
{ \
|
||||
_sA = ((px & fmt->Amask) >> fmt->Ashift); \
|
||||
_sA = (_sA << fmt->Aloss) + (_sA >> (8 - (fmt->Aloss << 1))); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
_sA = 255; \
|
||||
}
|
||||
|
||||
#define GET_PIXELVALS_1(sr, sg, sb, sa, _src, _fmt) \
|
||||
sr = _fmt->palette->colors[*((Uint8 *) (_src))].r; \
|
||||
sg = _fmt->palette->colors[*((Uint8 *) (_src))].g; \
|
||||
sb = _fmt->palette->colors[*((Uint8 *) (_src))].b; \
|
||||
sa = 255;
|
||||
|
||||
/* For 1 byte palette pixels */
|
||||
#define SET_PIXELVAL(px, fmt, _dR, _dG, _dB, _dA) \
|
||||
*(px) = (Uint8) SDL_MapRGB(fmt, _dR, _dG, _dB)
|
||||
#else /* IS_SDLv2 */
|
||||
#define GET_PIXELVALS(_sR, _sG, _sB, _sA, px, fmt, ppa) \
|
||||
SDL_GetRGBA(px, fmt, &(_sR), &(_sG), &(_sB), &(_sA)); \
|
||||
if (!ppa) { \
|
||||
_sA = 255; \
|
||||
}
|
||||
|
||||
#define GET_PIXELVALS_1(sr, sg, sb, sa, _src, _fmt) \
|
||||
sr = _fmt->palette->colors[*((Uint8 *) (_src))].r; \
|
||||
sg = _fmt->palette->colors[*((Uint8 *) (_src))].g; \
|
||||
sb = _fmt->palette->colors[*((Uint8 *) (_src))].b; \
|
||||
sa = 255;
|
||||
|
||||
/* For 1 byte palette pixels */
|
||||
#define SET_PIXELVAL(px, fmt, _dR, _dG, _dB, _dA) \
|
||||
*(px) = (Uint8) SDL_MapRGBA(fmt, _dR, _dG, _dB, _dA)
|
||||
#endif /* IS_SDLv2 */
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#if SDL_BYTEORDER == SDL_LIL_ENDIAN
|
||||
#define SET_OFFSETS_24(or, og, ob, fmt) \
|
||||
{ \
|
||||
or = (fmt->Rshift == 0 ? 0 : \
|
||||
fmt->Rshift == 8 ? 1 : \
|
||||
2 ); \
|
||||
og = (fmt->Gshift == 0 ? 0 : \
|
||||
fmt->Gshift == 8 ? 1 : \
|
||||
2 ); \
|
||||
ob = (fmt->Bshift == 0 ? 0 : \
|
||||
fmt->Bshift == 8 ? 1 : \
|
||||
2 ); \
|
||||
}
|
||||
|
||||
#define SET_OFFSETS_32(or, og, ob, fmt) \
|
||||
{ \
|
||||
or = (fmt->Rshift == 0 ? 0 : \
|
||||
fmt->Rshift == 8 ? 1 : \
|
||||
fmt->Rshift == 16 ? 2 : \
|
||||
3 ); \
|
||||
og = (fmt->Gshift == 0 ? 0 : \
|
||||
fmt->Gshift == 8 ? 1 : \
|
||||
fmt->Gshift == 16 ? 2 : \
|
||||
3 ); \
|
||||
ob = (fmt->Bshift == 0 ? 0 : \
|
||||
fmt->Bshift == 8 ? 1 : \
|
||||
fmt->Bshift == 16 ? 2 : \
|
||||
3 ); \
|
||||
}
|
||||
#else
|
||||
#define SET_OFFSETS_24(or, og, ob, fmt) \
|
||||
{ \
|
||||
or = (fmt->Rshift == 0 ? 2 : \
|
||||
fmt->Rshift == 8 ? 1 : \
|
||||
0 ); \
|
||||
og = (fmt->Gshift == 0 ? 2 : \
|
||||
fmt->Gshift == 8 ? 1 : \
|
||||
0 ); \
|
||||
ob = (fmt->Bshift == 0 ? 2 : \
|
||||
fmt->Bshift == 8 ? 1 : \
|
||||
0 ); \
|
||||
}
|
||||
|
||||
#define SET_OFFSETS_32(or, og, ob, fmt) \
|
||||
{ \
|
||||
or = (fmt->Rshift == 0 ? 3 : \
|
||||
fmt->Rshift == 8 ? 2 : \
|
||||
fmt->Rshift == 16 ? 1 : \
|
||||
0 ); \
|
||||
og = (fmt->Gshift == 0 ? 3 : \
|
||||
fmt->Gshift == 8 ? 2 : \
|
||||
fmt->Gshift == 16 ? 1 : \
|
||||
0 ); \
|
||||
ob = (fmt->Bshift == 0 ? 3 : \
|
||||
fmt->Bshift == 8 ? 2 : \
|
||||
fmt->Bshift == 16 ? 1 : \
|
||||
0 ); \
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
#define CREATE_PIXEL(buf, r, g, b, a, bp, ft) \
|
||||
switch (bp) \
|
||||
{ \
|
||||
case 2: \
|
||||
*((Uint16 *) (buf)) = \
|
||||
((r >> ft->Rloss) << ft->Rshift) | \
|
||||
((g >> ft->Gloss) << ft->Gshift) | \
|
||||
((b >> ft->Bloss) << ft->Bshift) | \
|
||||
((a >> ft->Aloss) << ft->Ashift); \
|
||||
break; \
|
||||
case 4: \
|
||||
*((Uint32 *) (buf)) = \
|
||||
((r >> ft->Rloss) << ft->Rshift) | \
|
||||
((g >> ft->Gloss) << ft->Gshift) | \
|
||||
((b >> ft->Bloss) << ft->Bshift) | \
|
||||
((a >> ft->Aloss) << ft->Ashift); \
|
||||
break; \
|
||||
}
|
||||
|
||||
/* Pretty good idea from Tom Duff :-). */
|
||||
#define LOOP_UNROLLED4(code, n, width) \
|
||||
n = (width + 3) / 4; \
|
||||
switch (width & 3) \
|
||||
{ \
|
||||
case 0: do { code; \
|
||||
case 3: code; \
|
||||
case 2: code; \
|
||||
case 1: code; \
|
||||
} while (--n > 0); \
|
||||
}
|
||||
|
||||
/* Used in the srcbpp == dstbpp == 1 blend functions */
|
||||
#define REPEAT_3(code) \
|
||||
code; \
|
||||
code; \
|
||||
code;
|
||||
|
||||
#define REPEAT_4(code) \
|
||||
code; \
|
||||
code; \
|
||||
code; \
|
||||
code;
|
||||
|
||||
|
||||
#define BLEND_ADD(tmp, sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
tmp = dR + sR; dR = (tmp <= 255 ? tmp : 255); \
|
||||
tmp = dG + sG; dG = (tmp <= 255 ? tmp : 255); \
|
||||
tmp = dB + sB; dB = (tmp <= 255 ? tmp : 255);
|
||||
|
||||
#define BLEND_SUB(tmp, sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
tmp = dR - sR; dR = (tmp >= 0 ? tmp : 0); \
|
||||
tmp = dG - sG; dG = (tmp >= 0 ? tmp : 0); \
|
||||
tmp = dB - sB; dB = (tmp >= 0 ? tmp : 0);
|
||||
|
||||
#define BLEND_MULT(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
dR = (dR && sR) ? (dR * sR) >> 8 : 0; \
|
||||
dG = (dG && sG) ? (dG * sG) >> 8 : 0; \
|
||||
dB = (dB && sB) ? (dB * sB) >> 8 : 0;
|
||||
|
||||
#define BLEND_MIN(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
if(sR < dR) { dR = sR; } \
|
||||
if(sG < dG) { dG = sG; } \
|
||||
if(sB < dB) { dB = sB; }
|
||||
|
||||
#define BLEND_MAX(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
if(sR > dR) { dR = sR; } \
|
||||
if(sG > dG) { dG = sG; } \
|
||||
if(sB > dB) { dB = sB; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#define BLEND_RGBA_ADD(tmp, sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
tmp = dR + sR; dR = (tmp <= 255 ? tmp : 255); \
|
||||
tmp = dG + sG; dG = (tmp <= 255 ? tmp : 255); \
|
||||
tmp = dB + sB; dB = (tmp <= 255 ? tmp : 255); \
|
||||
tmp = dA + sA; dA = (tmp <= 255 ? tmp : 255);
|
||||
|
||||
#define BLEND_RGBA_SUB(tmp, sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
tmp = dR - sR; dR = (tmp >= 0 ? tmp : 0); \
|
||||
tmp = dG - sG; dG = (tmp >= 0 ? tmp : 0); \
|
||||
tmp = dB - sB; dB = (tmp >= 0 ? tmp : 0); \
|
||||
tmp = dA - sA; dA = (tmp >= 0 ? tmp : 0);
|
||||
|
||||
#define BLEND_RGBA_MULT(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
dR = (dR && sR) ? (dR * sR) >> 8 : 0; \
|
||||
dG = (dG && sG) ? (dG * sG) >> 8 : 0; \
|
||||
dB = (dB && sB) ? (dB * sB) >> 8 : 0; \
|
||||
dA = (dA && sA) ? (dA * sA) >> 8 : 0;
|
||||
|
||||
#define BLEND_RGBA_MIN(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
if(sR < dR) { dR = sR; } \
|
||||
if(sG < dG) { dG = sG; } \
|
||||
if(sB < dB) { dB = sB; } \
|
||||
if(sA < dA) { dA = sA; }
|
||||
|
||||
#define BLEND_RGBA_MAX(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
if(sR > dR) { dR = sR; } \
|
||||
if(sG > dG) { dG = sG; } \
|
||||
if(sB > dB) { dB = sB; } \
|
||||
if(sA > dA) { dA = sA; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#if 1
|
||||
/* Choose an alpha blend equation. If the sign is preserved on a right shift
|
||||
* then use a specialized, faster, equation. Otherwise a more general form,
|
||||
* where all additions are done before the shift, is needed.
|
||||
*/
|
||||
#if (-1 >> 1) < 0
|
||||
#define ALPHA_BLEND_COMP(sC, dC, sA) ((((sC - dC) * sA + sC) >> 8) + dC)
|
||||
#else
|
||||
#define ALPHA_BLEND_COMP(sC, dC, sA) (((dC << 8) + (sC - dC) * sA + sC) >> 8)
|
||||
#endif
|
||||
|
||||
#define ALPHA_BLEND(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
do { \
|
||||
if (dA) \
|
||||
{ \
|
||||
dR = ALPHA_BLEND_COMP(sR, dR, sA); \
|
||||
dG = ALPHA_BLEND_COMP(sG, dG, sA); \
|
||||
dB = ALPHA_BLEND_COMP(sB, dB, sA); \
|
||||
dA = sA + dA - ((sA * dA) / 255); \
|
||||
} \
|
||||
else \
|
||||
{ \
|
||||
dR = sR; \
|
||||
dG = sG; \
|
||||
dB = sB; \
|
||||
dA = sA; \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define ALPHA_BLEND_PREMULTIPLIED_COMP(sC, dC, sA) (sC + dC - ((dC * sA) >> 8))
|
||||
|
||||
#define ALPHA_BLEND_PREMULTIPLIED(tmp, sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
do { \
|
||||
tmp = ALPHA_BLEND_PREMULTIPLIED_COMP(sR, dR, sA); dR = (tmp > 255 ? 255 : tmp); \
|
||||
tmp = ALPHA_BLEND_PREMULTIPLIED_COMP(sG, dG, sA); dG = (tmp > 255 ? 255 : tmp); \
|
||||
tmp = ALPHA_BLEND_PREMULTIPLIED_COMP(sB, dB, sA); dB = (tmp > 255 ? 255 : tmp); \
|
||||
dA = sA + dA - ((sA * dA) / 255); \
|
||||
} while(0)
|
||||
#elif 0
|
||||
|
||||
#define ALPHA_BLEND(sR, sG, sB, sA, dR, dG, dB, dA) \
|
||||
do { \
|
||||
if(sA){ \
|
||||
if(dA && sA < 255){ \
|
||||
int dContrib = dA*(255 - sA)/255; \
|
||||
dA = sA+dA - ((sA*dA)/255); \
|
||||
dR = (dR*dContrib + sR*sA)/dA; \
|
||||
dG = (dG*dContrib + sG*sA)/dA; \
|
||||
dB = (dB*dContrib + sB*sA)/dA; \
|
||||
}else{ \
|
||||
dR = sR; \
|
||||
dG = sG; \
|
||||
dB = sB; \
|
||||
dA = sA; \
|
||||
} \
|
||||
} \
|
||||
} while(0)
|
||||
#endif
|
||||
|
||||
int
|
||||
surface_fill_blend (SDL_Surface *surface, SDL_Rect *rect, Uint32 color,
|
||||
int blendargs);
|
||||
|
||||
void
|
||||
surface_respect_clip_rect (SDL_Surface *surface, SDL_Rect *rect);
|
||||
|
||||
int
|
||||
pygame_AlphaBlit (SDL_Surface * src, SDL_Rect * srcrect,
|
||||
SDL_Surface * dst, SDL_Rect * dstrect, int the_args);
|
||||
|
||||
int
|
||||
pygame_Blit (SDL_Surface * src, SDL_Rect * srcrect,
|
||||
SDL_Surface * dst, SDL_Rect * dstrect, int the_args);
|
||||
|
||||
#endif /* SURFACE_H */
|
2
venv/lib/python3.7/site-packages/easy-install.pth
Normal file
@ -0,0 +1,2 @@
|
||||
./setuptools-40.8.0-py3.7.egg
|
||||
./pip-19.0.3-py3.7.egg
|
@ -0,0 +1 @@
|
||||
pip
|
@ -0,0 +1,56 @@
|
||||
Metadata-Version: 2.1
|
||||
Name: numpy
|
||||
Version: 1.18.2
|
||||
Summary: NumPy is the fundamental package for array computing with Python.
|
||||
Home-page: https://www.numpy.org
|
||||
Author: Travis E. Oliphant et al.
|
||||
Maintainer: NumPy Developers
|
||||
Maintainer-email: numpy-discussion@python.org
|
||||
License: BSD
|
||||
Download-URL: https://pypi.python.org/pypi/numpy
|
||||
Project-URL: Bug Tracker, https://github.com/numpy/numpy/issues
|
||||
Project-URL: Documentation, https://docs.scipy.org/doc/numpy/
|
||||
Project-URL: Source Code, https://github.com/numpy/numpy
|
||||
Platform: Windows
|
||||
Platform: Linux
|
||||
Platform: Solaris
|
||||
Platform: Mac OS-X
|
||||
Platform: Unix
|
||||
Classifier: Development Status :: 5 - Production/Stable
|
||||
Classifier: Intended Audience :: Science/Research
|
||||
Classifier: Intended Audience :: Developers
|
||||
Classifier: License :: OSI Approved
|
||||
Classifier: Programming Language :: C
|
||||
Classifier: Programming Language :: Python
|
||||
Classifier: Programming Language :: Python :: 3
|
||||
Classifier: Programming Language :: Python :: 3.5
|
||||
Classifier: Programming Language :: Python :: 3.6
|
||||
Classifier: Programming Language :: Python :: 3.7
|
||||
Classifier: Programming Language :: Python :: 3.8
|
||||
Classifier: Programming Language :: Python :: 3 :: Only
|
||||
Classifier: Programming Language :: Python :: Implementation :: CPython
|
||||
Classifier: Topic :: Software Development
|
||||
Classifier: Topic :: Scientific/Engineering
|
||||
Classifier: Operating System :: Microsoft :: Windows
|
||||
Classifier: Operating System :: POSIX
|
||||
Classifier: Operating System :: Unix
|
||||
Classifier: Operating System :: MacOS
|
||||
Requires-Python: >=3.5
|
||||
|
||||
It provides:
|
||||
|
||||
- a powerful N-dimensional array object
|
||||
- sophisticated (broadcasting) functions
|
||||
- tools for integrating C/C++ and Fortran code
|
||||
- useful linear algebra, Fourier transform, and random number capabilities
|
||||
- and much more
|
||||
|
||||
Besides its obvious scientific uses, NumPy can also be used as an efficient
|
||||
multi-dimensional container of generic data. Arbitrary data-types can be
|
||||
defined. This allows NumPy to seamlessly and speedily integrate with a wide
|
||||
variety of databases.
|
||||
|
||||
All NumPy wheels distributed on PyPI are BSD licensed.
|
||||
|
||||
|
||||
|
852
venv/lib/python3.7/site-packages/numpy-1.18.2.dist-info/RECORD
Normal file
@ -0,0 +1,852 @@
|
||||
../../../bin/f2py,sha256=-BAA-2fWt2Kcos0jeHtabPXud3qyCZ-1dOc8lU3tJJI,258
|
||||
../../../bin/f2py3,sha256=-BAA-2fWt2Kcos0jeHtabPXud3qyCZ-1dOc8lU3tJJI,258
|
||||
../../../bin/f2py3.7,sha256=-BAA-2fWt2Kcos0jeHtabPXud3qyCZ-1dOc8lU3tJJI,258
|
||||
numpy-1.18.2.dist-info/INSTALLER,sha256=zuuue4knoyJ-UwPPXg8fezS7VCrXJQrAP7zeNuwvFQg,4
|
||||
numpy-1.18.2.dist-info/METADATA,sha256=TuIVILC5R4ELDt_vDZ9g3IIi-6phvFDaLXXa_jKh1oM,2057
|
||||
numpy-1.18.2.dist-info/RECORD,,
|
||||
numpy-1.18.2.dist-info/WHEEL,sha256=AhV6RMqZ2IDfreRJKo44QWYxYeP-0Jr0bezzBLQ1eog,109
|
||||
numpy-1.18.2.dist-info/entry_points.txt,sha256=MA6o_IjpQrpZlNNxq1yxwYV0u_I689RuoWedrJLsZnk,113
|
||||
numpy-1.18.2.dist-info/top_level.txt,sha256=4J9lbBMLnAiyxatxh8iRKV5Entd_6-oqbO7pzJjMsPw,6
|
||||
numpy/.libs/libgfortran-ed201abd.so.3.0.0,sha256=-wq9A9a6iPJfgojsh9Fi4vj6Br_EwUqr7W5Pc4giOYg,1023960
|
||||
numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so,sha256=yHuhchYklHB9dvBnMyw8DDkIvR3ApKIE_LPaeGklZw4,29724672
|
||||
numpy/LICENSE.txt,sha256=kL0gtRLFMt0qE0tusWLm-rVSSW0Uy3UA-f0l8ZEVikk,45692
|
||||
numpy/__config__.py,sha256=l-kYBVT3VpoLPbr8_dilDgG-Z1l-VOLtHHFd2vCF8fw,1646
|
||||
numpy/__init__.py,sha256=Ited5sCQ_GQpr_n6rXbUxiF6PsLBQHuBs6VZuTdX9iY,8858
|
||||
numpy/__pycache__/__config__.cpython-37.pyc,,
|
||||
numpy/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/__pycache__/_distributor_init.cpython-37.pyc,,
|
||||
numpy/__pycache__/_globals.cpython-37.pyc,,
|
||||
numpy/__pycache__/_pytesttester.cpython-37.pyc,,
|
||||
numpy/__pycache__/conftest.cpython-37.pyc,,
|
||||
numpy/__pycache__/ctypeslib.cpython-37.pyc,,
|
||||
numpy/__pycache__/dual.cpython-37.pyc,,
|
||||
numpy/__pycache__/matlib.cpython-37.pyc,,
|
||||
numpy/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/__pycache__/version.cpython-37.pyc,,
|
||||
numpy/_distributor_init.py,sha256=IgPkSK3H9bgjFeUfWuXhjKrgetQl5ztUW-rTyjGHK3c,331
|
||||
numpy/_globals.py,sha256=p8xxERZsxjGPUWV9pMY3jz75NZxDLppGeKaHbYGCDqM,2379
|
||||
numpy/_pytesttester.py,sha256=JQAw-aDSd7hl9dPpeIvD7eRbrMppI9sFeYQEgqpTqx8,6980
|
||||
numpy/compat/__init__.py,sha256=MHle4gJcrXh1w4SNv0mz5rbUTAjAzHnyO3rtbSW3AUo,498
|
||||
numpy/compat/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/compat/__pycache__/_inspect.cpython-37.pyc,,
|
||||
numpy/compat/__pycache__/py3k.cpython-37.pyc,,
|
||||
numpy/compat/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/compat/_inspect.py,sha256=xEImUFhm4VAzT2LJj2Va_yDAHJsdy0RwSi1JwOOhykU,7513
|
||||
numpy/compat/py3k.py,sha256=EWeA4IONUTXhTcTJ7wEh2xoECE5knqPI1VzEfSTyY_8,7097
|
||||
numpy/compat/setup.py,sha256=REJcwNU7EbfwBFS1FHazGJcUhh50_5gYttr3BSczCiM,382
|
||||
numpy/compat/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/compat/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/compat/tests/__pycache__/test_compat.cpython-37.pyc,,
|
||||
numpy/compat/tests/test_compat.py,sha256=KtCVafV8yN5g90tIIe7T9f5ruAs5Y0DNa64d040Rx5s,542
|
||||
numpy/conftest.py,sha256=HHIMNsYUUp2eensC63LtRYy_NZC1su1tbtN26rnrg5E,2749
|
||||
numpy/core/__init__.py,sha256=MM3QX8fvUwztExd4zaHTdgvXxE8yr4ZMkr4SlcGD7QI,4925
|
||||
numpy/core/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_add_newdocs.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_asarray.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_dtype.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_dtype_ctypes.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_exceptions.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_internal.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_methods.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_string_helpers.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_type_aliases.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/_ufunc_config.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/arrayprint.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/cversions.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/defchararray.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/einsumfunc.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/fromnumeric.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/function_base.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/generate_numpy_api.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/getlimits.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/machar.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/memmap.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/multiarray.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/numeric.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/numerictypes.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/overrides.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/records.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/setup_common.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/shape_base.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/umath.cpython-37.pyc,,
|
||||
numpy/core/__pycache__/umath_tests.cpython-37.pyc,,
|
||||
numpy/core/_add_newdocs.py,sha256=LqccpEMz9ETDG4jXOTrBnol3wUO0hTw0I1JDSOUsUE8,202937
|
||||
numpy/core/_asarray.py,sha256=NH0SPZr_pBMKOJgyy6dsfmKOQPy3r31hlzFG5bP1yYA,9940
|
||||
numpy/core/_dtype.py,sha256=lhiLEajO4UQ0wGSY52T4KtLdylFfCaAQs-YV6Ru-hNM,10053
|
||||
numpy/core/_dtype_ctypes.py,sha256=EiTjqVsDSibpbS8pkvzres86E9er1aFaflsss9N3Uao,3448
|
||||
numpy/core/_exceptions.py,sha256=MbGfp_yuOifOpZRppfk-DA9dL07AVv7blO0i63OX8lU,6259
|
||||
numpy/core/_internal.py,sha256=pwHot3zvS_5qcO_INVPk7gpM1YkNK1A5K8M1NyF1ghc,26469
|
||||
numpy/core/_methods.py,sha256=g8AnOnA3CdC4qe7s7N_pG3OcaW-YKhXmRz8FmLNnpG0,8399
|
||||
numpy/core/_multiarray_tests.cpython-37m-x86_64-linux-gnu.so,sha256=9Ewrq9nU6CKSUR5MXAqcCz_HcxI9Y4v_UsJsW7zNSsY,580203
|
||||
numpy/core/_multiarray_umath.cpython-37m-x86_64-linux-gnu.so,sha256=2wzZ2EtGMJjDaycOULGHZqZFUr_KZwApuza_yjReE1o,21507704
|
||||
numpy/core/_operand_flag_tests.cpython-37m-x86_64-linux-gnu.so,sha256=kawkN-3Gn6UQNAFv5B_M3JmCr4yeL8RSI8-a7Xz6gz8,31319
|
||||
numpy/core/_rational_tests.cpython-37m-x86_64-linux-gnu.so,sha256=UrPyPujhte6FfTbtswWq8Bei_xGz8A3CqDf6PCxg0Ls,270173
|
||||
numpy/core/_string_helpers.py,sha256=NGGGhaFdU5eGiUAj3GTIBoOgWs4r9aTNlsE2r9NgX6Q,2855
|
||||
numpy/core/_struct_ufunc_tests.cpython-37m-x86_64-linux-gnu.so,sha256=a6SlGjJLfa6wyV5Bs14o_ZnVN_txdltect3Ffk7x5HE,34727
|
||||
numpy/core/_type_aliases.py,sha256=FA2Pz5OKqcLl1QKLJNu-ETHIzQ1ii3LH5pSdHhZkfZA,9181
|
||||
numpy/core/_ufunc_config.py,sha256=yQ9RSST7_TagO8EYDZG5g23gz7loX76a0ajCU5HfYRI,14219
|
||||
numpy/core/_umath_tests.cpython-37m-x86_64-linux-gnu.so,sha256=l8pu1J2kNgM6hlXTbfbQEze7-fonaZMzxS0jj8RpW3Q,85900
|
||||
numpy/core/arrayprint.py,sha256=WuIViYKXL-qr000rKTQhss9swe3nsKlG2Jc0mfuiS10,59774
|
||||
numpy/core/cversions.py,sha256=ukYNpkei0Coi7DOcbroXuDoXc6kl5odxmcy_39pszA0,413
|
||||
numpy/core/defchararray.py,sha256=HJU2o-dQbiwglIwIv8MRSEDB6p4p2PE9Aq67IQ47aEQ,70980
|
||||
numpy/core/einsumfunc.py,sha256=94J-3sQQWoCzYGwUlsEIHD6B3Qjv481XUD2jd0KClGY,51271
|
||||
numpy/core/fromnumeric.py,sha256=_d9szuykDMfWhYjBl5tIcD81G7KNz9l4PMyvfxyzO64,117694
|
||||
numpy/core/function_base.py,sha256=jgKa0iHIzpUUy8T9XXlIEbI8XO0xeh1olG409kdM2qo,18344
|
||||
numpy/core/generate_numpy_api.py,sha256=0JBYTvekUeJyhp7QMKtWJSK-L6lVNhev16y0F2qX2pU,7470
|
||||
numpy/core/getlimits.py,sha256=X26A-6nrzC1FH1wtCggX-faIw0WMYYkPH1_983h4hCE,18914
|
||||
numpy/core/include/numpy/__multiarray_api.h,sha256=SQEcRelzaunap6-uUl3E21qUanrFOBcC1PiQITpVU0Y,61920
|
||||
numpy/core/include/numpy/__ufunc_api.h,sha256=fWkLh84HH3fN99gOJoZ10bZEpaO3VGT9aNpTu-2zblI,12179
|
||||
numpy/core/include/numpy/_neighborhood_iterator_imp.h,sha256=hNiUJ3gmJRxdjByk5R5jmLeBKpNfaP_29KLHFuTrSIA,1861
|
||||
numpy/core/include/numpy/_numpyconfig.h,sha256=bDiTLQ972ZWQBEpx6OM8riS64nSAelKa2kIimnXm_Ss,1010
|
||||
numpy/core/include/numpy/arrayobject.h,sha256=SXj-2avTHV8mNWvv7sOYHLKkRKcafDG7_HNpQNot1GE,164
|
||||
numpy/core/include/numpy/arrayscalars.h,sha256=vC7QCznlT8vkyvxbIh4QNwi1LR7UkP7GJ1j_0ZiJa1E,3509
|
||||
numpy/core/include/numpy/halffloat.h,sha256=ohvyl3Kz3mB1hW3MRzxwPDH-0L9WWM_eKhvYLjtT_2w,1878
|
||||
numpy/core/include/numpy/multiarray_api.txt,sha256=qG593ym4jzzsPHIkFfKSTxK1XrrICKTLb9qGIto1fxc,56884
|
||||
numpy/core/include/numpy/ndarrayobject.h,sha256=E737J_1YQI-igbXcbA3kdbwsMqTv1aXcy6bp5aE0P_0,11496
|
||||
numpy/core/include/numpy/ndarraytypes.h,sha256=Lelck68SVrCPhxTAGURh_AyOth5txewU6xp2f556lLg,65105
|
||||
numpy/core/include/numpy/noprefix.h,sha256=YE-lWegAdZKI5lf44AW5jiWbnmO6hircWzj_WMFrLT4,6786
|
||||
numpy/core/include/numpy/npy_1_7_deprecated_api.h,sha256=LLeZKLuJADU3RDfT04pu5FCxCBU5cEzY5Q9phR_HL78,4715
|
||||
numpy/core/include/numpy/npy_3kcompat.h,sha256=exFgMT6slmo2Zg3bFsY3mKLUrrkg3KU_66gUmu5IYKk,14666
|
||||
numpy/core/include/numpy/npy_common.h,sha256=R-LMbpQDZJ4XXKDeXvI58WFKgkEiljDDgDMl6Yk_KTI,37943
|
||||
numpy/core/include/numpy/npy_cpu.h,sha256=3frXChwN0Cxca-sAeTTOJCiZ6_2q1EuggUwqEotdXLg,3879
|
||||
numpy/core/include/numpy/npy_endian.h,sha256=HHanBydLvLC2anJJySvy6wZ_lYaC_xI6GNwT8cJ78rE,2596
|
||||
numpy/core/include/numpy/npy_interrupt.h,sha256=Eyddk806h30jxgymbr44b7eIZKrHXtNzXpPtUPp2Ng8,3439
|
||||
numpy/core/include/numpy/npy_math.h,sha256=VFv-sN9Dnm3wmnZoHoGJO5lFyJECbQfipzJgJj1p5vA,23139
|
||||
numpy/core/include/numpy/npy_no_deprecated_api.h,sha256=X-wRYdpuwIuerTnBblKjR7Dqsv8rqxn01RFLVWUHvi8,567
|
||||
numpy/core/include/numpy/npy_os.h,sha256=cEvEvpD92EeFjsjRelw1dXJaHYL-0yPJDuz3VeSJs4E,817
|
||||
numpy/core/include/numpy/numpyconfig.h,sha256=mHTx0sXeXNcaq0wWcP-8hGFUWvoG_2AHFKub59KJGm4,1327
|
||||
numpy/core/include/numpy/old_defines.h,sha256=7eiZoi7JrdVT9LXKCoeta5AoIncGa98GcVlWqDrLjwk,6306
|
||||
numpy/core/include/numpy/oldnumeric.h,sha256=Yo-LiSzVfDK2YyhlH41ff4gS0m-lv8XjI4JcAzpdy94,708
|
||||
numpy/core/include/numpy/random/bitgen.h,sha256=Gfrwd0M0odkpRJXw7QXJgVxb5XCw3iDXacWE_h-F_uM,389
|
||||
numpy/core/include/numpy/random/distributions.h,sha256=nbbdQ6X-lsdyzo7bmss4i3kg354GnkYQGGfYld_x6HM,9633
|
||||
numpy/core/include/numpy/ufunc_api.txt,sha256=RTz9blLHbWMCWMaiPeJyqt9d93nHJXJT7RiTf-bbMO4,6937
|
||||
numpy/core/include/numpy/ufuncobject.h,sha256=GpAJZKRnE08xRy5IOJD8r8i6Xz1nltg-iEMl3Frqsyk,12746
|
||||
numpy/core/include/numpy/utils.h,sha256=KqJzngAvarYV3oZQu5fY0ARPVihUP7FsZjdljysaSUk,729
|
||||
numpy/core/lib/libnpymath.a,sha256=aWHXyaoHHxnrPzhrK9HtatrDwlmjZKQHfT7278_T7tk,355952
|
||||
numpy/core/lib/npy-pkg-config/mlib.ini,sha256=_LsWV1eStNqwhdiYPa2538GL46dnfVwT4MrI1zbsoFw,147
|
||||
numpy/core/lib/npy-pkg-config/npymath.ini,sha256=kamUNrYKAmXqQa8BcNv7D5sLqHh6bnChM0_5rZCsTfY,360
|
||||
numpy/core/machar.py,sha256=P8Ae9aOzoTUMWWiAXgE0Uf5Vk837DTODV5ndQLvm5zU,10860
|
||||
numpy/core/memmap.py,sha256=RVD10EyH-4jgzrTy3Xc_mXsJrvt-QMGGLmY7Aoqmy7I,11590
|
||||
numpy/core/multiarray.py,sha256=7yvhC6SVcF-MGwX5PwsSmV7jMfObe4gldkNI6lqsyvY,53002
|
||||
numpy/core/numeric.py,sha256=xV7Lo8i9bcILM4GGrryguiQAWzCuJJdM99CKkLndcQE,71955
|
||||
numpy/core/numerictypes.py,sha256=fCQuWSy6vshZHh4YP4oz9n3ysSHl-HSaGMjEzmVVQdY,17918
|
||||
numpy/core/overrides.py,sha256=_OoaYi35e6xJ9QCOeMuJlZmuU0efF47pJAXmTgWeHrU,7481
|
||||
numpy/core/records.py,sha256=xOCgmcTtTLjBaOYtjae9t-DtvpqFjFJwg_c5ZgHZ0xs,30928
|
||||
numpy/core/setup.py,sha256=eVqe4s7YjhH8bSgsGSjXKBF2BZVj5vOeiexbh_M3ibE,42069
|
||||
numpy/core/setup_common.py,sha256=z3oR0UKy8sbt0rHq7TEjzwkitQNsfKw7T69LD18qTbY,19365
|
||||
numpy/core/shape_base.py,sha256=VXd2RUcUoxp4mcLQWxNszD-ygubCS8xp9ZOHYhnxddY,28964
|
||||
numpy/core/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/core/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/_locales.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test__exceptions.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_abc.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_api.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_arrayprint.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_datetime.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_defchararray.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_deprecations.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_dtype.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_einsum.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_errstate.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_extint128.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_function_base.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_getlimits.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_half.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_indexerrors.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_indexing.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_issue14735.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_item_selection.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_longdouble.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_machar.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_mem_overlap.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_memmap.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_multiarray.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_nditer.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_numeric.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_numerictypes.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_overrides.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_print.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_records.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalar_ctors.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalar_methods.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalarbuffer.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalarinherit.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalarmath.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_scalarprint.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_shape_base.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_ufunc.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_umath.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_umath_accuracy.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_umath_complex.cpython-37.pyc,,
|
||||
numpy/core/tests/__pycache__/test_unicode.cpython-37.pyc,,
|
||||
numpy/core/tests/_locales.py,sha256=GQro3bha8c5msgQyvNzmDUrNwqS2cGkKKuN4gg4c6tI,2266
|
||||
numpy/core/tests/data/astype_copy.pkl,sha256=lWSzCcvzRB_wpuRGj92spGIw-rNPFcd9hwJaRVvfWdk,716
|
||||
numpy/core/tests/data/recarray_from_file.fits,sha256=NA0kliz31FlLnYxv3ppzeruONqNYkuEvts5wzXEeIc4,8640
|
||||
numpy/core/tests/data/umath-validation-set-README,sha256=-1JRNN1zx8S1x9l4D0786USSRMNt3Dk0nsOMg6O7CiM,959
|
||||
numpy/core/tests/data/umath-validation-set-cos,sha256=qIka8hARvhXZOu9XR3CnGiPnOdrkAaxEgFgEEqus06s,24703
|
||||
numpy/core/tests/data/umath-validation-set-exp,sha256=GZn7cZRKAjskJ4l6tcvDF53I3e9zegQH--GPzYib9_g,4703
|
||||
numpy/core/tests/data/umath-validation-set-log,sha256=gDbicMaonc26BmtHPoyvunUvXrSFLV9BY8L1QVoH5Dw,4088
|
||||
numpy/core/tests/data/umath-validation-set-sin,sha256=fMEynY6dZz18jtuRdpfOJT9KnpRSWd9ilcz0oXMwgCQ,24690
|
||||
numpy/core/tests/test__exceptions.py,sha256=8XVPAkXmYh9dHiN5XhQk4D_r_l71cYpejg_ueTscrRI,1495
|
||||
numpy/core/tests/test_abc.py,sha256=cpIqt3VFBZLHbuNpO4NuyCGgd--k1zij5aasu7FV77I,2402
|
||||
numpy/core/tests/test_api.py,sha256=RIlRUqB_lRM0xcrEAdLRdDRWWk-0O7bUcEJfPCHyNl4,19224
|
||||
numpy/core/tests/test_arrayprint.py,sha256=zoNxYH3h7VnMFtU1vt67ujPuRCAQkQ1VmXKhTo0Juqw,34400
|
||||
numpy/core/tests/test_datetime.py,sha256=LT_KGIp6AyqAryB289cKW4_xTQ44Egb6JriGNHiB_g8,108148
|
||||
numpy/core/tests/test_defchararray.py,sha256=L5EoOBTZVrRU1Vju5IhY8BSUlBOGPzEViKJwyQSlpXo,25481
|
||||
numpy/core/tests/test_deprecations.py,sha256=vcbHCQUx7_Um0pPofOLY-3u4AaF1ABIVmZsJBCXnjWw,22466
|
||||
numpy/core/tests/test_dtype.py,sha256=gkDXeJFWFcYHu5Sw5b6Wbyl_xbkkssOYdx5EdjLhEHA,49663
|
||||
numpy/core/tests/test_einsum.py,sha256=gMWQQ9yfSdEUlY0db4e-I2seD7n99xToiN-g6tB3TBE,44736
|
||||
numpy/core/tests/test_errstate.py,sha256=84S9ragkp2xqJ5s8uNEt1-4SGs99t3pkPVMHYc4QL-s,1505
|
||||
numpy/core/tests/test_extint128.py,sha256=-0zEInkai1qRhXI0bdHCguU_meD3s6Td4vUIBwirYQI,5709
|
||||
numpy/core/tests/test_function_base.py,sha256=r45sHfslz-e8qgn10PT8elVEBjeXEGk7xsaW-s4tjvY,13268
|
||||
numpy/core/tests/test_getlimits.py,sha256=2fBK7Slo67kP6bThcN9bOKmeX9gGPQVUE17jGVydoXk,4427
|
||||
numpy/core/tests/test_half.py,sha256=83O_R-Frt8mx2-7WEbmoVXLWJ5Dc5SH9n0vyPJ9Wp_I,22301
|
||||
numpy/core/tests/test_indexerrors.py,sha256=0Ku3Sy5jcaE3D2KsyDrFTvgQzMv2dyWja3hc4t5-n_k,4857
|
||||
numpy/core/tests/test_indexing.py,sha256=0-I5M5NCgDgHM58Myxp1vpOaulm7_s3n4K82_BeDihk,51366
|
||||
numpy/core/tests/test_issue14735.py,sha256=JADt-FhIdq6MaVAfVI_ACI9EpfpqylFdDrZ3A95NW1w,728
|
||||
numpy/core/tests/test_item_selection.py,sha256=0Ocg_RzeQjNqwIaPhb_Zk0ZlmqSjIBY0lHeef_H9l9U,3579
|
||||
numpy/core/tests/test_longdouble.py,sha256=C-Uaz8ho6YfvNFf5hy1HbbIfZ4mMsw0zdH1bZ60shV0,12321
|
||||
numpy/core/tests/test_machar.py,sha256=FrKeGhC7j-z9tApS_uI1E0DUkzieKIdUHMQPfCSM0t8,1141
|
||||
numpy/core/tests/test_mem_overlap.py,sha256=AyBz4pm7HhTDdlW2pq9FR1AO0E5QAYdKpBoWbOdSrco,29505
|
||||
numpy/core/tests/test_memmap.py,sha256=sFJ6uaf6ior1Hzjg7Y-VYzYPHnuZOYmNczOBa-_GgSY,7607
|
||||
numpy/core/tests/test_multiarray.py,sha256=SDfgwGmfH4lAKkCEafEsfX1ERP7tVs4jELXOInzwihI,315998
|
||||
numpy/core/tests/test_nditer.py,sha256=VYOj7XD87yjArRSxPThhMeF-Kz5tC3hmav9glLbPkKM,112098
|
||||
numpy/core/tests/test_numeric.py,sha256=0SLdicNj0ODq6bh8FpO89FZAHPTs3XpJuI3jrNxMRNs,117625
|
||||
numpy/core/tests/test_numerictypes.py,sha256=8C-_WrUHnnRcXyDjAHLevt6FZ8LO51ZVPY-ohP0FVQA,19635
|
||||
numpy/core/tests/test_overrides.py,sha256=rkP2O-8MYssKR4y6gKkNxz2LyaYvnCuHn6eOEYtJzsc,14619
|
||||
numpy/core/tests/test_print.py,sha256=Q53dqbjQQIlCzRp_1ZY0A-ptP7FlbBZVPeMeMLX0cVg,6876
|
||||
numpy/core/tests/test_records.py,sha256=CJu2VaBWsNQrYpCSS0HAV2aKv8Ow0Zfc5taegRslVW0,19651
|
||||
numpy/core/tests/test_regression.py,sha256=S8IS6iH19hsT41Ms33Bj1btMAkd2iVz2sXXHS98qcq8,88558
|
||||
numpy/core/tests/test_scalar_ctors.py,sha256=kjyYllJHyhMQGT49Xbjjc2tuFHXcQIM-PAZExMWczq8,2294
|
||||
numpy/core/tests/test_scalar_methods.py,sha256=n3eNfQ-NS6ODGfJFrww-RSKVm9QzRKeDRp0ae4TzQJ8,4220
|
||||
numpy/core/tests/test_scalarbuffer.py,sha256=M-xSWyn2ts_O4d69kWAuEEzupY6AZ6YpLI31Gxlvjn4,3556
|
||||
numpy/core/tests/test_scalarinherit.py,sha256=vIZqnyg99o3BsEQQHsiYxzedXIf4wSr9qVwqur_C-VU,1807
|
||||
numpy/core/tests/test_scalarmath.py,sha256=U-h1wclwyDaFpoASPrRq6qW2YJ1nAUW__XF6fNUzbjs,28807
|
||||
numpy/core/tests/test_scalarprint.py,sha256=SPTkscqlnApyqaOUZ5cgC2rDgGED6hPBtdRkWXxXlbE,15470
|
||||
numpy/core/tests/test_shape_base.py,sha256=B4869KCdnSxSTcTmqFhOPU2eRjmzOuG0fwVa3jrGyg8,24993
|
||||
numpy/core/tests/test_ufunc.py,sha256=LHGt9_It2-GP79B5dnEE4WhZQjTOxz99gmiVCndcHmA,81054
|
||||
numpy/core/tests/test_umath.py,sha256=Yb3SHIavyTSAJoQrNbpW9obBnSkbmosbvOa0b86DYpY,117248
|
||||
numpy/core/tests/test_umath_accuracy.py,sha256=GCvLPNmGeVCJcDpYst4Q21_0IkJGygdjMD8mBVlH_H8,2647
|
||||
numpy/core/tests/test_umath_complex.py,sha256=zvjC9COuHSZ_6BL3lz2iP7UppkNWL8ThP04fj0eulUQ,19413
|
||||
numpy/core/tests/test_unicode.py,sha256=PvWt5NLjgwulCgXakHEKMJ2pSpTLbUWgz9dZExEcSJ8,13656
|
||||
numpy/core/umath.py,sha256=KAWy8e3HN7CMF6bPfQ_MCL36bDuU7UeS39tlxaFAeto,1905
|
||||
numpy/core/umath_tests.py,sha256=Sr6VQTbH-sOMlXy-tg1-Unht7MKaaV4wtAYR6mQYNbU,455
|
||||
numpy/ctypeslib.py,sha256=_y3WO60jLJaHAaDbVj2PNF4jZ4X8EOqih14fvJffOVI,17443
|
||||
numpy/distutils/__config__.py,sha256=l-kYBVT3VpoLPbr8_dilDgG-Z1l-VOLtHHFd2vCF8fw,1646
|
||||
numpy/distutils/__init__.py,sha256=gsPLMHtEHdGbVbA9_LBfVAjnwo9n0j29aqEkCmehE7Y,1625
|
||||
numpy/distutils/__pycache__/__config__.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/_shell_utils.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/ccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/compat.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/conv_template.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/core.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/cpuinfo.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/exec_command.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/extension.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/from_template.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/intelccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/lib2def.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/line_endings.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/log.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/mingw32ccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/misc_util.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/msvc9compiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/msvccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/npy_pkg_config.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/numpy_distribution.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/pathccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/system_info.cpython-37.pyc,,
|
||||
numpy/distutils/__pycache__/unixccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/_shell_utils.py,sha256=kMLOIoimB7PdFRgoVxCIyCFsIl1pP3d0hkm_s3E9XdA,2613
|
||||
numpy/distutils/ccompiler.py,sha256=qlwbbVN_0Qsw4gpx8tCyMAy_9a146XHHkJCFRNKKvP8,27660
|
||||
numpy/distutils/command/__init__.py,sha256=l5r9aYwIEq1D-JJc8WFUxABk6Ip28FpRK_ok7wSLRZE,1098
|
||||
numpy/distutils/command/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/autodist.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/bdist_rpm.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build_clib.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build_ext.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build_py.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build_scripts.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/build_src.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/config.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/config_compiler.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/develop.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/egg_info.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/install.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/install_clib.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/install_data.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/install_headers.cpython-37.pyc,,
|
||||
numpy/distutils/command/__pycache__/sdist.cpython-37.pyc,,
|
||||
numpy/distutils/command/autodist.py,sha256=m5BGbaBPrBjbp3U_lGD35BS_yUxjarB9S9wAwTxgGvw,3041
|
||||
numpy/distutils/command/bdist_rpm.py,sha256=rhhIyFzkd5NGi6lZaft44EBPZB3zZFRDc75klJYnbw8,775
|
||||
numpy/distutils/command/build.py,sha256=0sB5J4vmeEL6CBpvCo8EVVRx9CnM3HYR1fddv7uQIh0,1448
|
||||
numpy/distutils/command/build_clib.py,sha256=YaWxa26hf_D7qI2rv-utAPQWFf99UEBfe9uJxT_YT2c,13800
|
||||
numpy/distutils/command/build_ext.py,sha256=fiTsl8O8dBODimXtG-RAVHMA764ea_aNo3gvQ_6Nv-4,26434
|
||||
numpy/distutils/command/build_py.py,sha256=7TBGLz0va0PW6sEX-aUjsXdzvhuSbJGgIrMim1JTwu4,1210
|
||||
numpy/distutils/command/build_scripts.py,sha256=ze19jHBhC3JggKLbL9wgs9I3mG7ls-V2NbykvleNwgQ,1731
|
||||
numpy/distutils/command/build_src.py,sha256=4lOovmHAoo_vDC7RkuxZccEyQUjmelxW-J8KL2wEadk,31246
|
||||
numpy/distutils/command/config.py,sha256=ZziDEAnaHskht8MYCHA0BSEcHny-byOiDPx_P8YfhZ0,20473
|
||||
numpy/distutils/command/config_compiler.py,sha256=SKJTEk_Y_Da-dVYOHAdf4c3yXxjlE1dsr-hJxY0m0PU,4435
|
||||
numpy/distutils/command/develop.py,sha256=nYM5yjhKtGKh_3wZwrvEQBLYHKldz64aU-0iSycSkXA,641
|
||||
numpy/distutils/command/egg_info.py,sha256=pdiCFQiQuIpf_xmVk9Njl7iowY9CxGn9KRbU-A9eBfg,987
|
||||
numpy/distutils/command/install.py,sha256=-y7bHvwoQdDCMGdLONawqnOWKtwQzjp5v-vSpZ7PdYU,3144
|
||||
numpy/distutils/command/install_clib.py,sha256=rGCajxbqAZjsYWg3l5B7ZRgcHJzFtYAiUHZH-DO64eU,1465
|
||||
numpy/distutils/command/install_data.py,sha256=7iWTw93ty2sBPwHwg_EEhgQhZSZe6SsKdfTS9RbUR9A,914
|
||||
numpy/distutils/command/install_headers.py,sha256=NbZwt-Joo80z_1TfxA-mIWXm2L9Mmh4ZLht7HAuveoo,985
|
||||
numpy/distutils/command/sdist.py,sha256=tHmlb0RzD8x04dswPXEua9H_b6GuHWY1V3hYkwJDKvA,799
|
||||
numpy/distutils/compat.py,sha256=xzkW8JgJgGTmye34QCYTIkLfsXBvmPu4tvgCwXNdiU0,218
|
||||
numpy/distutils/conv_template.py,sha256=0BFDE5IToW3sMVMzSRjmgENs2PAKyt7Wnvm2gyFrKnU,9750
|
||||
numpy/distutils/core.py,sha256=9GNNyWDTCqfnD7Jp2tzp9vOBVyeJmF8lsgv_xdlt59g,8230
|
||||
numpy/distutils/cpuinfo.py,sha256=onN3xteqf2G5IgKwRCYDG0VucoQY8sCTMUJ0nhc5QT0,23013
|
||||
numpy/distutils/exec_command.py,sha256=PKHgZ-hESpsBM8vnUhPknPRioAc6hLvsJzcOQoey-zo,10918
|
||||
numpy/distutils/extension.py,sha256=hXpEH2aP6ItaqNms1RW6TA1tSi0z37abrFpnyKXcjcA,3495
|
||||
numpy/distutils/fcompiler/__init__.py,sha256=-9uYUvrMwdxy0jetB-T-QHSwmWcobNRL5u0Bbj0Sm4w,40157
|
||||
numpy/distutils/fcompiler/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/absoft.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/compaq.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/environment.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/g95.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/gnu.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/hpux.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/ibm.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/intel.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/lahey.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/mips.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/nag.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/none.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/pathf95.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/pg.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/sun.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/__pycache__/vast.cpython-37.pyc,,
|
||||
numpy/distutils/fcompiler/absoft.py,sha256=AKbj5uGr8dpGDLzRIJbdUnXXAtF_5k4JqnqwTWvy-tQ,5565
|
||||
numpy/distutils/fcompiler/compaq.py,sha256=SlIcqV82SrmOSVMZCYdSyhtglSl3doAoxDCcjq1hbkE,4109
|
||||
numpy/distutils/fcompiler/environment.py,sha256=1AziWo5qkxOFClEnChTFnUMIShtNCwHQa2xidjorjKk,3078
|
||||
numpy/distutils/fcompiler/g95.py,sha256=K68RRAvOvyKoh-jsD9J4ZDsHltrGnJ_AllxULhy6iOE,1396
|
||||
numpy/distutils/fcompiler/gnu.py,sha256=oHipJDyfisSK9_Kdkv1Av8hDHY3UbLALgWfBO7cXkPA,20804
|
||||
numpy/distutils/fcompiler/hpux.py,sha256=xpNfy7vCKWPnJ5M3JPnjMAewKBAfKN5hFX3hvEL2zaM,1419
|
||||
numpy/distutils/fcompiler/ibm.py,sha256=3q-AZ3TC3VjRxNyvkeIGN81SDWtHDH9iddfd8hqk4x4,3607
|
||||
numpy/distutils/fcompiler/intel.py,sha256=WlsBtvZnLpFke7oTpMCDYFlccNSUWWkB2p422iwQURU,6861
|
||||
numpy/distutils/fcompiler/lahey.py,sha256=pJ0-xgtYwyYXgt8JlN8PFeYYEWB3vOmFkNx6UUFXzuM,1393
|
||||
numpy/distutils/fcompiler/mips.py,sha256=IxLojWR1oi0VW93PxPpHQXRwZcYffD1dunllQW2w19A,1780
|
||||
numpy/distutils/fcompiler/nag.py,sha256=eiTvBopdCgVh5-HDTryVbRrYvf4r_Sqse1mruTt5Blo,2608
|
||||
numpy/distutils/fcompiler/none.py,sha256=N6adoFAf8inIQfCDEBzK5cGI3hLIWWpHmQXux8iJDfA,824
|
||||
numpy/distutils/fcompiler/pathf95.py,sha256=Xf1JMB30PDSoNpA1Y-vKPRBeNO0XfSi0dvVQvvdjfUQ,1127
|
||||
numpy/distutils/fcompiler/pg.py,sha256=G0uNPfedmbkYWfChg1UbxBKqo25RenzSVJN1BUtRDw0,4232
|
||||
numpy/distutils/fcompiler/sun.py,sha256=21DQ6Rprr9rEp4pp7Np8kCwOc0Xfqdxa1iX0O-yPJPM,1643
|
||||
numpy/distutils/fcompiler/vast.py,sha256=LJ21-WIJsiquLtjdDaNsJqblwN5wuM2FZsYl1R40vN8,1733
|
||||
numpy/distutils/from_template.py,sha256=k5PrP9If_X8J5Fsh9vR2h0Tcj2JsZC9EsC2h8fGfaXs,8027
|
||||
numpy/distutils/intelccompiler.py,sha256=1qzr6PMxi0UkR0NUY3rt3gqww9GwJ-Gbe91yxQKlieU,4291
|
||||
numpy/distutils/lib2def.py,sha256=YyVORDcNVb-Wzn_ibQXIqeQlAdXQQsLY3XfwtvhnLnE,3710
|
||||
numpy/distutils/line_endings.py,sha256=jrYG8SnOyMN0lvQim4Kf6ChoHdtaWO0egeTUUHtPoQA,2085
|
||||
numpy/distutils/log.py,sha256=6wgjYylV3BPEYc0NV8V3MIeKHxmlj0cP5UsDjTe6YS4,2796
|
||||
numpy/distutils/mingw/gfortran_vs2003_hack.c,sha256=cbsN3Lk9Hkwzr9c-yOP2xEBg1_ml1X7nwAMDWxGjzc8,77
|
||||
numpy/distutils/mingw32ccompiler.py,sha256=k-2SpajodL5Ey8ZbmiKQpXPhABe7UD0PJilEWbh8gH4,25411
|
||||
numpy/distutils/misc_util.py,sha256=DK1mEpnYeSsF70lgCuF7H3a5z3cgVWACAiJqz-dIzrM,84707
|
||||
numpy/distutils/msvc9compiler.py,sha256=TuPYjPFp3nYQSIG1goNxuOly7o3VMx-H35POMpycB3k,2258
|
||||
numpy/distutils/msvccompiler.py,sha256=7EUlHbgdKBBJG3AzgE94AQeUFnj0HcD6M7_YPN7vdCs,1994
|
||||
numpy/distutils/npy_pkg_config.py,sha256=RQZnr78rmA-dMIxOnibBMBMsGqsZUBK3Hnx-J8UQl8I,13152
|
||||
numpy/distutils/numpy_distribution.py,sha256=lbnEW1OxWxC_1n2sKd0Q3fC5QnNdFuAkNAlvXF99zIQ,700
|
||||
numpy/distutils/pathccompiler.py,sha256=FjNouOTL8u4gLMbJW7GdT0RlsD2nXV1_SEBNZj9QdpQ,779
|
||||
numpy/distutils/setup.py,sha256=q3DcCZNkK_jHsC0imocewd4uCKQWWXjkzd4nkBmkMFI,611
|
||||
numpy/distutils/system_info.py,sha256=IcYgQX1CzFSspCUMq8yttCa2gPqsk09JhR_QWnpdDys,104759
|
||||
numpy/distutils/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/distutils/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_exec_command.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_fcompiler.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_fcompiler_gnu.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_fcompiler_intel.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_fcompiler_nagfor.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_from_template.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_mingw32ccompiler.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_misc_util.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_npy_pkg_config.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_shell_utils.cpython-37.pyc,,
|
||||
numpy/distutils/tests/__pycache__/test_system_info.cpython-37.pyc,,
|
||||
numpy/distutils/tests/test_exec_command.py,sha256=U__8FXVF4WwYdf6ucgNzgYHGgUOIKhFWG9qoCr2GxGo,7483
|
||||
numpy/distutils/tests/test_fcompiler.py,sha256=5-wYZnqXW3RRegDmnQ_dKGIjHWXURz93wxLvGnoT-AQ,1377
|
||||
numpy/distutils/tests/test_fcompiler_gnu.py,sha256=O57uCEHeQIS0XF8GloEas3OlaOfmIHDWEtgYS_q3x48,2218
|
||||
numpy/distutils/tests/test_fcompiler_intel.py,sha256=fOjd_jv0Od6bZyzFf4YpZMcnFva0OZK7yJV_4Hebb6A,1140
|
||||
numpy/distutils/tests/test_fcompiler_nagfor.py,sha256=5-Num0A3cN7_NS3BlAgYt174S-OGOWRLL9rXtv-h_fA,1176
|
||||
numpy/distutils/tests/test_from_template.py,sha256=SDYoe0XUpAayyEQDq7ZhrvEEz7U9upJDLYzhcdoVifc,1103
|
||||
numpy/distutils/tests/test_mingw32ccompiler.py,sha256=rMC8-IyBOiuZVfAoklV_KnD9qVeB_hFVvb5dStxfk08,1609
|
||||
numpy/distutils/tests/test_misc_util.py,sha256=8LIm12X83HmvgmpvJJ9inaU7FlGt287VwDM-rMKCOv4,3316
|
||||
numpy/distutils/tests/test_npy_pkg_config.py,sha256=wa0QMQ9JAye87t2gDbFaBHp0HGpNFgwxJrJ30ZrHvNk,2639
|
||||
numpy/distutils/tests/test_shell_utils.py,sha256=we9P8AvjCQky1NRDP3sXAJnNUek7rDmMR4Ar9cg9iSk,2030
|
||||
numpy/distutils/tests/test_system_info.py,sha256=gb99F0iX4pbKhjxCcdiby0bvFMzPwuUGlSj_VXnfpWk,8548
|
||||
numpy/distutils/unixccompiler.py,sha256=M7Hn3ANMo8iP-sZtSAebI3RCLp0ViRYxawAbck0hlQM,5177
|
||||
numpy/doc/__init__.py,sha256=BDpxTM0iw2F4thjBkYqjIXX57F5KfIaH8xMd67N6Jh0,574
|
||||
numpy/doc/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/basics.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/broadcasting.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/byteswapping.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/constants.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/creation.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/dispatch.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/glossary.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/indexing.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/internals.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/misc.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/structured_arrays.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/subclassing.cpython-37.pyc,,
|
||||
numpy/doc/__pycache__/ufuncs.cpython-37.pyc,,
|
||||
numpy/doc/basics.py,sha256=bWasRQIE2QkLs-1MEhr_l1TQC_ZDZ4vnUUdxYkgz8wc,11252
|
||||
numpy/doc/broadcasting.py,sha256=eh6Gs3wGnc4Qpuw59qAa1wH-oIl6YtIjPEutyLsfIPQ,5595
|
||||
numpy/doc/byteswapping.py,sha256=OaEr35v3R__QWWETIlYKfqIyf_qtUm_qxityFIQ0Zrc,5375
|
||||
numpy/doc/constants.py,sha256=_n8_OUw7ZKKod6Ho7jtC_J-tSg1pZOBfMO2avPIz_88,9291
|
||||
numpy/doc/creation.py,sha256=6FUALDWgqPWObcW-ZHDQMAnfo42I60rRR9pDpwb4-YE,5496
|
||||
numpy/doc/dispatch.py,sha256=wLLHuxD4g552N3ot5M6uucEatFUaw3WmYVUa7Sdv-sI,10012
|
||||
numpy/doc/glossary.py,sha256=sj5-0X9pjaQEmaTCHAzsqIcVJL_T201E1Ex8v90QiAc,14777
|
||||
numpy/doc/indexing.py,sha256=gF3w0dZp7tCx0vKkOSELIBdNGfL1gPZqfiW3T_vj_4Q,16119
|
||||
numpy/doc/internals.py,sha256=xYp6lv4yyV0ZIo_qCvLCAWxDa0rhu7FNrTmpXY1isO4,9669
|
||||
numpy/doc/misc.py,sha256=JWJqyiYL2qoSMVAb0QC8w_Pm5l7ZLxx2Z9D5ilgU4Uo,6191
|
||||
numpy/doc/structured_arrays.py,sha256=28B7iMDrJvM1vjEHou73gXjRcldI5MAz7r4CaEouxmk,26509
|
||||
numpy/doc/subclassing.py,sha256=Ha0H-lWMEDWGBWEeP3ZAy_SYfXaImvoUhoDr6f-hYW8,28624
|
||||
numpy/doc/ufuncs.py,sha256=xYcK2hwnAUwVgOAmVouIOKXpZuG0LHRd5CYXzNBbv84,5425
|
||||
numpy/dual.py,sha256=q17Lo5-3Y4_wNOkg7c7eqno9EdTTtvnz4XpF75HK2fw,1877
|
||||
numpy/f2py/__init__.py,sha256=jpo2CzWHgtnMcy0VWSlXR0ucIB_ZVE0ATInpDOReWFE,3138
|
||||
numpy/f2py/__main__.py,sha256=mnksAcMyLdK0So_DseQn0zalhnA7LflS7hHvo7QCVjU,134
|
||||
numpy/f2py/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/__main__.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/__version__.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/auxfuncs.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/capi_maps.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/cb_rules.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/cfuncs.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/common_rules.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/crackfortran.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/diagnose.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/f2py2e.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/f2py_testing.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/f90mod_rules.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/func2subr.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/rules.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/f2py/__pycache__/use_rules.cpython-37.pyc,,
|
||||
numpy/f2py/__version__.py,sha256=rEHB9hlWmpryhNa0EmMnlAlDCGI4GXILC9CZUEV3Wew,254
|
||||
numpy/f2py/auxfuncs.py,sha256=mDvaBo3Y8tYpXLZfq8DCv6UZ3-2JqWc_iNBZRxGesb0,21826
|
||||
numpy/f2py/capi_maps.py,sha256=buQRyA-zNXc5Azt6GLxqHTDw74gQb68BDStb7kYLs4A,31676
|
||||
numpy/f2py/cb_rules.py,sha256=un1xn8goj4jFL8FzxRwWSAzpr0CVcvwObVUKdIGJyaA,22946
|
||||
numpy/f2py/cfuncs.py,sha256=QqWwxZwW9Xk23673dI-RC6mfKVME34DCccHx4EAigTQ,45459
|
||||
numpy/f2py/common_rules.py,sha256=N2XFecZU_9iHjuL4Ehs0p92vJUcGBTSvAG4zi4zTwNE,5032
|
||||
numpy/f2py/crackfortran.py,sha256=onGQnPhpE8DyP4L4XinwHbdPwhXavetgPbKS3SG-REQ,128945
|
||||
numpy/f2py/diagnose.py,sha256=VNuNTGnQaXn9Fn2jlueYt47634CvLQSaAWJWy_Nxwnw,5295
|
||||
numpy/f2py/f2py2e.py,sha256=F9gKsZ1fI8h4lsNaBs_iqC92znNlZQMU6VjVC-AyZkA,24415
|
||||
numpy/f2py/f2py_testing.py,sha256=8rkBjUsNhBavpoBgi_bqDS8H8tBdd5BR8hrE6ENsIAo,1523
|
||||
numpy/f2py/f90mod_rules.py,sha256=YFK4MPkGHBxshAInbcapnumX3qlu0h6ya6GQpS8zWLk,9850
|
||||
numpy/f2py/func2subr.py,sha256=Oy12rqUa1vcXvzR6g8yx8jSYDwfKt5Jqiebf1QaWX1o,9224
|
||||
numpy/f2py/rules.py,sha256=sBUGQuWBmhEgCfcqCZuUmc-p433gVAbWim2wXl6z950,59120
|
||||
numpy/f2py/setup.py,sha256=bE-1KTXhPIAoAt4HXHW92chzNQc691AMpki3DQCQYAI,2434
|
||||
numpy/f2py/src/fortranobject.c,sha256=aoRy0d0vzgC6wJOAOYEadH5jExZKtTSMUeOO5HXirpA,36256
|
||||
numpy/f2py/src/fortranobject.h,sha256=ltMxueNeETQtEYSA_E7bpRtF8Jj1xuOBS-YNhjBMfOw,5227
|
||||
numpy/f2py/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/f2py/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_array_from_pyobj.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_assumed_shape.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_block_docstring.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_callback.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_common.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_compile_function.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_kind.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_mixed.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_parameter.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_quoted_character.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_return_character.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_return_complex.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_return_integer.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_return_logical.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_return_real.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_semicolon_split.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_size.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/test_string.cpython-37.pyc,,
|
||||
numpy/f2py/tests/__pycache__/util.cpython-37.pyc,,
|
||||
numpy/f2py/tests/src/array_from_pyobj/wrapmodule.c,sha256=8x5-BYpwiT0fYXwMpwyvu8IaESE1ABIWJNXOkk81QMk,7768
|
||||
numpy/f2py/tests/src/assumed_shape/.f2py_f2cmap,sha256=But9r9m4iL7EGq_haMW8IiQ4VivH0TgUozxX4pPvdpE,29
|
||||
numpy/f2py/tests/src/assumed_shape/foo_free.f90,sha256=oBwbGSlbr9MkFyhVO2aldjc01dr9GHrMrSiRQek8U64,460
|
||||
numpy/f2py/tests/src/assumed_shape/foo_mod.f90,sha256=rfzw3QdI-eaDSl-hslCgGpd5tHftJOVhXvb21Y9Gf6M,499
|
||||
numpy/f2py/tests/src/assumed_shape/foo_use.f90,sha256=rmT9k4jP9Ru1PLcGqepw9Jc6P9XNXM0axY7o4hi9lUw,269
|
||||
numpy/f2py/tests/src/assumed_shape/precision.f90,sha256=r08JeTVmTTExA-hYZ6HzaxVwBn1GMbPAuuwBhBDtJUk,130
|
||||
numpy/f2py/tests/src/common/block.f,sha256=GQ0Pd-VMX3H3a-__f2SuosSdwNXHpBqoGnQDjf8aG9g,224
|
||||
numpy/f2py/tests/src/kind/foo.f90,sha256=zIHpw1KdkWbTzbXb73hPbCg4N2Htj3XL8DIwM7seXpo,347
|
||||
numpy/f2py/tests/src/mixed/foo.f,sha256=90zmbSHloY1XQYcPb8B5d9bv9mCZx8Z8AMTtgDwJDz8,85
|
||||
numpy/f2py/tests/src/mixed/foo_fixed.f90,sha256=pxKuPzxF3Kn5khyFq9ayCsQiolxB3SaNtcWaK5j6Rv4,179
|
||||
numpy/f2py/tests/src/mixed/foo_free.f90,sha256=fIQ71wrBc00JUAVUj_r3QF9SdeNniBiMw6Ly7CGgPWU,139
|
||||
numpy/f2py/tests/src/parameter/constant_both.f90,sha256=-bBf2eqHb-uFxgo6Q7iAtVUUQzrGFqzhHDNaxwSICfQ,1939
|
||||
numpy/f2py/tests/src/parameter/constant_compound.f90,sha256=re7pfzcuaquiOia53UT7qNNrTYu2euGKOF4IhoLmT6g,469
|
||||
numpy/f2py/tests/src/parameter/constant_integer.f90,sha256=nEmMLitKoSAG7gBBEQLWumogN-KS3DBZOAZJWcSDnFw,612
|
||||
numpy/f2py/tests/src/parameter/constant_non_compound.f90,sha256=IcxESVLKJUZ1k9uYKoSb8Hfm9-O_4rVnlkiUU2diy8Q,609
|
||||
numpy/f2py/tests/src/parameter/constant_real.f90,sha256=quNbDsM1Ts2rN4WtPO67S9Xi_8l2cXabWRO00CPQSSQ,610
|
||||
numpy/f2py/tests/src/regression/inout.f90,sha256=CpHpgMrf0bqA1W3Ozo3vInDz0RP904S7LkpdAH6ODck,277
|
||||
numpy/f2py/tests/src/size/foo.f90,sha256=IlFAQazwBRr3zyT7v36-tV0-fXtB1d7WFp6S1JVMstg,815
|
||||
numpy/f2py/tests/src/string/char.f90,sha256=ihr_BH9lY7eXcQpHHDQhFoKcbu7VMOX5QP2Tlr7xlaM,618
|
||||
numpy/f2py/tests/test_array_from_pyobj.py,sha256=gLSX9JuF_8NNboUQRzRF3IYC7pWJ06Mw8m6sy2wQvCQ,22083
|
||||
numpy/f2py/tests/test_assumed_shape.py,sha256=zS_LgeakxCOrb4t5m74pX86eBbBo9GhgF4Pnh2lXDig,1650
|
||||
numpy/f2py/tests/test_block_docstring.py,sha256=ld1G4pBEi8F4GrkYDpNBJKJdlfDANNI6tiKfBQS9I6w,647
|
||||
numpy/f2py/tests/test_callback.py,sha256=iRV0nslbJKovMmXPZed-w9QhNJYZfEo07p_8qneDDbU,3986
|
||||
numpy/f2py/tests/test_common.py,sha256=tLmi1JrfwFdTcBlUInxTn04f6Hf8eSB00sWRoKJvHrM,868
|
||||
numpy/f2py/tests/test_compile_function.py,sha256=WvOcUNqmRhf4KjplgcP-5s5a03020qhgfcjrhoGeaUk,4500
|
||||
numpy/f2py/tests/test_kind.py,sha256=G6u6EWjVHenmPju3RQCa9bSeCJGDul3VyXFgp2_Yc7w,1078
|
||||
numpy/f2py/tests/test_mixed.py,sha256=jojC-g_G21G-ACCqlYFuOxZokx8iHikBcmxQWEdWSSc,902
|
||||
numpy/f2py/tests/test_parameter.py,sha256=_wX-gM-XGxA_mfDBM8np9NLjYiCF6LJbglwKf09JbdM,3976
|
||||
numpy/f2py/tests/test_quoted_character.py,sha256=Q0oDtl3STQqzSap5VYPpfzJJ72NtQchm6Vg-bwuoBl4,1029
|
||||
numpy/f2py/tests/test_regression.py,sha256=lPQUKx5RrVtGhyIvIcWS5GgA_CgQypabuuna-Q1z3hs,764
|
||||
numpy/f2py/tests/test_return_character.py,sha256=4a_JeEtY1AkT-Q-01iaZyqWLDGmZGW17d88JNFZoXTc,3864
|
||||
numpy/f2py/tests/test_return_complex.py,sha256=FO4oflCncNIft36R3Fe9uiyDtryiB-_d2PLMH3x64I4,4779
|
||||
numpy/f2py/tests/test_return_integer.py,sha256=cyyAbyHUepwYeyXlgIa2FD4B7A2dHnpp2jwx8ZDQiZQ,4749
|
||||
numpy/f2py/tests/test_return_logical.py,sha256=u3dazkOU1oz9kZKYXBd2GWaEr02MYfjGdLrb7kT8MiY,4974
|
||||
numpy/f2py/tests/test_return_real.py,sha256=QVRKzeO44ZuIlV8EycmtXaHT_i0rnX2bi3rOh7py4GM,5619
|
||||
numpy/f2py/tests/test_semicolon_split.py,sha256=v7YFx-oTbXUZZ4qjdblCYeVVtkD1YYa4CbuEf2LTOLs,1580
|
||||
numpy/f2py/tests/test_size.py,sha256=GV7S4tl8FhK60T_EpX86yVQo_bMVTdyOTB8fGVIQ24o,1352
|
||||
numpy/f2py/tests/test_string.py,sha256=LTQC9AFVsUAuJVFuH3Wltl-NfFIilVl0KvBNnEgdnmo,676
|
||||
numpy/f2py/tests/util.py,sha256=Wa3lwxZYuwByUkuWYq8phvikYypQehRzKOXd_0vYPPg,9764
|
||||
numpy/f2py/use_rules.py,sha256=L6nTSJnxougQ2PVAzR7s-1spidcfDp9tzLIFAJe3gUI,3652
|
||||
numpy/fft/__init__.py,sha256=zhieVvDXjjfIEHlZo_ta3OH6qFANuy_Wl1Arh1crX28,7587
|
||||
numpy/fft/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/fft/__pycache__/_pocketfft.cpython-37.pyc,,
|
||||
numpy/fft/__pycache__/helper.cpython-37.pyc,,
|
||||
numpy/fft/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/fft/_pocketfft.py,sha256=TRYWW7fZB_ubxOwmRYE-Ok14N-ryllJh1W3gMzd1Ha0,47832
|
||||
numpy/fft/_pocketfft_internal.cpython-37m-x86_64-linux-gnu.so,sha256=zUEBGzvj-_s8JWAW_3c2lQGWBoIcffG50tQ9L0ax6lI,386852
|
||||
numpy/fft/helper.py,sha256=vrKPnvFngxaag3nQA-OWzB9qsQctBk6vXaKsuQVMU0k,6271
|
||||
numpy/fft/setup.py,sha256=XT8tvC_P5KUDyBgP5S6KWc63-Fmu_L86c2u-KDLWqxo,542
|
||||
numpy/fft/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/fft/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/fft/tests/__pycache__/test_helper.cpython-37.pyc,,
|
||||
numpy/fft/tests/__pycache__/test_pocketfft.cpython-37.pyc,,
|
||||
numpy/fft/tests/test_helper.py,sha256=Stwrak0FqjR3Wn41keelozyF_M45PL3jdhF3PjZVyIA,6326
|
||||
numpy/fft/tests/test_pocketfft.py,sha256=3rWWfY23nJyv7X_CUc8JWAGxTtug1_97scsjbFaujEg,9789
|
||||
numpy/lib/__init__.py,sha256=OcdEAprMAoTSp8psgeWH9jmZnh1QbkT29uY7Z4qcFzQ,1899
|
||||
numpy/lib/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/_datasource.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/_iotools.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/_version.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/arraypad.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/arraysetops.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/arrayterator.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/financial.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/format.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/function_base.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/histograms.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/index_tricks.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/mixins.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/nanfunctions.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/npyio.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/polynomial.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/recfunctions.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/scimath.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/shape_base.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/stride_tricks.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/twodim_base.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/type_check.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/ufunclike.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/user_array.cpython-37.pyc,,
|
||||
numpy/lib/__pycache__/utils.cpython-37.pyc,,
|
||||
numpy/lib/_datasource.py,sha256=jYNwX7pKyn-N9KzpSmrfKWbT5dXci7-VtDk4pL-vCDs,25521
|
||||
numpy/lib/_iotools.py,sha256=Nkv-GMaSyzHfkZvLSJLLQ-8uyMRsdyy6seM-Mn0gqCs,32738
|
||||
numpy/lib/_version.py,sha256=BIGo2hWBan0Qxt5C3JoPi4TXLPUv0T-FU9366Qu_5XY,4972
|
||||
numpy/lib/arraypad.py,sha256=VNvHoD3NvnxbQ1rzujmVDWRGMt4bX-4-87g0wDaVvxA,31386
|
||||
numpy/lib/arraysetops.py,sha256=7iWnvYY9aUmr0J4aVqFf3hHH1G9gC-kUClD5KZbGmo8,24231
|
||||
numpy/lib/arrayterator.py,sha256=FTXwwzs5xzPxpUbZmE3J0ChjgesJD9TiqBA_bCI05SI,7207
|
||||
numpy/lib/financial.py,sha256=YfHWv9em4_ZQg4m-AWSKJPcT43lilBQWzcX52c_q0j8,31590
|
||||
numpy/lib/format.py,sha256=QzW9kEcjjmDw8mPmEQk8_2NlcCxfb_lljy8ro_KxGf4,31632
|
||||
numpy/lib/function_base.py,sha256=5FwWTpP_ShwjjdgXQQOzeq5I04WvYUyow3YgcS5qXRY,156177
|
||||
numpy/lib/histograms.py,sha256=zSYkRkTfX_3PsDIdzarTimVChFxKooPxV0LYOkldY6g,39967
|
||||
numpy/lib/index_tricks.py,sha256=dW4TEm_KcPtBYB9EQWCFKogVai3kXkPOgeVVIeBRlJo,29706
|
||||
numpy/lib/mixins.py,sha256=6huDUGjzCFoeKrCS2pGnMPoQxpgWyoriIJ3xVwoqugQ,7233
|
||||
numpy/lib/nanfunctions.py,sha256=QPtwAIWQDv1IEilpyaKlpVSlqikn0djbMeXAhFJsc0E,58955
|
||||
numpy/lib/npyio.py,sha256=6Cwwet8pQusDj1msyv5qjI6lxLzgD5E2Iuvtlu6Zj0s,88031
|
||||
numpy/lib/polynomial.py,sha256=urWjdZ8dAvkFDKR-vkSImJIskhTXe9XlVCly0aCX7vM,40755
|
||||
numpy/lib/recfunctions.py,sha256=2hsE8JD4RI-HHL7dPG7ku6c9zFBeSJ2-7Z17Q3NiodI,56875
|
||||
numpy/lib/scimath.py,sha256=hulwijLlO0q230XOrD5SRjlTY-9O7c1u68CeNjTgNl8,14789
|
||||
numpy/lib/setup.py,sha256=os9eV9wSzwTQlfxeoQ33gYQ4wOj1_6EvqcROc8PyGbE,379
|
||||
numpy/lib/shape_base.py,sha256=2G5a_-b-8iRG9liNMc4yabCPKHniN9QHQC0HgATA4QE,38204
|
||||
numpy/lib/stride_tricks.py,sha256=rwTBZ3o0AS2KxwOLGLDmk_5w6EVUi-X1P9sDXpM7yqM,9291
|
||||
numpy/lib/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/lib/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test__datasource.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test__iotools.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test__version.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_arraypad.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_arraysetops.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_arrayterator.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_financial.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_format.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_function_base.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_histograms.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_index_tricks.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_io.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_mixins.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_nanfunctions.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_packbits.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_polynomial.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_recfunctions.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_shape_base.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_stride_tricks.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_twodim_base.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_type_check.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_ufunclike.cpython-37.pyc,,
|
||||
numpy/lib/tests/__pycache__/test_utils.cpython-37.pyc,,
|
||||
numpy/lib/tests/data/py2-objarr.npy,sha256=F4cyUC-_TB9QSFLAo2c7c44rC6NUYIgrfGx9PqWPSKk,258
|
||||
numpy/lib/tests/data/py2-objarr.npz,sha256=xo13HBT0FbFZ2qvZz0LWGDb3SuQASSaXh7rKfVcJjx4,366
|
||||
numpy/lib/tests/data/py3-objarr.npy,sha256=pTTVh8ezp-lwAK3fkgvdKU8Arp5NMKznVD-M6Ex_uA0,341
|
||||
numpy/lib/tests/data/py3-objarr.npz,sha256=qQR0gS57e9ta16d_vCQjaaKM74gPdlwCPkp55P-qrdw,449
|
||||
numpy/lib/tests/data/python3.npy,sha256=X0ad3hAaLGXig9LtSHAo-BgOvLlFfPYMnZuVIxRmj-0,96
|
||||
numpy/lib/tests/data/win64python2.npy,sha256=agOcgHVYFJrV-nrRJDbGnUnF4ZTPYXuSeF-Mtg7GMpc,96
|
||||
numpy/lib/tests/test__datasource.py,sha256=5LwfmvIysaLHlCYkmsj46S7YRF2zRG4BmKSjjJr6fdE,11463
|
||||
numpy/lib/tests/test__iotools.py,sha256=P0FnwqfgYV4Nj9oEnwGm-vXYTS0A_5FRZNxFzvsL2qg,13885
|
||||
numpy/lib/tests/test__version.py,sha256=eCeeSqb8G3WNtCgkM3XGz9Zszyye-KFDlNQ7EY2J_UY,2055
|
||||
numpy/lib/tests/test_arraypad.py,sha256=5MNlIBrm3iLnJz0YPMvfmtTdG4utCBiNu_k0klKDgBA,54140
|
||||
numpy/lib/tests/test_arraysetops.py,sha256=M-pzWVCkCuFi0a8OpUOoXYz7OxMLud5dLPLRmo7cMyk,22367
|
||||
numpy/lib/tests/test_arrayterator.py,sha256=run7iWWbvoHGGsDv_uB6G8QENFzOCSgUIxAMVp7ZMu4,1357
|
||||
numpy/lib/tests/test_financial.py,sha256=NZ3Q_wXZr6YBBkK2uElV0Q7ko9GQdN6TEvScQTuXWpc,18390
|
||||
numpy/lib/tests/test_format.py,sha256=xd-EyPq4B2sL6wNNK1MnaSD6SefZuV6AtDHELri5pe8,38984
|
||||
numpy/lib/tests/test_function_base.py,sha256=0Jnax_jByCwTG2tLP35i2-2gwSuhUx0tYAVicUOBxg0,123208
|
||||
numpy/lib/tests/test_histograms.py,sha256=zljzM6vpMhE7pskptqxeC_sYMGlUW5k2GUJ2AZyY5oo,33761
|
||||
numpy/lib/tests/test_index_tricks.py,sha256=sVyE_b2FyXEe_FFUVcw2zCjb_d5F8DBvWvm8g3qpLOs,18454
|
||||
numpy/lib/tests/test_io.py,sha256=gn5UPy6466E8lVsWFhEGVIHPocVtAc_5OR_1H4VzzJ0,100409
|
||||
numpy/lib/tests/test_mixins.py,sha256=YNIKF716Jz7V8FJ8Zzww_F6laTD8j3A6SBxCXqt6rAQ,7233
|
||||
numpy/lib/tests/test_nanfunctions.py,sha256=qJAl3wlw4hrRmBwsIn-9iAfsVyXngGJ-P6tvpFKXaF4,38207
|
||||
numpy/lib/tests/test_packbits.py,sha256=D0lwihTICKvUm9LTIIs7R16kVK-yZddeCAGnJk6TkEM,17612
|
||||
numpy/lib/tests/test_polynomial.py,sha256=NhCF2nGmc43KraPfR6LCBD8M-i-xZKwIsLYPFXNi0WE,10087
|
||||
numpy/lib/tests/test_recfunctions.py,sha256=K65UOmcZNUtLGgvI_8gzktZn2Q_B6mC6oA6c7ZG2Ztc,41335
|
||||
numpy/lib/tests/test_regression.py,sha256=JeWbMHmGCoVeFtMvd30SVZCpXD9sxnRaI1Dy2wpr5iA,8483
|
||||
numpy/lib/tests/test_shape_base.py,sha256=3iwnWAGnerQp4B5Bx-_vTx00E7ZVzjMw6_eqj6H7wdY,24513
|
||||
numpy/lib/tests/test_stride_tricks.py,sha256=KCC5XRbKzOXvWo3Pboj9oJ9b0Fw3dCh7bY0HLAOP0_8,17110
|
||||
numpy/lib/tests/test_twodim_base.py,sha256=gcrJ43TvAKVqTdWGDx9Dcs79oZtiT6lswS3FVcpt3QQ,18504
|
||||
numpy/lib/tests/test_type_check.py,sha256=c9RaZtw85vqRVzsOV1lAgdmFm9V5VgRRfpn-X8Fcv3E,15398
|
||||
numpy/lib/tests/test_ufunclike.py,sha256=DdOvBcFD33OFUMsxhnGso7q18M1NAlG-2Zn1gWlu3XM,3352
|
||||
numpy/lib/tests/test_utils.py,sha256=4v1ZRTeBbdje3MpnRCVNtRJLEUgpT2qJblUMVB1C89A,3456
|
||||
numpy/lib/twodim_base.py,sha256=UIeJOwE6p-EjgUS0L9kJa1aZAQIZqUkmZtqArE7h5WY,27642
|
||||
numpy/lib/type_check.py,sha256=fYWhY6IsmBebOIk2XlJZ7ZfhyVO98Q8LtqYlFKIrNDI,19776
|
||||
numpy/lib/ufunclike.py,sha256=CB_OBC_pbhtNbuheM-21DIxMArdXIhiyaaSOMN42ZvA,7294
|
||||
numpy/lib/user_array.py,sha256=7nJPlDfP-04Lcq8iH_cqBbSEsx5cHCcj-2Py-oh-5t0,7817
|
||||
numpy/lib/utils.py,sha256=0yugAVeRUsElIahjKs53RkAxNEAGVCtf7ohKHS41tKA,34082
|
||||
numpy/linalg/__init__.py,sha256=qD8UCWbi9l_ik7PQIqw9ChnXo1_3CSZre18px1wIA-s,1825
|
||||
numpy/linalg/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/linalg/__pycache__/linalg.cpython-37.pyc,,
|
||||
numpy/linalg/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/linalg/_umath_linalg.cpython-37m-x86_64-linux-gnu.so,sha256=JyTtpoRAptApG5VgzIEl76P3oRSLvMUD8du2v7Vpb30,880560
|
||||
numpy/linalg/lapack_lite.cpython-37m-x86_64-linux-gnu.so,sha256=7N_I6kaqWZ6I23cWzrVMZX9gz1PZb_qENRdXbSR74dA,112928
|
||||
numpy/linalg/linalg.py,sha256=QbOcm4NDesoEAl7LpPXo23orid-lY2_fITxD3MCj1RI,86274
|
||||
numpy/linalg/setup.py,sha256=vTut50wTnLpnWl6i-P1BY2EjikVHrnhwOgpNAF-Lgig,2003
|
||||
numpy/linalg/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/linalg/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/linalg/tests/__pycache__/test_build.cpython-37.pyc,,
|
||||
numpy/linalg/tests/__pycache__/test_deprecations.cpython-37.pyc,,
|
||||
numpy/linalg/tests/__pycache__/test_linalg.cpython-37.pyc,,
|
||||
numpy/linalg/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/linalg/tests/test_build.py,sha256=xKcJ8JmGk-zTqxxMhDX5GFsw-ptn8uwOUOcxaTUuPHc,1704
|
||||
numpy/linalg/tests/test_deprecations.py,sha256=eGYDVF3rmGQyDEMGOc-p_zc84Cx1I3jQPyaJe7xOvEc,706
|
||||
numpy/linalg/tests/test_linalg.py,sha256=jhwNPXFJN9PLeRmoZwGZ9SBGEkXDvm60pXJJYCLJNFc,72621
|
||||
numpy/linalg/tests/test_regression.py,sha256=zz7lprqDg7yU-z1d6AOdCDH3Tjqgw82QGiaPM7peixY,5671
|
||||
numpy/ma/__init__.py,sha256=fcmMCElT3MmCkjIGVhXyEAbjuWe_j1NVUiE65eAMvy0,1470
|
||||
numpy/ma/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/bench.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/core.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/extras.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/mrecords.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/testutils.cpython-37.pyc,,
|
||||
numpy/ma/__pycache__/timer_comparison.cpython-37.pyc,,
|
||||
numpy/ma/bench.py,sha256=q3y_e1wpHVEdg0iIxrBshWVt2LOFfYi6q-eIJ3RSVrU,4942
|
||||
numpy/ma/core.py,sha256=ljE2IcaC0KvnBp6M_F1pxPJfCCuLkdIk2RVXUxgZvHk,260311
|
||||
numpy/ma/extras.py,sha256=-egPiF1vXSRRb3m5sbLG-tU0c8sVV2ODdxj3p1Ws8Bk,58651
|
||||
numpy/ma/mrecords.py,sha256=0kbmSJKEbyHQEjqWiFZy64PaUfstRERbewwnWdyW8e8,26822
|
||||
numpy/ma/setup.py,sha256=zkieH8BeiGVXl3Wlt_WeP9kciZlyAZY20DDu4SGk4b4,429
|
||||
numpy/ma/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/ma/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_core.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_deprecations.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_extras.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_mrecords.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_old_ma.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/ma/tests/__pycache__/test_subclassing.cpython-37.pyc,,
|
||||
numpy/ma/tests/test_core.py,sha256=5tiE3vmxdFBV4SXK9cPftUwfPlj8hEhNZ4ydq6EatqM,196581
|
||||
numpy/ma/tests/test_deprecations.py,sha256=StN-maPV6dwIPn1LmJ_Fd9l_Ysrbzvl8BZy6zYeUru8,2340
|
||||
numpy/ma/tests/test_extras.py,sha256=tw6htO0iACppdtcQ5Hc6fLVNlXWcxO72nCp7QKjUjn0,66087
|
||||
numpy/ma/tests/test_mrecords.py,sha256=G46t_9Kzo7wNv1N_Lb3zG4s6LMuXVir1NtMKDaKVdn8,19960
|
||||
numpy/ma/tests/test_old_ma.py,sha256=5Wned1evtBm2k1yFjcAnrKTvDjIL2Vatma1cH7ks1Tg,32373
|
||||
numpy/ma/tests/test_regression.py,sha256=Kq1OAjXuAyTv0J7UcWmQNd-nk8aFcU-5Vu84HPPK2Fs,3156
|
||||
numpy/ma/tests/test_subclassing.py,sha256=l4srPFjFT0jR51e9hbumLCawR9sqQ4cdH4QwY1t6Xek,12966
|
||||
numpy/ma/testutils.py,sha256=meyy8_0sx4g2sebsVO1PrFSc6ogLzEU7vjOuu2VjY1U,10365
|
||||
numpy/ma/timer_comparison.py,sha256=BCWzBW_z6M3k3Mfe-7ThiPEBF4a12J4ZXGIxFxXkY9c,15548
|
||||
numpy/matlib.py,sha256=CgnA_dNYnxFMqfwycoimMgGzjICJC1u6XRpwPEyPvXI,9757
|
||||
numpy/matrixlib/__init__.py,sha256=W-2bi7zuMWQY5U1ikwfaBPubrcYkbxzPzzIeYz3RYPA,284
|
||||
numpy/matrixlib/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/matrixlib/__pycache__/defmatrix.cpython-37.pyc,,
|
||||
numpy/matrixlib/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/matrixlib/defmatrix.py,sha256=r_rYp4ODTS9Rdw8EBIa0wS7NJ99ygDCzzGUPnI2ziMY,30713
|
||||
numpy/matrixlib/setup.py,sha256=7DS-rWnyWlLTuOj31UuhkyW8QhLQ7KD5wirtWT_DUhc,437
|
||||
numpy/matrixlib/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/matrixlib/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_defmatrix.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_interaction.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_masked_matrix.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_matrix_linalg.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_multiarray.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_numeric.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/matrixlib/tests/test_defmatrix.py,sha256=FRkFPpDpgUEzEAgShORCVhPOuqclxBftHyEW5z2oV4o,15315
|
||||
numpy/matrixlib/tests/test_interaction.py,sha256=y0ldcMIKCeT_tRo_uON6Cvxuff-M4MxmqnzA0kDFHYU,12179
|
||||
numpy/matrixlib/tests/test_masked_matrix.py,sha256=jbmuf5BQjsae6kXZtH8XJ8TI5JJYDIZ0PZhGKBbxnmY,8925
|
||||
numpy/matrixlib/tests/test_matrix_linalg.py,sha256=XYsAcC02YgvlfqAQOLY2hOuggeRlRhkztNsLYWGb4QQ,2125
|
||||
numpy/matrixlib/tests/test_multiarray.py,sha256=jM-cFU_ktanoyJ0ScRYv5xwohhE3pKpVhBBtd31b-IQ,628
|
||||
numpy/matrixlib/tests/test_numeric.py,sha256=YPq5f11MUAV6WcLQbl8xKWcm17lMj9SJ09mamqGCpxA,515
|
||||
numpy/matrixlib/tests/test_regression.py,sha256=ou1TP5bFNpjRaL2-zQxzS11ChwvAkCVp3k71SBtOO9M,1001
|
||||
numpy/polynomial/__init__.py,sha256=boBgsbz2Rr49pBTyGNT3TnLRTPSauyjBNeCVGek7oUM,1134
|
||||
numpy/polynomial/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/_polybase.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/chebyshev.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/hermite.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/hermite_e.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/laguerre.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/legendre.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/polynomial.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/polyutils.cpython-37.pyc,,
|
||||
numpy/polynomial/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/polynomial/_polybase.py,sha256=HOIXM-w5L_TVFdWR72K_RtidpR8zHqNARoeVwf6gor8,33093
|
||||
numpy/polynomial/chebyshev.py,sha256=5pr-j0wWlKnNki-vaM2gV7Sni9FXtaomVMhYH01pw_I,63287
|
||||
numpy/polynomial/hermite.py,sha256=jTv8jCvVA5_bQ6AqLo5yF8n1-8mWpT_M1vET2BlKSdY,52671
|
||||
numpy/polynomial/hermite_e.py,sha256=03sKE5Osr1DIVUL3eMKmzKU0GGKUk7lEJM5K2_LRXG0,52853
|
||||
numpy/polynomial/laguerre.py,sha256=CSbhTmnKKIYGMLoahlQbFpPIvAvXQ8aQ6lQzy9ySmic,51106
|
||||
numpy/polynomial/legendre.py,sha256=4TjHkvFH8gPA2P_ncR0GyBYjp4YF5nYWVjmkkWa6DyE,52507
|
||||
numpy/polynomial/polynomial.py,sha256=_A6i4ZQKeOVy_g4Wui6f8ubbWbd0tPDpNS5VCbvqtEs,48706
|
||||
numpy/polynomial/polyutils.py,sha256=gvkAyz9vYqVAqu-X9NIVmXnZ3Lap0wGkWUHdHue3ktI,23243
|
||||
numpy/polynomial/setup.py,sha256=PKIUV6Jh7_0jBboPp3IHPmp6LWVs4tbIkdu_FtmI_5U,385
|
||||
numpy/polynomial/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/polynomial/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_chebyshev.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_classes.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_hermite.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_hermite_e.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_laguerre.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_legendre.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_polynomial.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_polyutils.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/__pycache__/test_printing.cpython-37.pyc,,
|
||||
numpy/polynomial/tests/test_chebyshev.py,sha256=Vda4vCJtdIAPs0tsbXexnw4kaaou30FjZ0gQxNxOcz8,20716
|
||||
numpy/polynomial/tests/test_classes.py,sha256=18hEEMQHB3o1roK4nlPrawv9pFif2gur6lkEBoxZAFg,20370
|
||||
numpy/polynomial/tests/test_hermite.py,sha256=3zU7T69fuFvn5gDOG34SCnyDm_pVvTVlcpUMlhoU2V0,18755
|
||||
numpy/polynomial/tests/test_hermite_e.py,sha256=06gCjnh0s-1h7jWpmJyjQdfzAK_4kywto7hHuQ7NmJQ,19089
|
||||
numpy/polynomial/tests/test_laguerre.py,sha256=O5zxZQ5GIOZrx4b0ttCUoDxmb3ifhwDRcq--hYyt3zU,17689
|
||||
numpy/polynomial/tests/test_legendre.py,sha256=2y8xF4PdU-uS7OjuIzMC6DAeVc9mlW83xj_N4NSGhSY,18453
|
||||
numpy/polynomial/tests/test_polynomial.py,sha256=MD4xxU3yWSbMK9B5wpYLQOeWZj0mH7g9p9ifMVhPQF4,20080
|
||||
numpy/polynomial/tests/test_polyutils.py,sha256=GzRz3leypd2UrWE-EwuIWL0lbbj6ks6Mjli3tozDN9U,3081
|
||||
numpy/polynomial/tests/test_printing.py,sha256=_7O-05q3JEjdxmuzBdWxligQVdC6qGygKmbhfiYW9KQ,2067
|
||||
numpy/random/__init__.pxd,sha256=-E4OlHPfdF_aLa7hXIZzBBBkTIK86tR9qXnKMeUnhcg,432
|
||||
numpy/random/__init__.py,sha256=yX9S3EpGEUAnSiwoBrccxFZngr5pLmbEx6dgLPH1r5s,7527
|
||||
numpy/random/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/random/__pycache__/_pickle.cpython-37.pyc,,
|
||||
numpy/random/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/random/_bit_generator.cpython-37m-x86_64-linux-gnu.so,sha256=bo3-lJOD40NhsqNIdaWdkOmw_x1WlTdfsyYCA1QDqqg,839767
|
||||
numpy/random/_bit_generator.pxd,sha256=nZRRH1h_FhR-YTE_Y0kJ5n_JyuFxFHA4II_K0sqNH3k,1005
|
||||
numpy/random/_bounded_integers.cpython-37m-x86_64-linux-gnu.so,sha256=U3RpwORvqwAOjiKCPKKiFXPfjIr_Rp4OAg9BAdV6fQU,2071041
|
||||
numpy/random/_bounded_integers.pxd,sha256=hcoucPH5hkFEM2nm12zYO-5O_Rt8RujEXT5YWuAzl1Q,1669
|
||||
numpy/random/_common.cpython-37m-x86_64-linux-gnu.so,sha256=yVwyV6I9ArJ16xL7RU78bGT5W6ix1QxQDpi6eF8c-Sg,1336140
|
||||
numpy/random/_common.pxd,sha256=jJSsc_MpqkizibG03OLe7gRN3DMfwGMjDkbG-utvDKM,4690
|
||||
numpy/random/_examples/cffi/__pycache__/extending.cpython-37.pyc,,
|
||||
numpy/random/_examples/cffi/__pycache__/parse.cpython-37.pyc,,
|
||||
numpy/random/_examples/cffi/extending.py,sha256=xSla3zWqxi6Hj48EvnYfD3WHfE189VvC4XsKu4_T_Iw,880
|
||||
numpy/random/_examples/cffi/parse.py,sha256=v0eB67u_SgfqSflvuB31YqHUZWh6XscNcLKaCn7fCaw,1515
|
||||
numpy/random/_examples/cython/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/random/_examples/cython/extending.pyx,sha256=8nSM_iELliQYfp0Hj9VzD2XZAfaRdo7iJTNP5gLRn-k,2292
|
||||
numpy/random/_examples/cython/extending_distributions.pyx,sha256=o6Pd8XP7jvMaZeLaJZTN9Vp0_5rm4M_xF16GmJE-6yw,2332
|
||||
numpy/random/_examples/cython/setup.py,sha256=68K-GEXqTLGxXyMOttMH6nwMN6zcvLjY-lWrVml2jPk,1042
|
||||
numpy/random/_examples/numba/__pycache__/extending.cpython-37.pyc,,
|
||||
numpy/random/_examples/numba/__pycache__/extending_distributions.cpython-37.pyc,,
|
||||
numpy/random/_examples/numba/extending.py,sha256=L-ELWpGbqBC2WSiWHFatfTnRxu2a66x7vKIoU2zDx_U,1977
|
||||
numpy/random/_examples/numba/extending_distributions.py,sha256=Jnr9aWkHyIWygNbdae32GVURK-5T9BTGhuExRpvve98,2034
|
||||
numpy/random/_generator.cpython-37m-x86_64-linux-gnu.so,sha256=Pchb0c-AAKAi_x5bCmnDfP_Y8tYF8zyqVKC0kN1MyN0,3186082
|
||||
numpy/random/_mt19937.cpython-37m-x86_64-linux-gnu.so,sha256=_LqkYcQTdEIjyRLCpps_OBFmUqTCVAbWa4nMGol-yBw,441605
|
||||
numpy/random/_pcg64.cpython-37m-x86_64-linux-gnu.so,sha256=bzbnVd3lkge4S81m14zEkUCRYkuiquFw2OQ4OOd3Il4,313867
|
||||
numpy/random/_philox.cpython-37m-x86_64-linux-gnu.so,sha256=Mbz6bfYfW8F_4maVprTXhKva0_f6P9yrQEFuXKmiODw,378664
|
||||
numpy/random/_pickle.py,sha256=QJRCkyDVi7xJEx-XMcYlMoLwi2dPoz8jD_6NFo1nU-4,2247
|
||||
numpy/random/_sfc64.cpython-37m-x86_64-linux-gnu.so,sha256=6LnbG0QZQDufnGpL-IfiBKlVLMmwI379lsdY_XHJMlI,226830
|
||||
numpy/random/mtrand.cpython-37m-x86_64-linux-gnu.so,sha256=2W2kth8pl-ZvaTeL4AnUZ7ukUIvGTYm_NbgP6BX1PtA,2359706
|
||||
numpy/random/setup.py,sha256=OvadBHJDLR-VmfF0Ls598MMpP9kMfzkdtrei-sEpK4Q,5715
|
||||
numpy/random/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/random/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_direct.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_extending.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_generator_mt19937.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_generator_mt19937_regressions.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_random.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_randomstate.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_randomstate_regression.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_regression.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_seed_sequence.cpython-37.pyc,,
|
||||
numpy/random/tests/__pycache__/test_smoke.cpython-37.pyc,,
|
||||
numpy/random/tests/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/random/tests/data/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/random/tests/data/mt19937-testset-1.csv,sha256=Xkef402AVB-eZgYQkVtoxERHkxffCA9Jyt_oMbtJGwY,15844
|
||||
numpy/random/tests/data/mt19937-testset-2.csv,sha256=nsBEQNnff-aFjHYK4thjvUK4xSXDSfv5aTbcE59pOkE,15825
|
||||
numpy/random/tests/data/pcg64-testset-1.csv,sha256=xB00DpknGUTTCxDr9L6aNo9Hs-sfzEMbUSS4t11TTfE,23839
|
||||
numpy/random/tests/data/pcg64-testset-2.csv,sha256=NTdzTKvG2U7_WyU_IoQUtMzU3kEvDH39CgnR6VzhTkw,23845
|
||||
numpy/random/tests/data/philox-testset-1.csv,sha256=SedRaIy5zFadmk71nKrGxCFZ6BwKz8g1A9-OZp3IkkY,23852
|
||||
numpy/random/tests/data/philox-testset-2.csv,sha256=dWECt-sbfvaSiK8-Ygp5AqyjoN5i26VEOrXqg01rk3g,23838
|
||||
numpy/random/tests/data/sfc64-testset-1.csv,sha256=iHs6iX6KR8bxGwKk-3tedAdMPz6ZW8slDSUECkAqC8Q,23840
|
||||
numpy/random/tests/data/sfc64-testset-2.csv,sha256=FIDIDFCaPZfWUSxsJMAe58hPNmMrU27kCd9FhCEYt_k,23833
|
||||
numpy/random/tests/test_direct.py,sha256=RHMSKQifz7vqhjn0z5rpJl_AlDLVSli-ldC6jKcwJP0,14435
|
||||
numpy/random/tests/test_extending.py,sha256=22-9bT9yMONuqb4r_5G-jV7QS_V1nN_rddEAs3X2aq4,1822
|
||||
numpy/random/tests/test_generator_mt19937.py,sha256=nmoG3KGeHyP_MO6Egr99DdEJFKCab8O98cEVKngj0ZE,94406
|
||||
numpy/random/tests/test_generator_mt19937_regressions.py,sha256=ldeCEO3N6dCAGA1g8YnqEwRTQAiv6tBuY9xuAELJNCQ,5834
|
||||
numpy/random/tests/test_random.py,sha256=6h_kDOT55P1Vq2tf8JUM4wJTqkEdftg9XlmUgYroAAc,66842
|
||||
numpy/random/tests/test_randomstate.py,sha256=P8ZLRb3EswHcZ3jTZ0tn6z33LiBiwlufTR9b6TPLUz4,78067
|
||||
numpy/random/tests/test_randomstate_regression.py,sha256=6nW_U3uLq3JbiIaNX0PstGgqHk8fhDiblDkmOvF2Huc,7707
|
||||
numpy/random/tests/test_regression.py,sha256=_M-We4kY74tXPonJjWN7rMXF5SoxHMapl1zM08-6p0w,5683
|
||||
numpy/random/tests/test_seed_sequence.py,sha256=-fvOA-gzi_hOugmzJfXxL0GNmfAvuAbiwDCuLggqrNY,2379
|
||||
numpy/random/tests/test_smoke.py,sha256=VOCrUBqDsJFu9yQ02DArd-NV5p3eTphY-NX3WwnyewU,27891
|
||||
numpy/setup.py,sha256=lsyhnRXfo0ybq63nVUX8HnYhQ1mI0bSic-mk-lK3wnc,920
|
||||
numpy/testing/__init__.py,sha256=MHRK5eimwrC9RE723HlOcOQGxu5HAmQ-qwlcVX1sZ1k,632
|
||||
numpy/testing/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/testing/__pycache__/print_coercion_tables.cpython-37.pyc,,
|
||||
numpy/testing/__pycache__/setup.cpython-37.pyc,,
|
||||
numpy/testing/__pycache__/utils.cpython-37.pyc,,
|
||||
numpy/testing/_private/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/testing/_private/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/testing/_private/__pycache__/decorators.cpython-37.pyc,,
|
||||
numpy/testing/_private/__pycache__/noseclasses.cpython-37.pyc,,
|
||||
numpy/testing/_private/__pycache__/nosetester.cpython-37.pyc,,
|
||||
numpy/testing/_private/__pycache__/parameterized.cpython-37.pyc,,
|
||||
numpy/testing/_private/__pycache__/utils.cpython-37.pyc,,
|
||||
numpy/testing/_private/decorators.py,sha256=JSIBsQH4t1rdMcr1-Cf2jBJ6CXzIGEFyZoWxUJuXI7M,9015
|
||||
numpy/testing/_private/noseclasses.py,sha256=nYtV16KcoqAcHswfYO-u6bRIrDBvCvpqjCNfl7zk-SA,14601
|
||||
numpy/testing/_private/nosetester.py,sha256=S1nEtDBvNT87Zrt8XmuSVIBWpanJwjtD1YiRlcf7eoA,20515
|
||||
numpy/testing/_private/parameterized.py,sha256=PQnCG1Ul0aE9MBTDL9lJ-DOMgsahDfpMn5Xhqld1KWk,18285
|
||||
numpy/testing/_private/utils.py,sha256=_na6o-vYzN8eDMww86X49m8ciCa3G_lZlDH7IEQLdyQ,84689
|
||||
numpy/testing/print_coercion_tables.py,sha256=qIIxBkc4f2aCKiUY6EsShxQzRrBkFEb4TB7KaQuTl58,2809
|
||||
numpy/testing/setup.py,sha256=9PnlgcejccUBzaGPi9Po-ElhmuQMAmWCBRdvCDwiKYw,676
|
||||
numpy/testing/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/testing/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/testing/tests/__pycache__/test_decorators.cpython-37.pyc,,
|
||||
numpy/testing/tests/__pycache__/test_doctesting.cpython-37.pyc,,
|
||||
numpy/testing/tests/__pycache__/test_utils.cpython-37.pyc,,
|
||||
numpy/testing/tests/test_decorators.py,sha256=mkMCPSPJdrKxQl93u0QlIEdp5JS0tCzgLHXuoYDDvzs,6001
|
||||
numpy/testing/tests/test_doctesting.py,sha256=sKBXwuRZwMFSiem3R9egBzzSUB81kkpw9y-Y07iqU2M,1413
|
||||
numpy/testing/tests/test_utils.py,sha256=sB8vinI9-74VO9il6mf3a7k4OXh0HFp3dSVQk6br5JM,54774
|
||||
numpy/testing/utils.py,sha256=5-ntGTS7ux_T1sowuhRT5bwerhsCmgUfkMB-JJqPOOM,1298
|
||||
numpy/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
||||
numpy/tests/__pycache__/__init__.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_ctypeslib.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_matlib.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_numpy_version.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_public_api.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_reloading.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_scripts.cpython-37.pyc,,
|
||||
numpy/tests/__pycache__/test_warnings.cpython-37.pyc,,
|
||||
numpy/tests/test_ctypeslib.py,sha256=Fy_dBd80RrBufyeXISkBu6kS3X700qOD5ob0pDjRssg,12276
|
||||
numpy/tests/test_matlib.py,sha256=WKILeEOe3NdKP_XAy-uCs4VEi7r_ghQ7NUhIgH1LzoM,2158
|
||||
numpy/tests/test_numpy_version.py,sha256=VtTTZAPnsJ8xtKLy1qYqIwrpcjTtqJ9xP9qP5-p8DbU,647
|
||||
numpy/tests/test_public_api.py,sha256=Cfv9zpw_M9XElubxmNs_d1lwgo3ErVdGI1ttHpjHHEM,15532
|
||||
numpy/tests/test_reloading.py,sha256=k_J-pWB1mO4XoSAqOZ-qgpsn5It6yXgcRvNs1wxbcoY,1298
|
||||
numpy/tests/test_scripts.py,sha256=SxlQPb8EttfP4V5iGJyXMBtDWTS3EcYVBN-JWDTtSy4,1637
|
||||
numpy/tests/test_warnings.py,sha256=38bAtHc0P2uZ8c2Y9TQse3k6KBtPnvix8Q7OlF3WgZw,2594
|
||||
numpy/version.py,sha256=yEnGmiF7H8pwqnezXt9q8Sc7b1bD2kI-p7hhywdWKMA,294
|
@ -0,0 +1,5 @@
|
||||
Wheel-Version: 1.0
|
||||
Generator: bdist_wheel (0.31.1)
|
||||
Root-Is-Purelib: false
|
||||
Tag: cp37-cp37m-manylinux1_x86_64
|
||||
|
@ -0,0 +1,5 @@
|
||||
[console_scripts]
|
||||
f2py = numpy.f2py.f2py2e:main
|
||||
f2py3 = numpy.f2py.f2py2e:main
|
||||
f2py3.7 = numpy.f2py.f2py2e:main
|
||||
|
@ -0,0 +1 @@
|
||||
numpy
|
BIN
venv/lib/python3.7/site-packages/numpy/.libs/libgfortran-ed201abd.so.3.0.0
Executable file
BIN
venv/lib/python3.7/site-packages/numpy/.libs/libopenblasp-r0-34a18dc3.3.7.so
Executable file
910
venv/lib/python3.7/site-packages/numpy/LICENSE.txt
Normal file
@ -0,0 +1,910 @@
|
||||
Copyright (c) 2005-2019, NumPy Developers.
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
* Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
* Redistributions in binary form must reproduce the above
|
||||
copyright notice, this list of conditions and the following
|
||||
disclaimer in the documentation and/or other materials provided
|
||||
with the distribution.
|
||||
|
||||
* Neither the name of the NumPy Developers nor the names of any
|
||||
contributors may be used to endorse or promote products derived
|
||||
from this software without specific prior written permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
----
|
||||
|
||||
This binary distribution of NumPy also bundles the following software:
|
||||
|
||||
|
||||
Name: OpenBLAS
|
||||
Files: .libs/libopenb*.so
|
||||
Description: bundled as a dynamically linked library
|
||||
Availability: https://github.com/xianyi/OpenBLAS/
|
||||
License: 3-clause BSD
|
||||
Copyright (c) 2011-2014, The OpenBLAS Project
|
||||
All rights reserved.
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in
|
||||
the documentation and/or other materials provided with the
|
||||
distribution.
|
||||
3. Neither the name of the OpenBLAS project nor the names of
|
||||
its contributors may be used to endorse or promote products
|
||||
derived from this software without specific prior written
|
||||
permission.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
|
||||
LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
||||
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
|
||||
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
||||
USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
|
||||
Name: LAPACK
|
||||
Files: .libs/libopenb*.so
|
||||
Description: bundled in OpenBLAS
|
||||
Availability: https://github.com/xianyi/OpenBLAS/
|
||||
License 3-clause BSD
|
||||
Copyright (c) 1992-2013 The University of Tennessee and The University
|
||||
of Tennessee Research Foundation. All rights
|
||||
reserved.
|
||||
Copyright (c) 2000-2013 The University of California Berkeley. All
|
||||
rights reserved.
|
||||
Copyright (c) 2006-2013 The University of Colorado Denver. All rights
|
||||
reserved.
|
||||
|
||||
$COPYRIGHT$
|
||||
|
||||
Additional copyrights may follow
|
||||
|
||||
$HEADER$
|
||||
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions are
|
||||
met:
|
||||
|
||||
- Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
|
||||
- Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer listed
|
||||
in this license in the documentation and/or other materials
|
||||
provided with the distribution.
|
||||
|
||||
- Neither the name of the copyright holders nor the names of its
|
||||
contributors may be used to endorse or promote products derived from
|
||||
this software without specific prior written permission.
|
||||
|
||||
The copyright holders provide no reassurances that the source code
|
||||
provided does not infringe any patent, copyright, or any other
|
||||
intellectual property rights of third parties. The copyright holders
|
||||
disclaim any liability to any recipient for claims brought against
|
||||
recipient by any third party for infringement of that parties
|
||||
intellectual property rights.
|
||||
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
|
||||
Name: GCC runtime library
|
||||
Files: .libs/libgfortran*.so
|
||||
Description: dynamically linked to files compiled with gcc
|
||||
Availability: https://gcc.gnu.org/viewcvs/gcc/
|
||||
License: GPLv3 + runtime exception
|
||||
Copyright (C) 2002-2017 Free Software Foundation, Inc.
|
||||
|
||||
Libgfortran 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, or (at your option)
|
||||
any later version.
|
||||
|
||||
Libgfortran 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.
|
||||
|
||||
Under Section 7 of GPL version 3, you are granted additional
|
||||
permissions described in the GCC Runtime Library Exception, version
|
||||
3.1, as published by the Free Software Foundation.
|
||||
|
||||
You should have received a copy of the GNU General Public License and
|
||||
a copy of the GCC Runtime Library Exception along with this program;
|
||||
see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
----
|
||||
|
||||
Full text of license texts referred to above follows (that they are
|
||||
listed below does not necessarily imply the conditions apply to the
|
||||
present binary release):
|
||||
|
||||
----
|
||||
|
||||
GCC RUNTIME LIBRARY EXCEPTION
|
||||
|
||||
Version 3.1, 31 March 2009
|
||||
|
||||
Copyright (C) 2009 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
This GCC Runtime Library Exception ("Exception") is an additional
|
||||
permission under section 7 of the GNU General Public License, version
|
||||
3 ("GPLv3"). It applies to a given file (the "Runtime Library") that
|
||||
bears a notice placed by the copyright holder of the file stating that
|
||||
the file is governed by GPLv3 along with this Exception.
|
||||
|
||||
When you use GCC to compile a program, GCC may combine portions of
|
||||
certain GCC header files and runtime libraries with the compiled
|
||||
program. The purpose of this Exception is to allow compilation of
|
||||
non-GPL (including proprietary) programs to use, in this way, the
|
||||
header files and runtime libraries covered by this Exception.
|
||||
|
||||
0. Definitions.
|
||||
|
||||
A file is an "Independent Module" if it either requires the Runtime
|
||||
Library for execution after a Compilation Process, or makes use of an
|
||||
interface provided by the Runtime Library, but is not otherwise based
|
||||
on the Runtime Library.
|
||||
|
||||
"GCC" means a version of the GNU Compiler Collection, with or without
|
||||
modifications, governed by version 3 (or a specified later version) of
|
||||
the GNU General Public License (GPL) with the option of using any
|
||||
subsequent versions published by the FSF.
|
||||
|
||||
"GPL-compatible Software" is software whose conditions of propagation,
|
||||
modification and use would permit combination with GCC in accord with
|
||||
the license of GCC.
|
||||
|
||||
"Target Code" refers to output from any compiler for a real or virtual
|
||||
target processor architecture, in executable form or suitable for
|
||||
input to an assembler, loader, linker and/or execution
|
||||
phase. Notwithstanding that, Target Code does not include data in any
|
||||
format that is used as a compiler intermediate representation, or used
|
||||
for producing a compiler intermediate representation.
|
||||
|
||||
The "Compilation Process" transforms code entirely represented in
|
||||
non-intermediate languages designed for human-written code, and/or in
|
||||
Java Virtual Machine byte code, into Target Code. Thus, for example,
|
||||
use of source code generators and preprocessors need not be considered
|
||||
part of the Compilation Process, since the Compilation Process can be
|
||||
understood as starting with the output of the generators or
|
||||
preprocessors.
|
||||
|
||||
A Compilation Process is "Eligible" if it is done using GCC, alone or
|
||||
with other GPL-compatible software, or if it is done without using any
|
||||
work based on GCC. For example, using non-GPL-compatible Software to
|
||||
optimize any GCC intermediate representations would not qualify as an
|
||||
Eligible Compilation Process.
|
||||
|
||||
1. Grant of Additional Permission.
|
||||
|
||||
You have permission to propagate a work of Target Code formed by
|
||||
combining the Runtime Library with Independent Modules, even if such
|
||||
propagation would otherwise violate the terms of GPLv3, provided that
|
||||
all Target Code was generated by Eligible Compilation Processes. You
|
||||
may then convey such a combination under terms of your choice,
|
||||
consistent with the licensing of the Independent Modules.
|
||||
|
||||
2. No Weakening of GCC Copyleft.
|
||||
|
||||
The availability of this Exception does not imply any general
|
||||
presumption that third-party software is unaffected by the copyleft
|
||||
requirements of the license of GCC.
|
||||
|
||||
----
|
||||
|
||||
GNU GENERAL PUBLIC LICENSE
|
||||
Version 3, 29 June 2007
|
||||
|
||||
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
|
||||
Everyone is permitted to copy and distribute verbatim copies
|
||||
of this license document, but changing it is not allowed.
|
||||
|
||||
Preamble
|
||||
|
||||
The GNU General Public License is a free, copyleft license for
|
||||
software and other kinds of works.
|
||||
|
||||
The licenses for most software and other practical works are designed
|
||||
to take away your freedom to share and change the works. By contrast,
|
||||
the GNU General Public License is intended to guarantee your freedom to
|
||||
share and change all versions of a program--to make sure it remains free
|
||||
software for all its users. We, the Free Software Foundation, use the
|
||||
GNU General Public License for most of our software; it applies also to
|
||||
any other work released this way by its authors. You can apply it to
|
||||
your programs, too.
|
||||
|
||||
When we speak of free software, we are referring to freedom, not
|
||||
price. Our General Public Licenses are designed to make sure that you
|
||||
have the freedom to distribute copies of free software (and charge for
|
||||
them if you wish), that you receive source code or can get it if you
|
||||
want it, that you can change the software or use pieces of it in new
|
||||
free programs, and that you know you can do these things.
|
||||
|
||||
To protect your rights, we need to prevent others from denying you
|
||||
these rights or asking you to surrender the rights. Therefore, you have
|
||||
certain responsibilities if you distribute copies of the software, or if
|
||||
you modify it: responsibilities to respect the freedom of others.
|
||||
|
||||
For example, if you distribute copies of such a program, whether
|
||||
gratis or for a fee, you must pass on to the recipients the same
|
||||
freedoms that you received. You must make sure that they, too, receive
|
||||
or can get the source code. And you must show them these terms so they
|
||||
know their rights.
|
||||
|
||||
Developers that use the GNU GPL protect your rights with two steps:
|
||||
(1) assert copyright on the software, and (2) offer you this License
|
||||
giving you legal permission to copy, distribute and/or modify it.
|
||||
|
||||
For the developers' and authors' protection, the GPL clearly explains
|
||||
that there is no warranty for this free software. For both users' and
|
||||
authors' sake, the GPL requires that modified versions be marked as
|
||||
changed, so that their problems will not be attributed erroneously to
|
||||
authors of previous versions.
|
||||
|
||||
Some devices are designed to deny users access to install or run
|
||||
modified versions of the software inside them, although the manufacturer
|
||||
can do so. This is fundamentally incompatible with the aim of
|
||||
protecting users' freedom to change the software. The systematic
|
||||
pattern of such abuse occurs in the area of products for individuals to
|
||||
use, which is precisely where it is most unacceptable. Therefore, we
|
||||
have designed this version of the GPL to prohibit the practice for those
|
||||
products. If such problems arise substantially in other domains, we
|
||||
stand ready to extend this provision to those domains in future versions
|
||||
of the GPL, as needed to protect the freedom of users.
|
||||
|
||||
Finally, every program is threatened constantly by software patents.
|
||||
States should not allow patents to restrict development and use of
|
||||
software on general-purpose computers, but in those that do, we wish to
|
||||
avoid the special danger that patents applied to a free program could
|
||||
make it effectively proprietary. To prevent this, the GPL assures that
|
||||
patents cannot be used to render the program non-free.
|
||||
|
||||
The precise terms and conditions for copying, distribution and
|
||||
modification follow.
|
||||
|
||||
TERMS AND CONDITIONS
|
||||
|
||||
0. Definitions.
|
||||
|
||||
"This License" refers to version 3 of the GNU General Public License.
|
||||
|
||||
"Copyright" also means copyright-like laws that apply to other kinds of
|
||||
works, such as semiconductor masks.
|
||||
|
||||
"The Program" refers to any copyrightable work licensed under this
|
||||
License. Each licensee is addressed as "you". "Licensees" and
|
||||
"recipients" may be individuals or organizations.
|
||||
|
||||
To "modify" a work means to copy from or adapt all or part of the work
|
||||
in a fashion requiring copyright permission, other than the making of an
|
||||
exact copy. The resulting work is called a "modified version" of the
|
||||
earlier work or a work "based on" the earlier work.
|
||||
|
||||
A "covered work" means either the unmodified Program or a work based
|
||||
on the Program.
|
||||
|
||||
To "propagate" a work means to do anything with it that, without
|
||||
permission, would make you directly or secondarily liable for
|
||||
infringement under applicable copyright law, except executing it on a
|
||||
computer or modifying a private copy. Propagation includes copying,
|
||||
distribution (with or without modification), making available to the
|
||||
public, and in some countries other activities as well.
|
||||
|
||||
To "convey" a work means any kind of propagation that enables other
|
||||
parties to make or receive copies. Mere interaction with a user through
|
||||
a computer network, with no transfer of a copy, is not conveying.
|
||||
|
||||
An interactive user interface displays "Appropriate Legal Notices"
|
||||
to the extent that it includes a convenient and prominently visible
|
||||
feature that (1) displays an appropriate copyright notice, and (2)
|
||||
tells the user that there is no warranty for the work (except to the
|
||||
extent that warranties are provided), that licensees may convey the
|
||||
work under this License, and how to view a copy of this License. If
|
||||
the interface presents a list of user commands or options, such as a
|
||||
menu, a prominent item in the list meets this criterion.
|
||||
|
||||
1. Source Code.
|
||||
|
||||
The "source code" for a work means the preferred form of the work
|
||||
for making modifications to it. "Object code" means any non-source
|
||||
form of a work.
|
||||
|
||||
A "Standard Interface" means an interface that either is an official
|
||||
standard defined by a recognized standards body, or, in the case of
|
||||
interfaces specified for a particular programming language, one that
|
||||
is widely used among developers working in that language.
|
||||
|
||||
The "System Libraries" of an executable work include anything, other
|
||||
than the work as a whole, that (a) is included in the normal form of
|
||||
packaging a Major Component, but which is not part of that Major
|
||||
Component, and (b) serves only to enable use of the work with that
|
||||
Major Component, or to implement a Standard Interface for which an
|
||||
implementation is available to the public in source code form. A
|
||||
"Major Component", in this context, means a major essential component
|
||||
(kernel, window system, and so on) of the specific operating system
|
||||
(if any) on which the executable work runs, or a compiler used to
|
||||
produce the work, or an object code interpreter used to run it.
|
||||
|
||||
The "Corresponding Source" for a work in object code form means all
|
||||
the source code needed to generate, install, and (for an executable
|
||||
work) run the object code and to modify the work, including scripts to
|
||||
control those activities. However, it does not include the work's
|
||||
System Libraries, or general-purpose tools or generally available free
|
||||
programs which are used unmodified in performing those activities but
|
||||
which are not part of the work. For example, Corresponding Source
|
||||
includes interface definition files associated with source files for
|
||||
the work, and the source code for shared libraries and dynamically
|
||||
linked subprograms that the work is specifically designed to require,
|
||||
such as by intimate data communication or control flow between those
|
||||
subprograms and other parts of the work.
|
||||
|
||||
The Corresponding Source need not include anything that users
|
||||
can regenerate automatically from other parts of the Corresponding
|
||||
Source.
|
||||
|
||||
The Corresponding Source for a work in source code form is that
|
||||
same work.
|
||||
|
||||
2. Basic Permissions.
|
||||
|
||||
All rights granted under this License are granted for the term of
|
||||
copyright on the Program, and are irrevocable provided the stated
|
||||
conditions are met. This License explicitly affirms your unlimited
|
||||
permission to run the unmodified Program. The output from running a
|
||||
covered work is covered by this License only if the output, given its
|
||||
content, constitutes a covered work. This License acknowledges your
|
||||
rights of fair use or other equivalent, as provided by copyright law.
|
||||
|
||||
You may make, run and propagate covered works that you do not
|
||||
convey, without conditions so long as your license otherwise remains
|
||||
in force. You may convey covered works to others for the sole purpose
|
||||
of having them make modifications exclusively for you, or provide you
|
||||
with facilities for running those works, provided that you comply with
|
||||
the terms of this License in conveying all material for which you do
|
||||
not control copyright. Those thus making or running the covered works
|
||||
for you must do so exclusively on your behalf, under your direction
|
||||
and control, on terms that prohibit them from making any copies of
|
||||
your copyrighted material outside their relationship with you.
|
||||
|
||||
Conveying under any other circumstances is permitted solely under
|
||||
the conditions stated below. Sublicensing is not allowed; section 10
|
||||
makes it unnecessary.
|
||||
|
||||
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
||||
|
||||
No covered work shall be deemed part of an effective technological
|
||||
measure under any applicable law fulfilling obligations under article
|
||||
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
||||
similar laws prohibiting or restricting circumvention of such
|
||||
measures.
|
||||
|
||||
When you convey a covered work, you waive any legal power to forbid
|
||||
circumvention of technological measures to the extent such circumvention
|
||||
is effected by exercising rights under this License with respect to
|
||||
the covered work, and you disclaim any intention to limit operation or
|
||||
modification of the work as a means of enforcing, against the work's
|
||||
users, your or third parties' legal rights to forbid circumvention of
|
||||
technological measures.
|
||||
|
||||
4. Conveying Verbatim Copies.
|
||||
|
||||
You may convey verbatim copies of the Program's source code as you
|
||||
receive it, in any medium, provided that you conspicuously and
|
||||
appropriately publish on each copy an appropriate copyright notice;
|
||||
keep intact all notices stating that this License and any
|
||||
non-permissive terms added in accord with section 7 apply to the code;
|
||||
keep intact all notices of the absence of any warranty; and give all
|
||||
recipients a copy of this License along with the Program.
|
||||
|
||||
You may charge any price or no price for each copy that you convey,
|
||||
and you may offer support or warranty protection for a fee.
|
||||
|
||||
5. Conveying Modified Source Versions.
|
||||
|
||||
You may convey a work based on the Program, or the modifications to
|
||||
produce it from the Program, in the form of source code under the
|
||||
terms of section 4, provided that you also meet all of these conditions:
|
||||
|
||||
a) The work must carry prominent notices stating that you modified
|
||||
it, and giving a relevant date.
|
||||
|
||||
b) The work must carry prominent notices stating that it is
|
||||
released under this License and any conditions added under section
|
||||
7. This requirement modifies the requirement in section 4 to
|
||||
"keep intact all notices".
|
||||
|
||||
c) You must license the entire work, as a whole, under this
|
||||
License to anyone who comes into possession of a copy. This
|
||||
License will therefore apply, along with any applicable section 7
|
||||
additional terms, to the whole of the work, and all its parts,
|
||||
regardless of how they are packaged. This License gives no
|
||||
permission to license the work in any other way, but it does not
|
||||
invalidate such permission if you have separately received it.
|
||||
|
||||
d) If the work has interactive user interfaces, each must display
|
||||
Appropriate Legal Notices; however, if the Program has interactive
|
||||
interfaces that do not display Appropriate Legal Notices, your
|
||||
work need not make them do so.
|
||||
|
||||
A compilation of a covered work with other separate and independent
|
||||
works, which are not by their nature extensions of the covered work,
|
||||
and which are not combined with it such as to form a larger program,
|
||||
in or on a volume of a storage or distribution medium, is called an
|
||||
"aggregate" if the compilation and its resulting copyright are not
|
||||
used to limit the access or legal rights of the compilation's users
|
||||
beyond what the individual works permit. Inclusion of a covered work
|
||||
in an aggregate does not cause this License to apply to the other
|
||||
parts of the aggregate.
|
||||
|
||||
6. Conveying Non-Source Forms.
|
||||
|
||||
You may convey a covered work in object code form under the terms
|
||||
of sections 4 and 5, provided that you also convey the
|
||||
machine-readable Corresponding Source under the terms of this License,
|
||||
in one of these ways:
|
||||
|
||||
a) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by the
|
||||
Corresponding Source fixed on a durable physical medium
|
||||
customarily used for software interchange.
|
||||
|
||||
b) Convey the object code in, or embodied in, a physical product
|
||||
(including a physical distribution medium), accompanied by a
|
||||
written offer, valid for at least three years and valid for as
|
||||
long as you offer spare parts or customer support for that product
|
||||
model, to give anyone who possesses the object code either (1) a
|
||||
copy of the Corresponding Source for all the software in the
|
||||
product that is covered by this License, on a durable physical
|
||||
medium customarily used for software interchange, for a price no
|
||||
more than your reasonable cost of physically performing this
|
||||
conveying of source, or (2) access to copy the
|
||||
Corresponding Source from a network server at no charge.
|
||||
|
||||
c) Convey individual copies of the object code with a copy of the
|
||||
written offer to provide the Corresponding Source. This
|
||||
alternative is allowed only occasionally and noncommercially, and
|
||||
only if you received the object code with such an offer, in accord
|
||||
with subsection 6b.
|
||||
|
||||
d) Convey the object code by offering access from a designated
|
||||
place (gratis or for a charge), and offer equivalent access to the
|
||||
Corresponding Source in the same way through the same place at no
|
||||
further charge. You need not require recipients to copy the
|
||||
Corresponding Source along with the object code. If the place to
|
||||
copy the object code is a network server, the Corresponding Source
|
||||
may be on a different server (operated by you or a third party)
|
||||
that supports equivalent copying facilities, provided you maintain
|
||||
clear directions next to the object code saying where to find the
|
||||
Corresponding Source. Regardless of what server hosts the
|
||||
Corresponding Source, you remain obligated to ensure that it is
|
||||
available for as long as needed to satisfy these requirements.
|
||||
|
||||
e) Convey the object code using peer-to-peer transmission, provided
|
||||
you inform other peers where the object code and Corresponding
|
||||
Source of the work are being offered to the general public at no
|
||||
charge under subsection 6d.
|
||||
|
||||
A separable portion of the object code, whose source code is excluded
|
||||
from the Corresponding Source as a System Library, need not be
|
||||
included in conveying the object code work.
|
||||
|
||||
A "User Product" is either (1) a "consumer product", which means any
|
||||
tangible personal property which is normally used for personal, family,
|
||||
or household purposes, or (2) anything designed or sold for incorporation
|
||||
into a dwelling. In determining whether a product is a consumer product,
|
||||
doubtful cases shall be resolved in favor of coverage. For a particular
|
||||
product received by a particular user, "normally used" refers to a
|
||||
typical or common use of that class of product, regardless of the status
|
||||
of the particular user or of the way in which the particular user
|
||||
actually uses, or expects or is expected to use, the product. A product
|
||||
is a consumer product regardless of whether the product has substantial
|
||||
commercial, industrial or non-consumer uses, unless such uses represent
|
||||
the only significant mode of use of the product.
|
||||
|
||||
"Installation Information" for a User Product means any methods,
|
||||
procedures, authorization keys, or other information required to install
|
||||
and execute modified versions of a covered work in that User Product from
|
||||
a modified version of its Corresponding Source. The information must
|
||||
suffice to ensure that the continued functioning of the modified object
|
||||
code is in no case prevented or interfered with solely because
|
||||
modification has been made.
|
||||
|
||||
If you convey an object code work under this section in, or with, or
|
||||
specifically for use in, a User Product, and the conveying occurs as
|
||||
part of a transaction in which the right of possession and use of the
|
||||
User Product is transferred to the recipient in perpetuity or for a
|
||||
fixed term (regardless of how the transaction is characterized), the
|
||||
Corresponding Source conveyed under this section must be accompanied
|
||||
by the Installation Information. But this requirement does not apply
|
||||
if neither you nor any third party retains the ability to install
|
||||
modified object code on the User Product (for example, the work has
|
||||
been installed in ROM).
|
||||
|
||||
The requirement to provide Installation Information does not include a
|
||||
requirement to continue to provide support service, warranty, or updates
|
||||
for a work that has been modified or installed by the recipient, or for
|
||||
the User Product in which it has been modified or installed. Access to a
|
||||
network may be denied when the modification itself materially and
|
||||
adversely affects the operation of the network or violates the rules and
|
||||
protocols for communication across the network.
|
||||
|
||||
Corresponding Source conveyed, and Installation Information provided,
|
||||
in accord with this section must be in a format that is publicly
|
||||
documented (and with an implementation available to the public in
|
||||
source code form), and must require no special password or key for
|
||||
unpacking, reading or copying.
|
||||
|
||||
7. Additional Terms.
|
||||
|
||||
"Additional permissions" are terms that supplement the terms of this
|
||||
License by making exceptions from one or more of its conditions.
|
||||
Additional permissions that are applicable to the entire Program shall
|
||||
be treated as though they were included in this License, to the extent
|
||||
that they are valid under applicable law. If additional permissions
|
||||
apply only to part of the Program, that part may be used separately
|
||||
under those permissions, but the entire Program remains governed by
|
||||
this License without regard to the additional permissions.
|
||||
|
||||
When you convey a copy of a covered work, you may at your option
|
||||
remove any additional permissions from that copy, or from any part of
|
||||
it. (Additional permissions may be written to require their own
|
||||
removal in certain cases when you modify the work.) You may place
|
||||
additional permissions on material, added by you to a covered work,
|
||||
for which you have or can give appropriate copyright permission.
|
||||
|
||||
Notwithstanding any other provision of this License, for material you
|
||||
add to a covered work, you may (if authorized by the copyright holders of
|
||||
that material) supplement the terms of this License with terms:
|
||||
|
||||
a) Disclaiming warranty or limiting liability differently from the
|
||||
terms of sections 15 and 16 of this License; or
|
||||
|
||||
b) Requiring preservation of specified reasonable legal notices or
|
||||
author attributions in that material or in the Appropriate Legal
|
||||
Notices displayed by works containing it; or
|
||||
|
||||
c) Prohibiting misrepresentation of the origin of that material, or
|
||||
requiring that modified versions of such material be marked in
|
||||
reasonable ways as different from the original version; or
|
||||
|
||||
d) Limiting the use for publicity purposes of names of licensors or
|
||||
authors of the material; or
|
||||
|
||||
e) Declining to grant rights under trademark law for use of some
|
||||
trade names, trademarks, or service marks; or
|
||||
|
||||
f) Requiring indemnification of licensors and authors of that
|
||||
material by anyone who conveys the material (or modified versions of
|
||||
it) with contractual assumptions of liability to the recipient, for
|
||||
any liability that these contractual assumptions directly impose on
|
||||
those licensors and authors.
|
||||
|
||||
All other non-permissive additional terms are considered "further
|
||||
restrictions" within the meaning of section 10. If the Program as you
|
||||
received it, or any part of it, contains a notice stating that it is
|
||||
governed by this License along with a term that is a further
|
||||
restriction, you may remove that term. If a license document contains
|
||||
a further restriction but permits relicensing or conveying under this
|
||||
License, you may add to a covered work material governed by the terms
|
||||
of that license document, provided that the further restriction does
|
||||
not survive such relicensing or conveying.
|
||||
|
||||
If you add terms to a covered work in accord with this section, you
|
||||
must place, in the relevant source files, a statement of the
|
||||
additional terms that apply to those files, or a notice indicating
|
||||
where to find the applicable terms.
|
||||
|
||||
Additional terms, permissive or non-permissive, may be stated in the
|
||||
form of a separately written license, or stated as exceptions;
|
||||
the above requirements apply either way.
|
||||
|
||||
8. Termination.
|
||||
|
||||
You may not propagate or modify a covered work except as expressly
|
||||
provided under this License. Any attempt otherwise to propagate or
|
||||
modify it is void, and will automatically terminate your rights under
|
||||
this License (including any patent licenses granted under the third
|
||||
paragraph of section 11).
|
||||
|
||||
However, if you cease all violation of this License, then your
|
||||
license from a particular copyright holder is reinstated (a)
|
||||
provisionally, unless and until the copyright holder explicitly and
|
||||
finally terminates your license, and (b) permanently, if the copyright
|
||||
holder fails to notify you of the violation by some reasonable means
|
||||
prior to 60 days after the cessation.
|
||||
|
||||
Moreover, your license from a particular copyright holder is
|
||||
reinstated permanently if the copyright holder notifies you of the
|
||||
violation by some reasonable means, this is the first time you have
|
||||
received notice of violation of this License (for any work) from that
|
||||
copyright holder, and you cure the violation prior to 30 days after
|
||||
your receipt of the notice.
|
||||
|
||||
Termination of your rights under this section does not terminate the
|
||||
licenses of parties who have received copies or rights from you under
|
||||
this License. If your rights have been terminated and not permanently
|
||||
reinstated, you do not qualify to receive new licenses for the same
|
||||
material under section 10.
|
||||
|
||||
9. Acceptance Not Required for Having Copies.
|
||||
|
||||
You are not required to accept this License in order to receive or
|
||||
run a copy of the Program. Ancillary propagation of a covered work
|
||||
occurring solely as a consequence of using peer-to-peer transmission
|
||||
to receive a copy likewise does not require acceptance. However,
|
||||
nothing other than this License grants you permission to propagate or
|
||||
modify any covered work. These actions infringe copyright if you do
|
||||
not accept this License. Therefore, by modifying or propagating a
|
||||
covered work, you indicate your acceptance of this License to do so.
|
||||
|
||||
10. Automatic Licensing of Downstream Recipients.
|
||||
|
||||
Each time you convey a covered work, the recipient automatically
|
||||
receives a license from the original licensors, to run, modify and
|
||||
propagate that work, subject to this License. You are not responsible
|
||||
for enforcing compliance by third parties with this License.
|
||||
|
||||
An "entity transaction" is a transaction transferring control of an
|
||||
organization, or substantially all assets of one, or subdividing an
|
||||
organization, or merging organizations. If propagation of a covered
|
||||
work results from an entity transaction, each party to that
|
||||
transaction who receives a copy of the work also receives whatever
|
||||
licenses to the work the party's predecessor in interest had or could
|
||||
give under the previous paragraph, plus a right to possession of the
|
||||
Corresponding Source of the work from the predecessor in interest, if
|
||||
the predecessor has it or can get it with reasonable efforts.
|
||||
|
||||
You may not impose any further restrictions on the exercise of the
|
||||
rights granted or affirmed under this License. For example, you may
|
||||
not impose a license fee, royalty, or other charge for exercise of
|
||||
rights granted under this License, and you may not initiate litigation
|
||||
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
||||
any patent claim is infringed by making, using, selling, offering for
|
||||
sale, or importing the Program or any portion of it.
|
||||
|
||||
11. Patents.
|
||||
|
||||
A "contributor" is a copyright holder who authorizes use under this
|
||||
License of the Program or a work on which the Program is based. The
|
||||
work thus licensed is called the contributor's "contributor version".
|
||||
|
||||
A contributor's "essential patent claims" are all patent claims
|
||||
owned or controlled by the contributor, whether already acquired or
|
||||
hereafter acquired, that would be infringed by some manner, permitted
|
||||
by this License, of making, using, or selling its contributor version,
|
||||
but do not include claims that would be infringed only as a
|
||||
consequence of further modification of the contributor version. For
|
||||
purposes of this definition, "control" includes the right to grant
|
||||
patent sublicenses in a manner consistent with the requirements of
|
||||
this License.
|
||||
|
||||
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
||||
patent license under the contributor's essential patent claims, to
|
||||
make, use, sell, offer for sale, import and otherwise run, modify and
|
||||
propagate the contents of its contributor version.
|
||||
|
||||
In the following three paragraphs, a "patent license" is any express
|
||||
agreement or commitment, however denominated, not to enforce a patent
|
||||
(such as an express permission to practice a patent or covenant not to
|
||||
sue for patent infringement). To "grant" such a patent license to a
|
||||
party means to make such an agreement or commitment not to enforce a
|
||||
patent against the party.
|
||||
|
||||
If you convey a covered work, knowingly relying on a patent license,
|
||||
and the Corresponding Source of the work is not available for anyone
|
||||
to copy, free of charge and under the terms of this License, through a
|
||||
publicly available network server or other readily accessible means,
|
||||
then you must either (1) cause the Corresponding Source to be so
|
||||
available, or (2) arrange to deprive yourself of the benefit of the
|
||||
patent license for this particular work, or (3) arrange, in a manner
|
||||
consistent with the requirements of this License, to extend the patent
|
||||
license to downstream recipients. "Knowingly relying" means you have
|
||||
actual knowledge that, but for the patent license, your conveying the
|
||||
covered work in a country, or your recipient's use of the covered work
|
||||
in a country, would infringe one or more identifiable patents in that
|
||||
country that you have reason to believe are valid.
|
||||
|
||||
If, pursuant to or in connection with a single transaction or
|
||||
arrangement, you convey, or propagate by procuring conveyance of, a
|
||||
covered work, and grant a patent license to some of the parties
|
||||
receiving the covered work authorizing them to use, propagate, modify
|
||||
or convey a specific copy of the covered work, then the patent license
|
||||
you grant is automatically extended to all recipients of the covered
|
||||
work and works based on it.
|
||||
|
||||
A patent license is "discriminatory" if it does not include within
|
||||
the scope of its coverage, prohibits the exercise of, or is
|
||||
conditioned on the non-exercise of one or more of the rights that are
|
||||
specifically granted under this License. You may not convey a covered
|
||||
work if you are a party to an arrangement with a third party that is
|
||||
in the business of distributing software, under which you make payment
|
||||
to the third party based on the extent of your activity of conveying
|
||||
the work, and under which the third party grants, to any of the
|
||||
parties who would receive the covered work from you, a discriminatory
|
||||
patent license (a) in connection with copies of the covered work
|
||||
conveyed by you (or copies made from those copies), or (b) primarily
|
||||
for and in connection with specific products or compilations that
|
||||
contain the covered work, unless you entered into that arrangement,
|
||||
or that patent license was granted, prior to 28 March 2007.
|
||||
|
||||
Nothing in this License shall be construed as excluding or limiting
|
||||
any implied license or other defenses to infringement that may
|
||||
otherwise be available to you under applicable patent law.
|
||||
|
||||
12. No Surrender of Others' Freedom.
|
||||
|
||||
If conditions are imposed on you (whether by court order, agreement or
|
||||
otherwise) that contradict the conditions of this License, they do not
|
||||
excuse you from the conditions of this License. If you cannot convey a
|
||||
covered work so as to satisfy simultaneously your obligations under this
|
||||
License and any other pertinent obligations, then as a consequence you may
|
||||
not convey it at all. For example, if you agree to terms that obligate you
|
||||
to collect a royalty for further conveying from those to whom you convey
|
||||
the Program, the only way you could satisfy both those terms and this
|
||||
License would be to refrain entirely from conveying the Program.
|
||||
|
||||
13. Use with the GNU Affero General Public License.
|
||||
|
||||
Notwithstanding any other provision of this License, you have
|
||||
permission to link or combine any covered work with a work licensed
|
||||
under version 3 of the GNU Affero General Public License into a single
|
||||
combined work, and to convey the resulting work. The terms of this
|
||||
License will continue to apply to the part which is the covered work,
|
||||
but the special requirements of the GNU Affero General Public License,
|
||||
section 13, concerning interaction through a network will apply to the
|
||||
combination as such.
|
||||
|
||||
14. Revised Versions of this License.
|
||||
|
||||
The Free Software Foundation may publish revised and/or new versions of
|
||||
the GNU General Public License from time to time. Such new versions will
|
||||
be similar in spirit to the present version, but may differ in detail to
|
||||
address new problems or concerns.
|
||||
|
||||
Each version is given a distinguishing version number. If the
|
||||
Program specifies that a certain numbered version of the GNU General
|
||||
Public License "or any later version" applies to it, you have the
|
||||
option of following the terms and conditions either of that numbered
|
||||
version or of any later version published by the Free Software
|
||||
Foundation. If the Program does not specify a version number of the
|
||||
GNU General Public License, you may choose any version ever published
|
||||
by the Free Software Foundation.
|
||||
|
||||
If the Program specifies that a proxy can decide which future
|
||||
versions of the GNU General Public License can be used, that proxy's
|
||||
public statement of acceptance of a version permanently authorizes you
|
||||
to choose that version for the Program.
|
||||
|
||||
Later license versions may give you additional or different
|
||||
permissions. However, no additional obligations are imposed on any
|
||||
author or copyright holder as a result of your choosing to follow a
|
||||
later version.
|
||||
|
||||
15. Disclaimer of Warranty.
|
||||
|
||||
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
||||
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
||||
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
||||
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
||||
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
||||
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
||||
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
||||
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
||||
|
||||
16. Limitation of Liability.
|
||||
|
||||
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
||||
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
||||
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
||||
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
||||
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
||||
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
||||
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
||||
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
||||
SUCH DAMAGES.
|
||||
|
||||
17. Interpretation of Sections 15 and 16.
|
||||
|
||||
If the disclaimer of warranty and limitation of liability provided
|
||||
above cannot be given local legal effect according to their terms,
|
||||
reviewing courts shall apply local law that most closely approximates
|
||||
an absolute waiver of all civil liability in connection with the
|
||||
Program, unless a warranty or assumption of liability accompanies a
|
||||
copy of the Program in return for a fee.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
How to Apply These Terms to Your New Programs
|
||||
|
||||
If you develop a new program, and you want it to be of the greatest
|
||||
possible use to the public, the best way to achieve this is to make it
|
||||
free software which everyone can redistribute and change under these terms.
|
||||
|
||||
To do so, attach the following notices to the program. It is safest
|
||||
to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
This program 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.
|
||||
|
||||
This program 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.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
Also add information on how to contact you by electronic and paper mail.
|
||||
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
The hypothetical commands `show w' and `show c' should show the appropriate
|
||||
parts of the General Public License. Of course, your program's commands
|
||||
might be different; for a GUI interface, you would use an "about box".
|
||||
|
||||
You should also get your employer (if you work as a programmer) or school,
|
||||
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
||||
For more information on this, and how to apply and follow the GNU GPL, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
|
||||
The GNU General Public License does not permit incorporating your program
|
||||
into proprietary programs. If your program is a subroutine library, you
|
||||
may consider it more useful to permit linking proprietary applications with
|
||||
the library. If this is what you want to do, use the GNU Lesser General
|
||||
Public License instead of this License. But first, please read
|
||||
<http://www.gnu.org/philosophy/why-not-lgpl.html>.
|
40
venv/lib/python3.7/site-packages/numpy/__config__.py
Normal file
@ -0,0 +1,40 @@
|
||||
# This file is generated by numpy's setup.py
|
||||
# It contains system_info results at the time of building this package.
|
||||
__all__ = ["get_info","show"]
|
||||
|
||||
|
||||
import os
|
||||
import sys
|
||||
|
||||
extra_dll_dir = os.path.join(os.path.dirname(__file__), '.libs')
|
||||
|
||||
if sys.platform == 'win32' and os.path.isdir(extra_dll_dir):
|
||||
if sys.version_info >= (3, 8):
|
||||
os.add_dll_directory(extra_dll_dir)
|
||||
else:
|
||||
os.environ.setdefault('PATH', '')
|
||||
os.environ['PATH'] += os.pathsep + extra_dll_dir
|
||||
|
||||
blas_mkl_info={}
|
||||
blis_info={}
|
||||
openblas_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
|
||||
blas_opt_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
|
||||
lapack_mkl_info={}
|
||||
openblas_lapack_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
|
||||
lapack_opt_info={'libraries': ['openblas', 'openblas'], 'library_dirs': ['/usr/local/lib'], 'language': 'c', 'define_macros': [('HAVE_CBLAS', None)]}
|
||||
|
||||
def get_info(name):
|
||||
g = globals()
|
||||
return g.get(name, g.get(name + "_info", {}))
|
||||
|
||||
def show():
|
||||
for name,info_dict in globals().items():
|
||||
if name[0] == "_" or type(info_dict) is not type({}): continue
|
||||
print(name + ":")
|
||||
if not info_dict:
|
||||
print(" NOT AVAILABLE")
|
||||
for k,v in info_dict.items():
|
||||
v = str(v)
|
||||
if k == "sources" and len(v) > 200:
|
||||
v = v[:60] + " ...\n... " + v[-60:]
|
||||
print(" %s = %s" % (k,v))
|
260
venv/lib/python3.7/site-packages/numpy/__init__.py
Normal file
@ -0,0 +1,260 @@
|
||||
"""
|
||||
NumPy
|
||||
=====
|
||||
|
||||
Provides
|
||||
1. An array object of arbitrary homogeneous items
|
||||
2. Fast mathematical operations over arrays
|
||||
3. Linear Algebra, Fourier Transforms, Random Number Generation
|
||||
|
||||
How to use the documentation
|
||||
----------------------------
|
||||
Documentation is available in two forms: docstrings provided
|
||||
with the code, and a loose standing reference guide, available from
|
||||
`the NumPy homepage <https://www.scipy.org>`_.
|
||||
|
||||
We recommend exploring the docstrings using
|
||||
`IPython <https://ipython.org>`_, an advanced Python shell with
|
||||
TAB-completion and introspection capabilities. See below for further
|
||||
instructions.
|
||||
|
||||
The docstring examples assume that `numpy` has been imported as `np`::
|
||||
|
||||
>>> import numpy as np
|
||||
|
||||
Code snippets are indicated by three greater-than signs::
|
||||
|
||||
>>> x = 42
|
||||
>>> x = x + 1
|
||||
|
||||
Use the built-in ``help`` function to view a function's docstring::
|
||||
|
||||
>>> help(np.sort)
|
||||
... # doctest: +SKIP
|
||||
|
||||
For some objects, ``np.info(obj)`` may provide additional help. This is
|
||||
particularly true if you see the line "Help on ufunc object:" at the top
|
||||
of the help() page. Ufuncs are implemented in C, not Python, for speed.
|
||||
The native Python help() does not know how to view their help, but our
|
||||
np.info() function does.
|
||||
|
||||
To search for documents containing a keyword, do::
|
||||
|
||||
>>> np.lookfor('keyword')
|
||||
... # doctest: +SKIP
|
||||
|
||||
General-purpose documents like a glossary and help on the basic concepts
|
||||
of numpy are available under the ``doc`` sub-module::
|
||||
|
||||
>>> from numpy import doc
|
||||
>>> help(doc)
|
||||
... # doctest: +SKIP
|
||||
|
||||
Available subpackages
|
||||
---------------------
|
||||
doc
|
||||
Topical documentation on broadcasting, indexing, etc.
|
||||
lib
|
||||
Basic functions used by several sub-packages.
|
||||
random
|
||||
Core Random Tools
|
||||
linalg
|
||||
Core Linear Algebra Tools
|
||||
fft
|
||||
Core FFT routines
|
||||
polynomial
|
||||
Polynomial tools
|
||||
testing
|
||||
NumPy testing tools
|
||||
f2py
|
||||
Fortran to Python Interface Generator.
|
||||
distutils
|
||||
Enhancements to distutils with support for
|
||||
Fortran compilers support and more.
|
||||
|
||||
Utilities
|
||||
---------
|
||||
test
|
||||
Run numpy unittests
|
||||
show_config
|
||||
Show numpy build configuration
|
||||
dual
|
||||
Overwrite certain functions with high-performance Scipy tools
|
||||
matlib
|
||||
Make everything matrices.
|
||||
__version__
|
||||
NumPy version string
|
||||
|
||||
Viewing documentation using IPython
|
||||
-----------------------------------
|
||||
Start IPython with the NumPy profile (``ipython -p numpy``), which will
|
||||
import `numpy` under the alias `np`. Then, use the ``cpaste`` command to
|
||||
paste examples into the shell. To see which functions are available in
|
||||
`numpy`, type ``np.<TAB>`` (where ``<TAB>`` refers to the TAB key), or use
|
||||
``np.*cos*?<ENTER>`` (where ``<ENTER>`` refers to the ENTER key) to narrow
|
||||
down the list. To view the docstring for a function, use
|
||||
``np.cos?<ENTER>`` (to view the docstring) and ``np.cos??<ENTER>`` (to view
|
||||
the source code).
|
||||
|
||||
Copies vs. in-place operation
|
||||
-----------------------------
|
||||
Most of the functions in `numpy` return a copy of the array argument
|
||||
(e.g., `np.sort`). In-place versions of these functions are often
|
||||
available as array methods, i.e. ``x = np.array([1,2,3]); x.sort()``.
|
||||
Exceptions to this rule are documented.
|
||||
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
import sys
|
||||
import warnings
|
||||
|
||||
from ._globals import ModuleDeprecationWarning, VisibleDeprecationWarning
|
||||
from ._globals import _NoValue
|
||||
|
||||
# We first need to detect if we're being called as part of the numpy setup
|
||||
# procedure itself in a reliable manner.
|
||||
try:
|
||||
__NUMPY_SETUP__
|
||||
except NameError:
|
||||
__NUMPY_SETUP__ = False
|
||||
|
||||
if __NUMPY_SETUP__:
|
||||
sys.stderr.write('Running from numpy source directory.\n')
|
||||
else:
|
||||
try:
|
||||
from numpy.__config__ import show as show_config
|
||||
except ImportError:
|
||||
msg = """Error importing numpy: you should not try to import numpy from
|
||||
its source directory; please exit the numpy source tree, and relaunch
|
||||
your python interpreter from there."""
|
||||
raise ImportError(msg)
|
||||
|
||||
from .version import git_revision as __git_revision__
|
||||
from .version import version as __version__
|
||||
|
||||
__all__ = ['ModuleDeprecationWarning',
|
||||
'VisibleDeprecationWarning']
|
||||
|
||||
# Allow distributors to run custom init code
|
||||
from . import _distributor_init
|
||||
|
||||
from . import core
|
||||
from .core import *
|
||||
from . import compat
|
||||
from . import lib
|
||||
# FIXME: why have numpy.lib if everything is imported here??
|
||||
from .lib import *
|
||||
|
||||
from . import linalg
|
||||
from . import fft
|
||||
from . import polynomial
|
||||
from . import random
|
||||
from . import ctypeslib
|
||||
from . import ma
|
||||
from . import matrixlib as _mat
|
||||
from .matrixlib import *
|
||||
from .compat import long
|
||||
|
||||
# Make these accessible from numpy name-space
|
||||
# but not imported in from numpy import *
|
||||
# TODO[gh-6103]: Deprecate these
|
||||
if sys.version_info[0] >= 3:
|
||||
from builtins import bool, int, float, complex, object, str
|
||||
unicode = str
|
||||
else:
|
||||
from __builtin__ import bool, int, float, complex, object, unicode, str
|
||||
|
||||
from .core import round, abs, max, min
|
||||
# now that numpy modules are imported, can initialize limits
|
||||
core.getlimits._register_known_types()
|
||||
|
||||
__all__.extend(['__version__', 'show_config'])
|
||||
__all__.extend(core.__all__)
|
||||
__all__.extend(_mat.__all__)
|
||||
__all__.extend(lib.__all__)
|
||||
__all__.extend(['linalg', 'fft', 'random', 'ctypeslib', 'ma'])
|
||||
|
||||
# These are added by `from .core import *` and `core.__all__`, but we
|
||||
# overwrite them above with builtins we do _not_ want to export.
|
||||
__all__.remove('long')
|
||||
__all__.remove('unicode')
|
||||
|
||||
# Remove things that are in the numpy.lib but not in the numpy namespace
|
||||
# Note that there is a test (numpy/tests/test_public_api.py:test_numpy_namespace)
|
||||
# that prevents adding more things to the main namespace by accident.
|
||||
# The list below will grow until the `from .lib import *` fixme above is
|
||||
# taken care of
|
||||
__all__.remove('Arrayterator')
|
||||
del Arrayterator
|
||||
|
||||
# Filter out Cython harmless warnings
|
||||
warnings.filterwarnings("ignore", message="numpy.dtype size changed")
|
||||
warnings.filterwarnings("ignore", message="numpy.ufunc size changed")
|
||||
warnings.filterwarnings("ignore", message="numpy.ndarray size changed")
|
||||
|
||||
# oldnumeric and numarray were removed in 1.9. In case some packages import
|
||||
# but do not use them, we define them here for backward compatibility.
|
||||
oldnumeric = 'removed'
|
||||
numarray = 'removed'
|
||||
|
||||
if sys.version_info[:2] >= (3, 7):
|
||||
# Importing Tester requires importing all of UnitTest which is not a
|
||||
# cheap import Since it is mainly used in test suits, we lazy import it
|
||||
# here to save on the order of 10 ms of import time for most users
|
||||
#
|
||||
# The previous way Tester was imported also had a side effect of adding
|
||||
# the full `numpy.testing` namespace
|
||||
#
|
||||
# module level getattr is only supported in 3.7 onwards
|
||||
# https://www.python.org/dev/peps/pep-0562/
|
||||
def __getattr__(attr):
|
||||
if attr == 'testing':
|
||||
import numpy.testing as testing
|
||||
return testing
|
||||
elif attr == 'Tester':
|
||||
from .testing import Tester
|
||||
return Tester
|
||||
else:
|
||||
raise AttributeError("module {!r} has no attribute "
|
||||
"{!r}".format(__name__, attr))
|
||||
|
||||
def __dir__():
|
||||
return list(globals().keys()) + ['Tester', 'testing']
|
||||
|
||||
else:
|
||||
# We don't actually use this ourselves anymore, but I'm not 100% sure that
|
||||
# no-one else in the world is using it (though I hope not)
|
||||
from .testing import Tester
|
||||
|
||||
# Pytest testing
|
||||
from numpy._pytesttester import PytestTester
|
||||
test = PytestTester(__name__)
|
||||
del PytestTester
|
||||
|
||||
|
||||
def _sanity_check():
|
||||
"""
|
||||
Quick sanity checks for common bugs caused by environment.
|
||||
There are some cases e.g. with wrong BLAS ABI that cause wrong
|
||||
results under specific runtime conditions that are not necessarily
|
||||
achieved during test suite runs, and it is useful to catch those early.
|
||||
|
||||
See https://github.com/numpy/numpy/issues/8577 and other
|
||||
similar bug reports.
|
||||
|
||||
"""
|
||||
try:
|
||||
x = ones(2, dtype=float32)
|
||||
if not abs(x.dot(x) - 2.0) < 1e-5:
|
||||
raise AssertionError()
|
||||
except AssertionError:
|
||||
msg = ("The current Numpy installation ({!r}) fails to "
|
||||
"pass simple sanity checks. This can be caused for example "
|
||||
"by incorrect BLAS library being linked in, or by mixing "
|
||||
"package managers (pip, conda, apt, ...). Search closed "
|
||||
"numpy issues for similar problems.")
|
||||
raise RuntimeError(msg.format(__file__))
|
||||
|
||||
_sanity_check()
|
||||
del _sanity_check
|
10
venv/lib/python3.7/site-packages/numpy/_distributor_init.py
Normal file
@ -0,0 +1,10 @@
|
||||
""" Distributor init file
|
||||
|
||||
Distributors: you can add custom code here to support particular distributions
|
||||
of numpy.
|
||||
|
||||
For example, this is a good place to put any checks for hardware requirements.
|
||||
|
||||
The numpy standard source distribution will not put code in this file, so you
|
||||
can safely replace this file with your own version.
|
||||
"""
|
81
venv/lib/python3.7/site-packages/numpy/_globals.py
Normal file
@ -0,0 +1,81 @@
|
||||
"""
|
||||
Module defining global singleton classes.
|
||||
|
||||
This module raises a RuntimeError if an attempt to reload it is made. In that
|
||||
way the identities of the classes defined here are fixed and will remain so
|
||||
even if numpy itself is reloaded. In particular, a function like the following
|
||||
will still work correctly after numpy is reloaded::
|
||||
|
||||
def foo(arg=np._NoValue):
|
||||
if arg is np._NoValue:
|
||||
...
|
||||
|
||||
That was not the case when the singleton classes were defined in the numpy
|
||||
``__init__.py`` file. See gh-7844 for a discussion of the reload problem that
|
||||
motivated this module.
|
||||
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
__ALL__ = [
|
||||
'ModuleDeprecationWarning', 'VisibleDeprecationWarning', '_NoValue'
|
||||
]
|
||||
|
||||
|
||||
# Disallow reloading this module so as to preserve the identities of the
|
||||
# classes defined here.
|
||||
if '_is_loaded' in globals():
|
||||
raise RuntimeError('Reloading numpy._globals is not allowed')
|
||||
_is_loaded = True
|
||||
|
||||
|
||||
class ModuleDeprecationWarning(DeprecationWarning):
|
||||
"""Module deprecation warning.
|
||||
|
||||
The nose tester turns ordinary Deprecation warnings into test failures.
|
||||
That makes it hard to deprecate whole modules, because they get
|
||||
imported by default. So this is a special Deprecation warning that the
|
||||
nose tester will let pass without making tests fail.
|
||||
|
||||
"""
|
||||
|
||||
|
||||
ModuleDeprecationWarning.__module__ = 'numpy'
|
||||
|
||||
|
||||
class VisibleDeprecationWarning(UserWarning):
|
||||
"""Visible deprecation warning.
|
||||
|
||||
By default, python will not show deprecation warnings, so this class
|
||||
can be used when a very visible warning is helpful, for example because
|
||||
the usage is most likely a user bug.
|
||||
|
||||
"""
|
||||
|
||||
|
||||
VisibleDeprecationWarning.__module__ = 'numpy'
|
||||
|
||||
|
||||
class _NoValueType(object):
|
||||
"""Special keyword value.
|
||||
|
||||
The instance of this class may be used as the default value assigned to a
|
||||
deprecated keyword in order to check if it has been given a user defined
|
||||
value.
|
||||
"""
|
||||
__instance = None
|
||||
def __new__(cls):
|
||||
# ensure that only one instance exists
|
||||
if not cls.__instance:
|
||||
cls.__instance = super(_NoValueType, cls).__new__(cls)
|
||||
return cls.__instance
|
||||
|
||||
# needed for python 2 to preserve identity through a pickle
|
||||
def __reduce__(self):
|
||||
return (self.__class__, ())
|
||||
|
||||
def __repr__(self):
|
||||
return "<no value>"
|
||||
|
||||
|
||||
_NoValue = _NoValueType()
|
214
venv/lib/python3.7/site-packages/numpy/_pytesttester.py
Normal file
@ -0,0 +1,214 @@
|
||||
"""
|
||||
Pytest test running.
|
||||
|
||||
This module implements the ``test()`` function for NumPy modules. The usual
|
||||
boiler plate for doing that is to put the following in the module
|
||||
``__init__.py`` file::
|
||||
|
||||
from numpy._pytesttester import PytestTester
|
||||
test = PytestTester(__name__).test
|
||||
del PytestTester
|
||||
|
||||
|
||||
Warnings filtering and other runtime settings should be dealt with in the
|
||||
``pytest.ini`` file in the numpy repo root. The behavior of the test depends on
|
||||
whether or not that file is found as follows:
|
||||
|
||||
* ``pytest.ini`` is present (develop mode)
|
||||
All warnings except those explicily filtered out are raised as error.
|
||||
* ``pytest.ini`` is absent (release mode)
|
||||
DeprecationWarnings and PendingDeprecationWarnings are ignored, other
|
||||
warnings are passed through.
|
||||
|
||||
In practice, tests run from the numpy repo are run in develop mode. That
|
||||
includes the standard ``python runtests.py`` invocation.
|
||||
|
||||
This module is imported by every numpy subpackage, so lies at the top level to
|
||||
simplify circular import issues. For the same reason, it contains no numpy
|
||||
imports at module scope, instead importing numpy within function calls.
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
import sys
|
||||
import os
|
||||
|
||||
__all__ = ['PytestTester']
|
||||
|
||||
|
||||
|
||||
def _show_numpy_info():
|
||||
import numpy as np
|
||||
|
||||
print("NumPy version %s" % np.__version__)
|
||||
relaxed_strides = np.ones((10, 1), order="C").flags.f_contiguous
|
||||
print("NumPy relaxed strides checking option:", relaxed_strides)
|
||||
|
||||
|
||||
class PytestTester(object):
|
||||
"""
|
||||
Pytest test runner.
|
||||
|
||||
A test function is typically added to a package's __init__.py like so::
|
||||
|
||||
from numpy._pytesttester import PytestTester
|
||||
test = PytestTester(__name__).test
|
||||
del PytestTester
|
||||
|
||||
Calling this test function finds and runs all tests associated with the
|
||||
module and all its sub-modules.
|
||||
|
||||
Attributes
|
||||
----------
|
||||
module_name : str
|
||||
Full path to the package to test.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
module_name : module name
|
||||
The name of the module to test.
|
||||
|
||||
Notes
|
||||
-----
|
||||
Unlike the previous ``nose``-based implementation, this class is not
|
||||
publicly exposed as it performs some ``numpy``-specific warning
|
||||
suppression.
|
||||
|
||||
"""
|
||||
def __init__(self, module_name):
|
||||
self.module_name = module_name
|
||||
|
||||
def __call__(self, label='fast', verbose=1, extra_argv=None,
|
||||
doctests=False, coverage=False, durations=-1, tests=None):
|
||||
"""
|
||||
Run tests for module using pytest.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
label : {'fast', 'full'}, optional
|
||||
Identifies the tests to run. When set to 'fast', tests decorated
|
||||
with `pytest.mark.slow` are skipped, when 'full', the slow marker
|
||||
is ignored.
|
||||
verbose : int, optional
|
||||
Verbosity value for test outputs, in the range 1-3. Default is 1.
|
||||
extra_argv : list, optional
|
||||
List with any extra arguments to pass to pytests.
|
||||
doctests : bool, optional
|
||||
.. note:: Not supported
|
||||
coverage : bool, optional
|
||||
If True, report coverage of NumPy code. Default is False.
|
||||
Requires installation of (pip) pytest-cov.
|
||||
durations : int, optional
|
||||
If < 0, do nothing, If 0, report time of all tests, if > 0,
|
||||
report the time of the slowest `timer` tests. Default is -1.
|
||||
tests : test or list of tests
|
||||
Tests to be executed with pytest '--pyargs'
|
||||
|
||||
Returns
|
||||
-------
|
||||
result : bool
|
||||
Return True on success, false otherwise.
|
||||
|
||||
Notes
|
||||
-----
|
||||
Each NumPy module exposes `test` in its namespace to run all tests for
|
||||
it. For example, to run all tests for numpy.lib:
|
||||
|
||||
>>> np.lib.test() #doctest: +SKIP
|
||||
|
||||
Examples
|
||||
--------
|
||||
>>> result = np.lib.test() #doctest: +SKIP
|
||||
...
|
||||
1023 passed, 2 skipped, 6 deselected, 1 xfailed in 10.39 seconds
|
||||
>>> result
|
||||
True
|
||||
|
||||
"""
|
||||
import pytest
|
||||
import warnings
|
||||
|
||||
#FIXME This is no longer needed? Assume it was for use in tests.
|
||||
# cap verbosity at 3, which is equivalent to the pytest '-vv' option
|
||||
#from . import utils
|
||||
#verbose = min(int(verbose), 3)
|
||||
#utils.verbose = verbose
|
||||
#
|
||||
|
||||
module = sys.modules[self.module_name]
|
||||
module_path = os.path.abspath(module.__path__[0])
|
||||
|
||||
# setup the pytest arguments
|
||||
pytest_args = ["-l"]
|
||||
|
||||
# offset verbosity. The "-q" cancels a "-v".
|
||||
pytest_args += ["-q"]
|
||||
|
||||
# Filter out distutils cpu warnings (could be localized to
|
||||
# distutils tests). ASV has problems with top level import,
|
||||
# so fetch module for suppression here.
|
||||
with warnings.catch_warnings():
|
||||
warnings.simplefilter("always")
|
||||
from numpy.distutils import cpuinfo
|
||||
|
||||
# Filter out annoying import messages. Want these in both develop and
|
||||
# release mode.
|
||||
pytest_args += [
|
||||
"-W ignore:Not importing directory",
|
||||
"-W ignore:numpy.dtype size changed",
|
||||
"-W ignore:numpy.ufunc size changed",
|
||||
"-W ignore::UserWarning:cpuinfo",
|
||||
]
|
||||
|
||||
# When testing matrices, ignore their PendingDeprecationWarnings
|
||||
pytest_args += [
|
||||
"-W ignore:the matrix subclass is not",
|
||||
]
|
||||
|
||||
# Ignore python2.7 -3 warnings
|
||||
pytest_args += [
|
||||
r"-W ignore:sys\.exc_clear\(\) not supported in 3\.x:DeprecationWarning",
|
||||
r"-W ignore:in 3\.x, __setslice__:DeprecationWarning",
|
||||
r"-W ignore:in 3\.x, __getslice__:DeprecationWarning",
|
||||
r"-W ignore:buffer\(\) not supported in 3\.x:DeprecationWarning",
|
||||
r"-W ignore:CObject type is not supported in 3\.x:DeprecationWarning",
|
||||
r"-W ignore:comparing unequal types not supported in 3\.x:DeprecationWarning",
|
||||
r"-W ignore:the commands module has been removed in Python 3\.0:DeprecationWarning",
|
||||
r"-W ignore:The 'new' module has been removed in Python 3\.0:DeprecationWarning",
|
||||
]
|
||||
|
||||
|
||||
if doctests:
|
||||
raise ValueError("Doctests not supported")
|
||||
|
||||
if extra_argv:
|
||||
pytest_args += list(extra_argv)
|
||||
|
||||
if verbose > 1:
|
||||
pytest_args += ["-" + "v"*(verbose - 1)]
|
||||
|
||||
if coverage:
|
||||
pytest_args += ["--cov=" + module_path]
|
||||
|
||||
if label == "fast":
|
||||
pytest_args += ["-m", "not slow"]
|
||||
elif label != "full":
|
||||
pytest_args += ["-m", label]
|
||||
|
||||
if durations >= 0:
|
||||
pytest_args += ["--durations=%s" % durations]
|
||||
|
||||
if tests is None:
|
||||
tests = [self.module_name]
|
||||
|
||||
pytest_args += ["--pyargs"] + list(tests)
|
||||
|
||||
|
||||
# run tests.
|
||||
_show_numpy_info()
|
||||
|
||||
try:
|
||||
code = pytest.main(pytest_args)
|
||||
except SystemExit as exc:
|
||||
code = exc.code
|
||||
|
||||
return code == 0
|
20
venv/lib/python3.7/site-packages/numpy/compat/__init__.py
Normal file
@ -0,0 +1,20 @@
|
||||
"""
|
||||
Compatibility module.
|
||||
|
||||
This module contains duplicated code from Python itself or 3rd party
|
||||
extensions, which may be included for the following reasons:
|
||||
|
||||
* compatibility
|
||||
* we may only need a small subset of the copied library/module
|
||||
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
from . import _inspect
|
||||
from . import py3k
|
||||
from ._inspect import getargspec, formatargspec
|
||||
from .py3k import *
|
||||
|
||||
__all__ = []
|
||||
__all__.extend(_inspect.__all__)
|
||||
__all__.extend(py3k.__all__)
|
193
venv/lib/python3.7/site-packages/numpy/compat/_inspect.py
Normal file
@ -0,0 +1,193 @@
|
||||
"""Subset of inspect module from upstream python
|
||||
|
||||
We use this instead of upstream because upstream inspect is slow to import, and
|
||||
significantly contributes to numpy import times. Importing this copy has almost
|
||||
no overhead.
|
||||
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
import types
|
||||
|
||||
__all__ = ['getargspec', 'formatargspec']
|
||||
|
||||
# ----------------------------------------------------------- type-checking
|
||||
def ismethod(object):
|
||||
"""Return true if the object is an instance method.
|
||||
|
||||
Instance method objects provide these attributes:
|
||||
__doc__ documentation string
|
||||
__name__ name with which this method was defined
|
||||
im_class class object in which this method belongs
|
||||
im_func function object containing implementation of method
|
||||
im_self instance to which this method is bound, or None
|
||||
|
||||
"""
|
||||
return isinstance(object, types.MethodType)
|
||||
|
||||
def isfunction(object):
|
||||
"""Return true if the object is a user-defined function.
|
||||
|
||||
Function objects provide these attributes:
|
||||
__doc__ documentation string
|
||||
__name__ name with which this function was defined
|
||||
func_code code object containing compiled function bytecode
|
||||
func_defaults tuple of any default values for arguments
|
||||
func_doc (same as __doc__)
|
||||
func_globals global namespace in which this function was defined
|
||||
func_name (same as __name__)
|
||||
|
||||
"""
|
||||
return isinstance(object, types.FunctionType)
|
||||
|
||||
def iscode(object):
|
||||
"""Return true if the object is a code object.
|
||||
|
||||
Code objects provide these attributes:
|
||||
co_argcount number of arguments (not including * or ** args)
|
||||
co_code string of raw compiled bytecode
|
||||
co_consts tuple of constants used in the bytecode
|
||||
co_filename name of file in which this code object was created
|
||||
co_firstlineno number of first line in Python source code
|
||||
co_flags bitmap: 1=optimized | 2=newlocals | 4=*arg | 8=**arg
|
||||
co_lnotab encoded mapping of line numbers to bytecode indices
|
||||
co_name name with which this code object was defined
|
||||
co_names tuple of names of local variables
|
||||
co_nlocals number of local variables
|
||||
co_stacksize virtual machine stack space required
|
||||
co_varnames tuple of names of arguments and local variables
|
||||
|
||||
"""
|
||||
return isinstance(object, types.CodeType)
|
||||
|
||||
# ------------------------------------------------ argument list extraction
|
||||
# These constants are from Python's compile.h.
|
||||
CO_OPTIMIZED, CO_NEWLOCALS, CO_VARARGS, CO_VARKEYWORDS = 1, 2, 4, 8
|
||||
|
||||
def getargs(co):
|
||||
"""Get information about the arguments accepted by a code object.
|
||||
|
||||
Three things are returned: (args, varargs, varkw), where 'args' is
|
||||
a list of argument names (possibly containing nested lists), and
|
||||
'varargs' and 'varkw' are the names of the * and ** arguments or None.
|
||||
|
||||
"""
|
||||
|
||||
if not iscode(co):
|
||||
raise TypeError('arg is not a code object')
|
||||
|
||||
nargs = co.co_argcount
|
||||
names = co.co_varnames
|
||||
args = list(names[:nargs])
|
||||
|
||||
# The following acrobatics are for anonymous (tuple) arguments.
|
||||
# Which we do not need to support, so remove to avoid importing
|
||||
# the dis module.
|
||||
for i in range(nargs):
|
||||
if args[i][:1] in ['', '.']:
|
||||
raise TypeError("tuple function arguments are not supported")
|
||||
varargs = None
|
||||
if co.co_flags & CO_VARARGS:
|
||||
varargs = co.co_varnames[nargs]
|
||||
nargs = nargs + 1
|
||||
varkw = None
|
||||
if co.co_flags & CO_VARKEYWORDS:
|
||||
varkw = co.co_varnames[nargs]
|
||||
return args, varargs, varkw
|
||||
|
||||
def getargspec(func):
|
||||
"""Get the names and default values of a function's arguments.
|
||||
|
||||
A tuple of four things is returned: (args, varargs, varkw, defaults).
|
||||
'args' is a list of the argument names (it may contain nested lists).
|
||||
'varargs' and 'varkw' are the names of the * and ** arguments or None.
|
||||
'defaults' is an n-tuple of the default values of the last n arguments.
|
||||
|
||||
"""
|
||||
|
||||
if ismethod(func):
|
||||
func = func.__func__
|
||||
if not isfunction(func):
|
||||
raise TypeError('arg is not a Python function')
|
||||
args, varargs, varkw = getargs(func.__code__)
|
||||
return args, varargs, varkw, func.__defaults__
|
||||
|
||||
def getargvalues(frame):
|
||||
"""Get information about arguments passed into a particular frame.
|
||||
|
||||
A tuple of four things is returned: (args, varargs, varkw, locals).
|
||||
'args' is a list of the argument names (it may contain nested lists).
|
||||
'varargs' and 'varkw' are the names of the * and ** arguments or None.
|
||||
'locals' is the locals dictionary of the given frame.
|
||||
|
||||
"""
|
||||
args, varargs, varkw = getargs(frame.f_code)
|
||||
return args, varargs, varkw, frame.f_locals
|
||||
|
||||
def joinseq(seq):
|
||||
if len(seq) == 1:
|
||||
return '(' + seq[0] + ',)'
|
||||
else:
|
||||
return '(' + ', '.join(seq) + ')'
|
||||
|
||||
def strseq(object, convert, join=joinseq):
|
||||
"""Recursively walk a sequence, stringifying each element.
|
||||
|
||||
"""
|
||||
if type(object) in [list, tuple]:
|
||||
return join([strseq(_o, convert, join) for _o in object])
|
||||
else:
|
||||
return convert(object)
|
||||
|
||||
def formatargspec(args, varargs=None, varkw=None, defaults=None,
|
||||
formatarg=str,
|
||||
formatvarargs=lambda name: '*' + name,
|
||||
formatvarkw=lambda name: '**' + name,
|
||||
formatvalue=lambda value: '=' + repr(value),
|
||||
join=joinseq):
|
||||
"""Format an argument spec from the 4 values returned by getargspec.
|
||||
|
||||
The first four arguments are (args, varargs, varkw, defaults). The
|
||||
other four arguments are the corresponding optional formatting functions
|
||||
that are called to turn names and values into strings. The ninth
|
||||
argument is an optional function to format the sequence of arguments.
|
||||
|
||||
"""
|
||||
specs = []
|
||||
if defaults:
|
||||
firstdefault = len(args) - len(defaults)
|
||||
for i in range(len(args)):
|
||||
spec = strseq(args[i], formatarg, join)
|
||||
if defaults and i >= firstdefault:
|
||||
spec = spec + formatvalue(defaults[i - firstdefault])
|
||||
specs.append(spec)
|
||||
if varargs is not None:
|
||||
specs.append(formatvarargs(varargs))
|
||||
if varkw is not None:
|
||||
specs.append(formatvarkw(varkw))
|
||||
return '(' + ', '.join(specs) + ')'
|
||||
|
||||
def formatargvalues(args, varargs, varkw, locals,
|
||||
formatarg=str,
|
||||
formatvarargs=lambda name: '*' + name,
|
||||
formatvarkw=lambda name: '**' + name,
|
||||
formatvalue=lambda value: '=' + repr(value),
|
||||
join=joinseq):
|
||||
"""Format an argument spec from the 4 values returned by getargvalues.
|
||||
|
||||
The first four arguments are (args, varargs, varkw, locals). The
|
||||
next four arguments are the corresponding optional formatting functions
|
||||
that are called to turn names and values into strings. The ninth
|
||||
argument is an optional function to format the sequence of arguments.
|
||||
|
||||
"""
|
||||
def convert(name, locals=locals,
|
||||
formatarg=formatarg, formatvalue=formatvalue):
|
||||
return formatarg(name) + formatvalue(locals[name])
|
||||
specs = [strseq(arg, convert, join) for arg in args]
|
||||
|
||||
if varargs:
|
||||
specs.append(formatvarargs(varargs) + formatvalue(locals[varargs]))
|
||||
if varkw:
|
||||
specs.append(formatvarkw(varkw) + formatvalue(locals[varkw]))
|
||||
return '(' + ', '.join(specs) + ')'
|
253
venv/lib/python3.7/site-packages/numpy/compat/py3k.py
Normal file
@ -0,0 +1,253 @@
|
||||
"""
|
||||
Python 3.X compatibility tools.
|
||||
|
||||
While this file was originally intented for Python 2 -> 3 transition,
|
||||
it is now used to create a compatibility layer between different
|
||||
minor versions of Python 3.
|
||||
|
||||
While the active version of numpy may not support a given version of python, we
|
||||
allow downstream libraries to continue to use these shims for forward
|
||||
compatibility with numpy while they transition their code to newer versions of
|
||||
Python.
|
||||
"""
|
||||
__all__ = ['bytes', 'asbytes', 'isfileobj', 'getexception', 'strchar',
|
||||
'unicode', 'asunicode', 'asbytes_nested', 'asunicode_nested',
|
||||
'asstr', 'open_latin1', 'long', 'basestring', 'sixu',
|
||||
'integer_types', 'is_pathlib_path', 'npy_load_module', 'Path',
|
||||
'pickle', 'contextlib_nullcontext', 'os_fspath', 'os_PathLike']
|
||||
|
||||
import sys
|
||||
import os
|
||||
try:
|
||||
from pathlib import Path, PurePath
|
||||
except ImportError:
|
||||
Path = PurePath = None
|
||||
|
||||
if sys.version_info[0] >= 3:
|
||||
import io
|
||||
|
||||
try:
|
||||
import pickle5 as pickle
|
||||
except ImportError:
|
||||
import pickle
|
||||
|
||||
long = int
|
||||
integer_types = (int,)
|
||||
basestring = str
|
||||
unicode = str
|
||||
bytes = bytes
|
||||
|
||||
def asunicode(s):
|
||||
if isinstance(s, bytes):
|
||||
return s.decode('latin1')
|
||||
return str(s)
|
||||
|
||||
def asbytes(s):
|
||||
if isinstance(s, bytes):
|
||||
return s
|
||||
return str(s).encode('latin1')
|
||||
|
||||
def asstr(s):
|
||||
if isinstance(s, bytes):
|
||||
return s.decode('latin1')
|
||||
return str(s)
|
||||
|
||||
def isfileobj(f):
|
||||
return isinstance(f, (io.FileIO, io.BufferedReader, io.BufferedWriter))
|
||||
|
||||
def open_latin1(filename, mode='r'):
|
||||
return open(filename, mode=mode, encoding='iso-8859-1')
|
||||
|
||||
def sixu(s):
|
||||
return s
|
||||
|
||||
strchar = 'U'
|
||||
|
||||
else:
|
||||
import cpickle as pickle
|
||||
|
||||
bytes = str
|
||||
long = long
|
||||
basestring = basestring
|
||||
unicode = unicode
|
||||
integer_types = (int, long)
|
||||
asbytes = str
|
||||
asstr = str
|
||||
strchar = 'S'
|
||||
|
||||
def isfileobj(f):
|
||||
return isinstance(f, file)
|
||||
|
||||
def asunicode(s):
|
||||
if isinstance(s, unicode):
|
||||
return s
|
||||
return str(s).decode('ascii')
|
||||
|
||||
def open_latin1(filename, mode='r'):
|
||||
return open(filename, mode=mode)
|
||||
|
||||
def sixu(s):
|
||||
return unicode(s, 'unicode_escape')
|
||||
|
||||
def getexception():
|
||||
return sys.exc_info()[1]
|
||||
|
||||
def asbytes_nested(x):
|
||||
if hasattr(x, '__iter__') and not isinstance(x, (bytes, unicode)):
|
||||
return [asbytes_nested(y) for y in x]
|
||||
else:
|
||||
return asbytes(x)
|
||||
|
||||
def asunicode_nested(x):
|
||||
if hasattr(x, '__iter__') and not isinstance(x, (bytes, unicode)):
|
||||
return [asunicode_nested(y) for y in x]
|
||||
else:
|
||||
return asunicode(x)
|
||||
|
||||
def is_pathlib_path(obj):
|
||||
"""
|
||||
Check whether obj is a pathlib.Path object.
|
||||
|
||||
Prefer using `isinstance(obj, os_PathLike)` instead of this function.
|
||||
"""
|
||||
return Path is not None and isinstance(obj, Path)
|
||||
|
||||
# from Python 3.7
|
||||
class contextlib_nullcontext(object):
|
||||
"""Context manager that does no additional processing.
|
||||
|
||||
Used as a stand-in for a normal context manager, when a particular
|
||||
block of code is only sometimes used with a normal context manager:
|
||||
|
||||
cm = optional_cm if condition else nullcontext()
|
||||
with cm:
|
||||
# Perform operation, using optional_cm if condition is True
|
||||
"""
|
||||
|
||||
def __init__(self, enter_result=None):
|
||||
self.enter_result = enter_result
|
||||
|
||||
def __enter__(self):
|
||||
return self.enter_result
|
||||
|
||||
def __exit__(self, *excinfo):
|
||||
pass
|
||||
|
||||
|
||||
if sys.version_info[0] >= 3 and sys.version_info[1] >= 4:
|
||||
def npy_load_module(name, fn, info=None):
|
||||
"""
|
||||
Load a module.
|
||||
|
||||
.. versionadded:: 1.11.2
|
||||
|
||||
Parameters
|
||||
----------
|
||||
name : str
|
||||
Full module name.
|
||||
fn : str
|
||||
Path to module file.
|
||||
info : tuple, optional
|
||||
Only here for backward compatibility with Python 2.*.
|
||||
|
||||
Returns
|
||||
-------
|
||||
mod : module
|
||||
|
||||
"""
|
||||
import importlib.machinery
|
||||
return importlib.machinery.SourceFileLoader(name, fn).load_module()
|
||||
else:
|
||||
def npy_load_module(name, fn, info=None):
|
||||
"""
|
||||
Load a module.
|
||||
|
||||
.. versionadded:: 1.11.2
|
||||
|
||||
Parameters
|
||||
----------
|
||||
name : str
|
||||
Full module name.
|
||||
fn : str
|
||||
Path to module file.
|
||||
info : tuple, optional
|
||||
Information as returned by `imp.find_module`
|
||||
(suffix, mode, type).
|
||||
|
||||
Returns
|
||||
-------
|
||||
mod : module
|
||||
|
||||
"""
|
||||
import imp
|
||||
if info is None:
|
||||
path = os.path.dirname(fn)
|
||||
fo, fn, info = imp.find_module(name, [path])
|
||||
else:
|
||||
fo = open(fn, info[1])
|
||||
try:
|
||||
mod = imp.load_module(name, fo, fn, info)
|
||||
finally:
|
||||
fo.close()
|
||||
return mod
|
||||
|
||||
# backport abc.ABC
|
||||
import abc
|
||||
if sys.version_info[:2] >= (3, 4):
|
||||
abc_ABC = abc.ABC
|
||||
else:
|
||||
abc_ABC = abc.ABCMeta('ABC', (object,), {'__slots__': ()})
|
||||
|
||||
|
||||
# Backport os.fs_path, os.PathLike, and PurePath.__fspath__
|
||||
if sys.version_info[:2] >= (3, 6):
|
||||
os_fspath = os.fspath
|
||||
os_PathLike = os.PathLike
|
||||
else:
|
||||
def _PurePath__fspath__(self):
|
||||
return str(self)
|
||||
|
||||
class os_PathLike(abc_ABC):
|
||||
"""Abstract base class for implementing the file system path protocol."""
|
||||
|
||||
@abc.abstractmethod
|
||||
def __fspath__(self):
|
||||
"""Return the file system path representation of the object."""
|
||||
raise NotImplementedError
|
||||
|
||||
@classmethod
|
||||
def __subclasshook__(cls, subclass):
|
||||
if PurePath is not None and issubclass(subclass, PurePath):
|
||||
return True
|
||||
return hasattr(subclass, '__fspath__')
|
||||
|
||||
|
||||
def os_fspath(path):
|
||||
"""Return the path representation of a path-like object.
|
||||
If str or bytes is passed in, it is returned unchanged. Otherwise the
|
||||
os.PathLike interface is used to get the path representation. If the
|
||||
path representation is not str or bytes, TypeError is raised. If the
|
||||
provided path is not str, bytes, or os.PathLike, TypeError is raised.
|
||||
"""
|
||||
if isinstance(path, (str, bytes)):
|
||||
return path
|
||||
|
||||
# Work from the object's type to match method resolution of other magic
|
||||
# methods.
|
||||
path_type = type(path)
|
||||
try:
|
||||
path_repr = path_type.__fspath__(path)
|
||||
except AttributeError:
|
||||
if hasattr(path_type, '__fspath__'):
|
||||
raise
|
||||
elif PurePath is not None and issubclass(path_type, PurePath):
|
||||
return _PurePath__fspath__(path)
|
||||
else:
|
||||
raise TypeError("expected str, bytes or os.PathLike object, "
|
||||
"not " + path_type.__name__)
|
||||
if isinstance(path_repr, (str, bytes)):
|
||||
return path_repr
|
||||
else:
|
||||
raise TypeError("expected {}.__fspath__() to return str or bytes, "
|
||||
"not {}".format(path_type.__name__,
|
||||
type(path_repr).__name__))
|
12
venv/lib/python3.7/site-packages/numpy/compat/setup.py
Normal file
@ -0,0 +1,12 @@
|
||||
from __future__ import division, print_function
|
||||
|
||||
def configuration(parent_package='',top_path=None):
|
||||
from numpy.distutils.misc_util import Configuration
|
||||
|
||||
config = Configuration('compat', parent_package, top_path)
|
||||
config.add_data_dir('tests')
|
||||
return config
|
||||
|
||||
if __name__ == '__main__':
|
||||
from numpy.distutils.core import setup
|
||||
setup(configuration=configuration)
|
@ -0,0 +1,21 @@
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
from os.path import join
|
||||
|
||||
from numpy.compat import isfileobj
|
||||
from numpy.testing import assert_
|
||||
from numpy.testing import tempdir
|
||||
|
||||
|
||||
def test_isfileobj():
|
||||
with tempdir(prefix="numpy_test_compat_") as folder:
|
||||
filename = join(folder, 'a.bin')
|
||||
|
||||
with open(filename, 'wb') as f:
|
||||
assert_(isfileobj(f))
|
||||
|
||||
with open(filename, 'ab') as f:
|
||||
assert_(isfileobj(f))
|
||||
|
||||
with open(filename, 'rb') as f:
|
||||
assert_(isfileobj(f))
|
87
venv/lib/python3.7/site-packages/numpy/conftest.py
Normal file
@ -0,0 +1,87 @@
|
||||
"""
|
||||
Pytest configuration and fixtures for the Numpy test suite.
|
||||
"""
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
import os
|
||||
|
||||
import pytest
|
||||
import numpy
|
||||
|
||||
from numpy.core._multiarray_tests import get_fpu_mode
|
||||
|
||||
|
||||
_old_fpu_mode = None
|
||||
_collect_results = {}
|
||||
|
||||
|
||||
def pytest_configure(config):
|
||||
config.addinivalue_line("markers",
|
||||
"valgrind_error: Tests that are known to error under valgrind.")
|
||||
config.addinivalue_line("markers",
|
||||
"leaks_references: Tests that are known to leak references.")
|
||||
config.addinivalue_line("markers",
|
||||
"slow: Tests that are very slow.")
|
||||
|
||||
|
||||
def pytest_addoption(parser):
|
||||
parser.addoption("--available-memory", action="store", default=None,
|
||||
help=("Set amount of memory available for running the "
|
||||
"test suite. This can result to tests requiring "
|
||||
"especially large amounts of memory to be skipped. "
|
||||
"Equivalent to setting environment variable "
|
||||
"NPY_AVAILABLE_MEM. Default: determined"
|
||||
"automatically."))
|
||||
|
||||
|
||||
def pytest_sessionstart(session):
|
||||
available_mem = session.config.getoption('available_memory')
|
||||
if available_mem is not None:
|
||||
os.environ['NPY_AVAILABLE_MEM'] = available_mem
|
||||
|
||||
|
||||
#FIXME when yield tests are gone.
|
||||
@pytest.hookimpl()
|
||||
def pytest_itemcollected(item):
|
||||
"""
|
||||
Check FPU precision mode was not changed during test collection.
|
||||
|
||||
The clumsy way we do it here is mainly necessary because numpy
|
||||
still uses yield tests, which can execute code at test collection
|
||||
time.
|
||||
"""
|
||||
global _old_fpu_mode
|
||||
|
||||
mode = get_fpu_mode()
|
||||
|
||||
if _old_fpu_mode is None:
|
||||
_old_fpu_mode = mode
|
||||
elif mode != _old_fpu_mode:
|
||||
_collect_results[item] = (_old_fpu_mode, mode)
|
||||
_old_fpu_mode = mode
|
||||
|
||||
|
||||
@pytest.fixture(scope="function", autouse=True)
|
||||
def check_fpu_mode(request):
|
||||
"""
|
||||
Check FPU precision mode was not changed during the test.
|
||||
"""
|
||||
old_mode = get_fpu_mode()
|
||||
yield
|
||||
new_mode = get_fpu_mode()
|
||||
|
||||
if old_mode != new_mode:
|
||||
raise AssertionError("FPU precision mode changed from {0:#x} to {1:#x}"
|
||||
" during the test".format(old_mode, new_mode))
|
||||
|
||||
collect_result = _collect_results.get(request.node)
|
||||
if collect_result is not None:
|
||||
old_mode, new_mode = collect_result
|
||||
raise AssertionError("FPU precision mode changed from {0:#x} to {1:#x}"
|
||||
" when collecting the test".format(old_mode,
|
||||
new_mode))
|
||||
|
||||
|
||||
@pytest.fixture(autouse=True)
|
||||
def add_np(doctest_namespace):
|
||||
doctest_namespace['np'] = numpy
|
154
venv/lib/python3.7/site-packages/numpy/core/__init__.py
Normal file
@ -0,0 +1,154 @@
|
||||
"""
|
||||
Contains the core of NumPy: ndarray, ufuncs, dtypes, etc.
|
||||
|
||||
Please note that this module is private. All functions and objects
|
||||
are available in the main ``numpy`` namespace - use that instead.
|
||||
|
||||
"""
|
||||
|
||||
from __future__ import division, absolute_import, print_function
|
||||
|
||||
from numpy.version import version as __version__
|
||||
|
||||
import os
|
||||
|
||||
# disables OpenBLAS affinity setting of the main thread that limits
|
||||
# python threads or processes to one core
|
||||
env_added = []
|
||||
for envkey in ['OPENBLAS_MAIN_FREE', 'GOTOBLAS_MAIN_FREE']:
|
||||
if envkey not in os.environ:
|
||||
os.environ[envkey] = '1'
|
||||
env_added.append(envkey)
|
||||
|
||||
try:
|
||||
from . import multiarray
|
||||
except ImportError as exc:
|
||||
import sys
|
||||
msg = """
|
||||
|
||||
IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!
|
||||
|
||||
Importing the numpy c-extensions failed.
|
||||
- Try uninstalling and reinstalling numpy.
|
||||
- If you have already done that, then:
|
||||
1. Check that you expected to use Python%d.%d from "%s",
|
||||
and that you have no directories in your PATH or PYTHONPATH that can
|
||||
interfere with the Python and numpy version "%s" you're trying to use.
|
||||
2. If (1) looks fine, you can open a new issue at
|
||||
https://github.com/numpy/numpy/issues. Please include details on:
|
||||
- how you installed Python
|
||||
- how you installed numpy
|
||||
- your operating system
|
||||
- whether or not you have multiple versions of Python installed
|
||||
- if you built from source, your compiler versions and ideally a build log
|
||||
|
||||
- If you're working with a numpy git repository, try `git clean -xdf`
|
||||
(removes all files not under version control) and rebuild numpy.
|
||||
|
||||
Note: this error has many possible causes, so please don't comment on
|
||||
an existing issue about this - open a new one instead.
|
||||
|
||||
Original error was: %s
|
||||
""" % (sys.version_info[0], sys.version_info[1], sys.executable,
|
||||
__version__, exc)
|
||||
raise ImportError(msg)
|
||||
finally:
|
||||
for envkey in env_added:
|
||||
del os.environ[envkey]
|
||||
del envkey
|
||||
del env_added
|
||||
del os
|
||||
|
||||
from . import umath
|
||||
|
||||
# Check that multiarray,umath are pure python modules wrapping
|
||||
# _multiarray_umath and not either of the old c-extension modules
|
||||
if not (hasattr(multiarray, '_multiarray_umath') and
|
||||
hasattr(umath, '_multiarray_umath')):
|
||||
import sys
|
||||
path = sys.modules['numpy'].__path__
|
||||
msg = ("Something is wrong with the numpy installation. "
|
||||
"While importing we detected an older version of "
|
||||
"numpy in {}. One method of fixing this is to repeatedly uninstall "
|
||||
"numpy until none is found, then reinstall this version.")
|
||||
raise ImportError(msg.format(path))
|
||||
|
||||
from . import numerictypes as nt
|
||||
multiarray.set_typeDict(nt.sctypeDict)
|
||||
from . import numeric
|
||||
from .numeric import *
|
||||
from . import fromnumeric
|
||||
from .fromnumeric import *
|
||||
from . import defchararray as char
|
||||
from . import records as rec
|
||||
from .records import *
|
||||
from .memmap import *
|
||||
from .defchararray import chararray
|
||||
from . import function_base
|
||||
from .function_base import *
|
||||
from . import machar
|
||||
from .machar import *
|
||||
from . import getlimits
|
||||
from .getlimits import *
|
||||
from . import shape_base
|
||||
from .shape_base import *
|
||||
from . import einsumfunc
|
||||
from .einsumfunc import *
|
||||
del nt
|
||||
|
||||
from .fromnumeric import amax as max, amin as min, round_ as round
|
||||
from .numeric import absolute as abs
|
||||
|
||||
# do this after everything else, to minimize the chance of this misleadingly
|
||||
# appearing in an import-time traceback
|
||||
from . import _add_newdocs
|
||||
# add these for module-freeze analysis (like PyInstaller)
|
||||
from . import _dtype_ctypes
|
||||
from . import _internal
|
||||
from . import _dtype
|
||||
from . import _methods
|
||||
|
||||
__all__ = ['char', 'rec', 'memmap']
|
||||
__all__ += numeric.__all__
|
||||
__all__ += fromnumeric.__all__
|
||||
__all__ += rec.__all__
|
||||
__all__ += ['chararray']
|
||||
__all__ += function_base.__all__
|
||||
__all__ += machar.__all__
|
||||
__all__ += getlimits.__all__
|
||||
__all__ += shape_base.__all__
|
||||
__all__ += einsumfunc.__all__
|
||||
|
||||
# Make it possible so that ufuncs can be pickled
|
||||
# Here are the loading and unloading functions
|
||||
# The name numpy.core._ufunc_reconstruct must be
|
||||
# available for unpickling to work.
|
||||
def _ufunc_reconstruct(module, name):
|
||||
# The `fromlist` kwarg is required to ensure that `mod` points to the
|
||||
# inner-most module rather than the parent package when module name is
|
||||
# nested. This makes it possible to pickle non-toplevel ufuncs such as
|
||||
# scipy.special.expit for instance.
|
||||
mod = __import__(module, fromlist=[name])
|
||||
return getattr(mod, name)
|
||||
|
||||
def _ufunc_reduce(func):
|
||||
from pickle import whichmodule
|
||||
name = func.__name__
|
||||
return _ufunc_reconstruct, (whichmodule(func, name), name)
|
||||
|
||||
|
||||
import sys
|
||||
if sys.version_info[0] >= 3:
|
||||
import copyreg
|
||||
else:
|
||||
import copy_reg as copyreg
|
||||
|
||||
copyreg.pickle(ufunc, _ufunc_reduce, _ufunc_reconstruct)
|
||||
# Unclutter namespace (must keep _ufunc_reconstruct for unpickling)
|
||||
del copyreg
|
||||
del sys
|
||||
del _ufunc_reduce
|
||||
|
||||
from numpy._pytesttester import PytestTester
|
||||
test = PytestTester(__name__)
|
||||
del PytestTester
|