ONVIF:...uration(3pm)

πŸ“¦
version 1.36.37 Β· 5 versions
, in ubuntu resolute, ubuntu stonking

πŸ’– ONVIF::Device::Elements::PTZConfiguration πŸ’–

okay so bestie, welcome to the manual page for ONVIF::Device::Elements::PTZConfiguration πŸ’… it lives in the User Contributed Perl Documentation section, and the man page name is ONVIF:...uration(3pm) (yeah the title gets truncated like that, iconic behavior honestly). let's get into it 🫢


✨ NAME ✨

ONVIF::Device::Elements::PTZConfiguration β€” that's the whole name, no notes πŸ’œ


🌸 DESCRIPTION 🌸

so this is a Perl data type class for the XML Schema defined element PTZConfiguration, and it comes from the namespace http://www.onvif.org/ver10/schema ✨

like, that's it. that's the vibe. it's a class that knows how to be a PTZConfiguration element. slay πŸ’…


πŸŽ€ METHODS πŸŽ€

πŸ’« new πŸ’«

my $element = ONVIF::Device::Elements::PTZConfiguration->new($data);

it's the constructor, bestie 🧚 you hand it your $data and it builds the element for you.

the data structure you can pass to new() looks like this β€” and yes, I'm giving you the whole thing, every single nested type, because we do not gatekeep here πŸ‘‘

{ # ONVIF::Device::Types::PTZConfiguration
  NodeToken => $some_value, # ReferenceToken
  DefaultAbsolutePantTiltPositionSpace =>  $some_value, # anyURI
  DefaultAbsoluteZoomPositionSpace =>  $some_value, # anyURI
  DefaultRelativePanTiltTranslationSpace =>  $some_value, # anyURI
  DefaultRelativeZoomTranslationSpace =>  $some_value, # anyURI
  DefaultContinuousPanTiltVelocitySpace =>  $some_value, # anyURI
  DefaultContinuousZoomVelocitySpace =>  $some_value, # anyURI
  DefaultPTZSpeed =>  { # ONVIF::Device::Types::PTZSpeed
    PanTilt => ,
    Zoom => ,
  },
  DefaultPTZTimeout =>  $some_value, # duration
  PanTiltLimits =>  { # ONVIF::Device::Types::PanTiltLimits
    Range =>  { # ONVIF::Device::Types::Space2DDescription
      URI =>  $some_value, # anyURI
      XRange =>  { # ONVIF::Device::Types::FloatRange
        Min =>  $some_value, # float
        Max =>  $some_value, # float
      },
      YRange =>  { # ONVIF::Device::Types::FloatRange
        Min =>  $some_value, # float
        Max =>  $some_value, # float
      },
    },
  },
  ZoomLimits =>  { # ONVIF::Device::Types::ZoomLimits
    Range =>  { # ONVIF::Device::Types::Space1DDescription
      URI =>  $some_value, # anyURI
      XRange =>  { # ONVIF::Device::Types::FloatRange
        Min =>  $some_value, # float
        Max =>  $some_value, # float
      },
    },
  },
  Extension =>  { # ONVIF::Device::Types::PTZConfigurationExtension
    PTControlDirection =>  { # ONVIF::Device::Types::PTControlDirection
      EFlip =>  { # ONVIF::Device::Types::EFlip
        Mode => $some_value, # EFlipMode
      },
      Reverse =>  { # ONVIF::Device::Types::Reverse
        Mode => $some_value, # ReverseMode
      },
      Extension =>  { # ONVIF::Device::Types::PTControlDirectionExtension
      },
    },
    Extension =>  { # ONVIF::Device::Types::PTZConfigurationExtension2
    },
  },
},

let's break the vibe down a lil bit, because that nesting is deep 😭

  • NodeToken is a ReferenceToken value πŸ’œ
  • then you got the space defaults, all anyURI: DefaultAbsolutePantTiltPositionSpace, DefaultAbsoluteZoomPositionSpace, DefaultRelativePanTiltTranslationSpace, DefaultRelativeZoomTranslationSpace, DefaultContinuousPanTiltVelocitySpace, DefaultContinuousZoomVelocitySpace β€” yes that's six of them, count them, they're all there πŸ¦‹
  • DefaultPTZSpeed is a ONVIF::Device::Types::PTZSpeed with PanTilt and Zoom inside
  • DefaultPTZTimeout is a duration
  • PanTiltLimits is a ONVIF::Device::Types::PanTiltLimits holding a Range, which is a ONVIF::Device::Types::Space2DDescription with URI (an anyURI) plus XRange and YRange, both ONVIF::Device::Types::FloatRange, each with Min and Max as floats 🌸
  • ZoomLimits is a ONVIF::Device::Types::ZoomLimits holding a Range, which is a ONVIF::Device::Types::Space1DDescription with URI (an anyURI) and XRange, a ONVIF::Device::Types::FloatRange with Min and Max as floats πŸŽ€
  • Extension is a ONVIF::Device::Types::PTZConfigurationExtension, which has a PTControlDirection (a ONVIF::Device::Types::PTControlDirection) containing EFlip (a ONVIF::Device::Types::EFlip with a Mode that's an EFlipMode), Reverse (a ONVIF::Device::Types::Reverse with a Mode that's a ReverseMode), and its own Extension (a ONVIF::Device::Types::PTControlDirectionExtension) πŸ¦‹
  • and that outer Extension also has its own Extension, which is a ONVIF::Device::Types::PTZConfigurationExtension2 ✨
ngl, this is a lot of nesting, but you got this. copy the shape, fill in your $some_values, and you're literally good πŸ’…

πŸ’œ AUTHOR πŸ’œ

Generated by SOAP::WSDL β€” not a human, not a bestie, just a generator doing its thing πŸ€–βœ¨


and that's the whole page, periodt πŸŽ€

this one's perl v5.40.1, dated 2026-02-01, and it came out of the ONVIF:...uration(3pm) man page in the User Contributed Perl Documentation. mwah πŸ’– go build some PTZ elements, you icon πŸ‘‘

πŸ“¦ where this page comes from