#!/usr/bin/python3
# -*- coding: utf-8 -*-
# -*- mode: Python -*-


'''

Send only black points
v0.1.0

Use it to test your filters and outputs

LICENCE : CC

by cocoa

'''

from __future__ import print_function
import time
import argparse
import sys
name="generator::dummy"


def debug(*args, **kwargs):
    if( verbose == False ):
        return
    print(*args, file=sys.stderr, **kwargs)

argsparser = argparse.ArgumentParser(description="dummy generator")
argsparser.add_argument("-f","--fps",help="Frame Per Second",default=30,type=int)
argsparser.add_argument("-v","--verbose",action="store_true",help="Verbose output")
args        = argsparser.parse_args()

fps=args.fps
verbose=args.verbose
optimal_looptime = 1 / fps
debug(name+" optimal looptime "+str(optimal_looptime))


shape = [[400,400,0],[400,400,64],[400,400,0]]


while True:
  start = time.time()
  print(shape, flush=True);
  looptime = time.time() - start
  if( looptime < optimal_looptime ):
    time.sleep( optimal_looptime - looptime)
    debug(name+" micro sleep:"+str( optimal_looptime - looptime))


