HALDLS
haldls::vx::VectorGeneratorControl Class Reference

#include <vector_generator.h>

Classes

struct  EventPack
 Event packing to use. More...
 
struct  ResendCount
 Number of times to resend same input. More...
 
struct  SourceCount
 Number of sources to use. More...
 
struct  Wait
 Wait value to use. More...
 

Public Types

typedef halco::hicann_dls::vx::VectorGeneratorControlOnFPGA coordinate_type
 
typedef std::true_type is_leaf_node
 
enum class  Notification { omnibus , gpio }
 Type of notification to send once ready. More...
 
enum class  Signal { disabled , notification , trigger_and_notification }
 Type(s) of signals to use. More...
 
enum class  Source { omnibus , external_0 , external_1 , external_2 }
 Source to use. More...
 
typedef halco::common::typed_array< Source, halco::hicann_dls::vx::SourceOnVectorGenerator > Sources
 
typedef halco::common::typed_array< Wait, halco::hicann_dls::vx::SourceOnVectorGenerator > SourceWaits
 
enum class  Trigger { omnibus , gpio }
 Type of trigger signal to listen to. More...
 

Public Member Functions

 VectorGeneratorControl ()=default
 
void decode (std::array< fisch::vx::word_access_type::Omnibus, read_config_size_in_words > const &data) SYMBOL_VISIBLE
 
std::array< fisch::vx::word_access_type::Omnibus, write_config_size_in_wordsencode () const SYMBOL_VISIBLE
 
bool get_enable_ignore_zeros () const SYMBOL_VISIBLE
 Get whether to ignore events with payload of zero. More...
 
EventPack get_event_pack () const SYMBOL_VISIBLE
 
halco::hicann_dls::vx::VectorGeneratorLUTEntryOnVectorGeneratorLUT get_lookup_table_entry_start () const SYMBOL_VISIBLE
 Get lookup table entry position to start from. More...
 
Notification get_notification () const SYMBOL_VISIBLE
 
ResendCount get_resend_count () const SYMBOL_VISIBLE
 
Signal get_signal () const SYMBOL_VISIBLE
 
SourceCount get_source_count () const SYMBOL_VISIBLE
 
SourceWaits get_source_waits () const SYMBOL_VISIBLE
 
Sources get_sources () const SYMBOL_VISIBLE
 
Trigger get_trigger () const SYMBOL_VISIBLE
 
bool operator!= (VectorGeneratorControl const &other) const SYMBOL_VISIBLE
 
bool operator== (VectorGeneratorControl const &other) const SYMBOL_VISIBLE
 
void set_enable_ignore_zeros (bool value) SYMBOL_VISIBLE
 Set whether to ignore events with payload of zero. More...
 
void set_event_pack (EventPack value) SYMBOL_VISIBLE
 
void set_lookup_table_entry_start (halco::hicann_dls::vx::VectorGeneratorLUTEntryOnVectorGeneratorLUT value) SYMBOL_VISIBLE
 Set lookup table entry position to start from. More...
 
void set_notification (Notification value) SYMBOL_VISIBLE
 
void set_resend_count (ResendCount value) SYMBOL_VISIBLE
 
void set_signal (Signal value) SYMBOL_VISIBLE
 
void set_source_count (SourceCount value) SYMBOL_VISIBLE
 
void set_source_waits (SourceWaits value) SYMBOL_VISIBLE
 
void set_sources (Sources value) SYMBOL_VISIBLE
 
void set_trigger (Trigger value) SYMBOL_VISIBLE
 

Static Public Member Functions

static std::array< halco::hicann_dls::vx::OmnibusAddress, read_config_size_in_wordsread_addresses (coordinate_type const &coord) SYMBOL_VISIBLE
 
static std::array< halco::hicann_dls::vx::OmnibusAddress, write_config_size_in_wordswrite_addresses (coordinate_type const &coord) SYMBOL_VISIBLE
 

Static Public Attributes

static constexpr size_t read_config_size_in_words = 0
 
static constexpr size_t write_config_size_in_words = 1
 

Friends

class cereal::access
 
std::ostream & operator<< (std::ostream &os, VectorGeneratorControl const &config) SYMBOL_VISIBLE
 

Detailed Description

Definition at line 27 of file vector_generator.h.

Member Typedef Documentation

◆ coordinate_type

typedef halco::hicann_dls::vx::VectorGeneratorControlOnFPGA haldls::vx::VectorGeneratorControl::coordinate_type

Definition at line 30 of file vector_generator.h.

◆ is_leaf_node

Definition at line 31 of file vector_generator.h.

◆ Sources

typedef halco::common::typed_array<Source, halco::hicann_dls::vx::SourceOnVectorGenerator> haldls::vx::VectorGeneratorControl::Sources

Definition at line 147 of file vector_generator.h.

◆ SourceWaits

typedef halco::common::typed_array<Wait, halco::hicann_dls::vx::SourceOnVectorGenerator> haldls::vx::VectorGeneratorControl::SourceWaits

Definition at line 145 of file vector_generator.h.

Member Enumeration Documentation

◆ Notification

Type of notification to send once ready.

Enumerator
omnibus 
gpio 

Definition at line 91 of file vector_generator.h.

◆ Signal

Type(s) of signals to use.

Enumerator
disabled 
notification 
trigger_and_notification 

Definition at line 109 of file vector_generator.h.

◆ Source

Source to use.

Enumerator
omnibus 
external_0 
external_1 
external_2 

Definition at line 69 of file vector_generator.h.

◆ Trigger

Type of trigger signal to listen to.

Enumerator
omnibus 
gpio 

Definition at line 100 of file vector_generator.h.

Constructor & Destructor Documentation

◆ VectorGeneratorControl()

haldls::vx::VectorGeneratorControl::VectorGeneratorControl ( )
default

Member Function Documentation

◆ decode()

void haldls::vx::VectorGeneratorControl::decode ( std::array< fisch::vx::word_access_type::Omnibus, read_config_size_in_words > const &  data)

◆ encode()

std::array<fisch::vx::word_access_type::Omnibus, write_config_size_in_words> haldls::vx::VectorGeneratorControl::encode ( ) const

◆ get_enable_ignore_zeros()

bool haldls::vx::VectorGeneratorControl::get_enable_ignore_zeros ( ) const

Get whether to ignore events with payload of zero.

Returns
Boolean value

◆ get_event_pack()

EventPack haldls::vx::VectorGeneratorControl::get_event_pack ( ) const

◆ get_lookup_table_entry_start()

halco::hicann_dls::vx::VectorGeneratorLUTEntryOnVectorGeneratorLUT haldls::vx::VectorGeneratorControl::get_lookup_table_entry_start ( ) const

Get lookup table entry position to start from.

Returns
Entry position

◆ get_notification()

Notification haldls::vx::VectorGeneratorControl::get_notification ( ) const

◆ get_resend_count()

ResendCount haldls::vx::VectorGeneratorControl::get_resend_count ( ) const

◆ get_signal()

Signal haldls::vx::VectorGeneratorControl::get_signal ( ) const

◆ get_source_count()

SourceCount haldls::vx::VectorGeneratorControl::get_source_count ( ) const

◆ get_source_waits()

SourceWaits haldls::vx::VectorGeneratorControl::get_source_waits ( ) const

◆ get_sources()

Sources haldls::vx::VectorGeneratorControl::get_sources ( ) const

◆ get_trigger()

Trigger haldls::vx::VectorGeneratorControl::get_trigger ( ) const

◆ operator!=()

bool haldls::vx::VectorGeneratorControl::operator!= ( VectorGeneratorControl const &  other) const

◆ operator==()

bool haldls::vx::VectorGeneratorControl::operator== ( VectorGeneratorControl const &  other) const

◆ read_addresses()

static std::array<halco::hicann_dls::vx::OmnibusAddress, read_config_size_in_words> haldls::vx::VectorGeneratorControl::read_addresses ( coordinate_type const &  coord)
static

◆ set_enable_ignore_zeros()

void haldls::vx::VectorGeneratorControl::set_enable_ignore_zeros ( bool  value)

Set whether to ignore events with payload of zero.

Parameters
valueBoolean value

◆ set_event_pack()

void haldls::vx::VectorGeneratorControl::set_event_pack ( EventPack  value)

◆ set_lookup_table_entry_start()

void haldls::vx::VectorGeneratorControl::set_lookup_table_entry_start ( halco::hicann_dls::vx::VectorGeneratorLUTEntryOnVectorGeneratorLUT  value)

Set lookup table entry position to start from.

Parameters
valueEntry position

◆ set_notification()

void haldls::vx::VectorGeneratorControl::set_notification ( Notification  value)

◆ set_resend_count()

void haldls::vx::VectorGeneratorControl::set_resend_count ( ResendCount  value)

◆ set_signal()

void haldls::vx::VectorGeneratorControl::set_signal ( Signal  value)

◆ set_source_count()

void haldls::vx::VectorGeneratorControl::set_source_count ( SourceCount  value)

◆ set_source_waits()

void haldls::vx::VectorGeneratorControl::set_source_waits ( SourceWaits  value)

◆ set_sources()

void haldls::vx::VectorGeneratorControl::set_sources ( Sources  value)

◆ set_trigger()

void haldls::vx::VectorGeneratorControl::set_trigger ( Trigger  value)

◆ write_addresses()

static std::array<halco::hicann_dls::vx::OmnibusAddress, write_config_size_in_words> haldls::vx::VectorGeneratorControl::write_addresses ( coordinate_type const &  coord)
static

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Definition at line 212 of file vector_generator.h.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
VectorGeneratorControl const &  config 
)
friend

Member Data Documentation

◆ read_config_size_in_words

constexpr size_t haldls::vx::VectorGeneratorControl::read_config_size_in_words = 0
staticconstexpr

Definition at line 196 of file vector_generator.h.

◆ write_config_size_in_words

constexpr size_t haldls::vx::VectorGeneratorControl::write_config_size_in_words = 1
staticconstexpr

Definition at line 197 of file vector_generator.h.


The documentation for this class was generated from the following file: