foropenai_ImageGeneration Module


Uses

  • module~~foropenai_imagegeneration~~UsesGraph module~foropenai_imagegeneration foropenai_ImageGeneration module~foropenai_base foropenai_base module~foropenai_imagegeneration->module~foropenai_base

Used by

  • module~~foropenai_imagegeneration~~UsedByGraph module~foropenai_imagegeneration foropenai_ImageGeneration module~foropenai foropenai module~foropenai->module~foropenai_imagegeneration program~test_base test_base program~test_base->module~foropenai program~test_chatcompletion test_ChatCompletion program~test_chatcompletion->module~foropenai program~test_imagegeneration test_ImageGeneration program~test_imagegeneration->module~foropenai program~test_transcription test_Transcription program~test_transcription->module~foropenai program~test_translation test_Translation program~test_translation->module~foropenai

Derived Types

type, public, extends(openai) ::  ImageGeneration

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: organization
character(len=:), public, allocatable :: api_key
character(len=:), public, allocatable :: file_name
character(len=14), public :: api_key_env = 'OPENAI_API_KEY'
character(len=10), public :: organization_env = 'OPENAI_ORG'
character(len=:), public, allocatable :: url
character(len=9), public :: size = '1024x1024'
character(len=1000), public :: prompt
character(len=4), public :: response_format = 'url'
integer, public :: n = 1
character(len=:), public, allocatable :: user_name
character(len=1024), public, allocatable :: assistant_response(:)

Type-Bound Procedures

procedure, public :: load_base_data
procedure, public :: print_api_key
procedure, public :: print_organization
procedure, public :: print_file_name
procedure, public :: set_file_name
procedure, public :: set_base_data
procedure, public :: create => create_image
procedure, private :: deallocate_url
procedure, private :: deallocate_user_name
procedure, private :: deallocate_assistant_response
procedure, public :: finalize => deallocate_ImageGeneration
procedure, private :: load_url
procedure, private :: load_size
procedure, private :: load_response_format
procedure, private :: load_n
procedure, private :: load_user_name
procedure, private :: load => load_ImageGeneration_data
procedure, private :: print_url
procedure, private :: print_size
procedure, public :: print_prompt
procedure, private :: print_response_format
procedure, private :: print_n
procedure, private :: print_user_name
procedure, public :: print_assistant_response
procedure, private :: set_url
procedure, private :: set_size
procedure, private :: set_prompt
procedure, private :: set_response_format
procedure, private :: set_n
procedure, private :: set_user_name
procedure, private :: set_assistant_response
procedure, public :: set => set_ImageGeneration_data

Subroutines

private impure elemental subroutine create_image(this, prompt, n, size, response_format, user_name)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: prompt
integer, intent(in), optional :: n
character(len=*), intent(in), optional :: size
character(len=*), intent(in), optional :: response_format
character(len=*), intent(in), optional :: user_name

private impure elemental subroutine load_url(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private impure elemental subroutine load_size(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private impure elemental subroutine load_response_format(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private impure elemental subroutine load_n(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private impure elemental subroutine load_user_name(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private impure elemental subroutine print_url(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_size(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_prompt(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_response_format(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_n(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_user_name(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private impure elemental subroutine print_assistant_response(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(in) :: this

private pure elemental subroutine set_url(this, url)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: url

private pure elemental subroutine set_size(this, size)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: size

private pure elemental subroutine set_prompt(this, prompt)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: prompt

private pure elemental subroutine set_response_format(this, response_format)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: response_format

private pure elemental subroutine set_n(this, n)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
integer, intent(in) :: n

private pure elemental subroutine set_user_name(this, user_name)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: user_name

private pure elemental subroutine set_assistant_response(this, assistant_response, i)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: assistant_response
integer, intent(in) :: i

private impure elemental subroutine set_ImageGeneration_data(this, file_name, url, size, prompt, response_format, n, user_name)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in), optional :: file_name
character(len=*), intent(in), optional :: url
character(len=*), intent(in), optional :: size
character(len=*), intent(in), optional :: prompt
character(len=*), intent(in), optional :: response_format
integer, intent(in), optional :: n
character(len=*), intent(in), optional :: user_name

private impure elemental subroutine load_ImageGeneration_data(this, file_name)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this
character(len=*), intent(in) :: file_name

private pure elemental subroutine deallocate_url(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private pure elemental subroutine deallocate_user_name(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private pure elemental subroutine deallocate_assistant_response(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this

private pure elemental subroutine deallocate_ImageGeneration(this)

Author
Seyed Ali Ghasemi

Arguments

Type IntentOptional Attributes Name
class(ImageGeneration), intent(inout) :: this